mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-04 07:47:27 +01:00
B1a: an older run directory prints GSTACK_VERSION_CHANGED once and migrates legacy decision ids; a newer one refuses. B1b: submit binds hand-run records (fence, table, severity list, No findings.), attested binds need --attempt, --attempt is optional with one open attempt, --unavailable/--failed close an outside voice native_only, and submit caches the plan-reality report by Implementation-plan hash. B1c: revise reviews a revised plan in the same run as one recoverable transaction (reopen on hash drift plus Eng, add newly in-scope phases, .r<rev>/.v<k> archives, gate_rev+1 at the gate); PLAN_SECTIONS_INVALID and next --scaffold; PLAN_CHANGED / PLAN_SOURCE_CHANGED drift hints. B2a/B2b: user challenges carry changes; agreeing voices with the same changes on a confirmed finding recommend b with both remedies shown (or the reconcile proposal); accepted changes print APPLY and become pending amendments that next and export refuse past until revise --incorporates names them or --withdraw drops one; all as-is; partial replies, DECIDED block, carry-forward and rerun demotion. Mutating verbs pass admission (GSTACK_CAPY install verdict; unattended Bun minimum; override recorded as a deviation). Intentional pin rewrite: test/autoplan-answer-invalidation.test.ts reopen tests now revise --incorporates before rerun. Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>