Phase 3: --needs-attention false sets the flag to true (defect 1) #488
No reviewers
Labels
No labels
agent-ready
bug
contract
documentation
duplicate
enhancement
good first issue
help wanted
invalid
needs-human
needs-input
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
iterative-works/iw-cli!488
Loading…
Reference in a new issue
No description provided.
Delete branch "IW-436-phase-03"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Phase 03 implementation for IW-436.
Files
Browse changed files: https://code.iterative.works/iterative-works/iw-cli/-/blob/IW-436-phase-03/
CLI CONTRACT CHANGE. `--needs-attention` and the 13 clear flags are set-only. A value after one of them was previously read by nobody, so `--needs-attention false` wrote `needs_attention: true` at exit 0. Such an invocation now exits 1 and names the flag and the stray token. Per RESOLVED 2 this is a straight semantic flip: no warning mode, no deprecation period, no version floor. - `parsePresenceFlag` scans every occurrence, delegating to `extractRepeatedFlag` — an `indexOf` shape would pass `--needs-attention --status x --needs-attention false`. It covers all 14 flag names across 15 call sites, so the 13 sibling instances of the same defect close with it. - `--needs-attention` carries the remedy a user cannot guess: `--clear-needs-attention` removes the field. - 146 test lines added, none removed. Every rejection asserts the exact message, not `isLeft` — the message is the deliverable. - Docs: both clear-flag tables state the rule, and the table gains the two rows it was missing, `--clear-activity` and `--clear-workflow-type`. 🤖 Generated with Claude Code