Fix: Resolved/Done/Completed work items appear in the timer task picker#118
Fix: Resolved/Done/Completed work items appear in the timer task picker#118jdschleicher wants to merge 1 commit into
Conversation
Get-AzDevOpsClosedStates only excluded Closed/Removed, so finished items in Resolved (Agile/CMMI), Done (Scrum), and Completed states leaked through Select-AzDevOpsActiveItems into the Start-TimerSession picker and every other active-items view. Add those states to the exclusion list. The explicit -State override path is unaffected. Closes #113 https://claude.ai/code/session_01PMrQtZFmKo3KQenf7HFmaE
🐚 Senior Bash EngineerSummaryThe only file changed in this branch's diff against Sourcing Wire-UpN/A — no bash files added or changed. Naming ConventionN/A — no bash aliases/functions in this diff. VerdictAPPROVE — no bash files in this diff. Generated by Claude Code |
🛡️ Senior Security EngineerVerdict: APPROVE — no security concerns. Scope reviewed: Findings:
The only functional effect is broader closed-state filtering, which is the intended behavior change and carries no security risk. Generated by Claude Code |
💠 Senior PowerShell EngineerSummaryOne Findings
Notes verified during review:
Dot-Sourcing Wire-UpWIRED — no new files; existing file already dot-sourced. Approved VerbsPASS — no new function names. VerdictAPPROVE — no blocking issues. One LOW naming nit, already tracked for a future rename (#113). Generated by Claude Code |
🧼 Senior Clean-Code EngineerSummaryOne file changed ( Findings
Duplication Map
Verified Function Sizes
Breathing RoomTwo blank lines preserved on both sides of the function. No nits. VerdictAPPROVE — well-factored, no blocking duplication. The change is a one-line data edit to the correct single source of truth; all five consumers benefit automatically. The only observation is the now-slightly-inaccurate Generated by Claude Code |
✅ Criteria Check — #113: Hide Resolved/Done/Completed from timer pickerSyntax Checks
Acceptance Criteria
Summary
Manual Verification Checklist
Verdict✅ PASS — all automated criteria verified; 2 items need manual terminal testing (expected for an interactive picker with no test runner). Generated by Claude Code |
Summary
The timer task picker (
Start-TimerSession→ "Azure DevOps - User Stories") was listing finished work items. The sharedGet-AzDevOpsClosedStateshelper only excludedClosedandRemoved, so items inResolved(Agile/CMMI),Done(Scrum), andCompletedstates leaked throughSelect-AzDevOpsActiveItemsinto the picker — and into every other active-items view that shares the helper.Issue
Closes #113
Changes
powcuts_by_cli/azdevops_views.ps1—Get-AzDevOpsClosedStatesnow returnsClosed,Removed,Resolved,Done,Completed.One-line change at the single filtering chokepoint fixes the timer picker plus
az-Find-AzDevOpsWorkItem, the create-flow pickers, and the assigned/board/feature views consistently. The explicit-Stateoverride path is unaffected — it matches$_.State -in $Statedirectly and never consults the closed list.Test Plan
powcuts_home.ps1)assigned.jsonhas at least oneResolvedand oneDoneitem (az-Sync-AzDevOpsCache)Start-TimerSession, choose "Azure DevOps - User Stories" — confirm no Resolved/Done/Completed items appearaz-Get-AzDevOpsAssigned -State Resolvedstill lists themPowerShell-only: the timer has no bash counterpart, so no
bashcuts_by_cli/change applies.