review-state write cannot record phase, step or branch, so the fast path stays dead at analysis_ready #505
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#505
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
#487 added
--phase,--stepand--branchtoreview-state updateonly. That was a deliberate call at the time —updatewas where the reported gap was, and update-only was the smaller change.Evidence since says it is not enough.
What is missing
Every
analysis_readytransition in the kanon plugin useswrite, notupdate:commands/wf-create-analysis.md:180commands/ag-create-analysis.md:190commands/dx-analyze.md:187commands/sl-define.md:230writecannot record the three fields, so a card created atanalysis_readycarriesphase: null,step: null,branch: null.wf-implementStep 1 sanity-checks all three, so the fast path still cannot pass at that transition. It now works fromcontext_readyonward, whereupdateis used — so the fix is partial in exactly one place, and it is the first transition of every workflow.What to do
Add
--phase,--stepand--branchtoreview-state write, with the same semanticsupdatehas.Related, and worth deciding together
ReviewStateUpdater.scala:148stores the value verbatim asujson.Str, so--phase 3writes"3"and not3.wf-implementStep 1 comparesstate.phaseagainst the first unchecked phase parsed out oftasks.md. If that comparison is numeric on either side, the fast path stays dead for a second, independent reason after both halves ship. Either the comparison is defined as string equality and documented as such, or the CLI needs a typed phase.Origin
Found by the kanon session while aligning the plugin to iw-cli 0.11.0, by compiling the consumer against a core jar built from this tree. Recorded in that alignment work; not caused by it.