AgentXchain v2.154.11
v2.154.11 is the downstream accounting follow-up after v2.154.10 fixed the
functional tusq.dev progression bugs. The remaining gaps were in audit/session
surfaces: a completed run could still leave .agentxchain/continuous-session.json
stuck at paused with runs_completed=0, and the standing-gate terminal
reconcile path did not always emit a final gate_approved row before
run_completed.
Bug Fixes
-
Out-of-band completion session accounting: when a blocked continuous run is later completed by
unblock <hesc>orapprove-completion, the paused continuous-session snapshot is now terminalized and its blocked run is counted. Status no longer reports a stalepaused / runs_completed=0after the governed run has already completed. -
Standing-gate completion audit: final standing-gate run completion reconciliation now emits
gate_approvedbeforerun_completed, including the final gate id and requesting turn. This keeps the terminal unblock path auditable even when completion is synthesized from the standing gate instead of a pre-existingpending_run_completion.
Evidence
- node --test cli/test/beta-tester-scenarios/bug-52-gate-unblock-phase-advance.test.js cli/test/run-schedule-e2e.test.js cli/test/continuous-run.test.js -> 67 tests / 11 suites / 0 failures / 0 skipped
Tester Re-Run Contract
Run the shipped package:
For downstream closure, start from the same clean tusq.dev checkpoint used for
the v2.154.10 downstream retest and quote:
- functional downstream behavior remains fixed: continuous does not idle out in QA, QA advances,
launch_readyunblock completes the run, and no duplicateproduct_marketingdispatch occurs - quote any
startup_latency_ms,elapsed_since_spawn_ms, andruntimes.<id>.startup_watchdog_msevidence relevant to adapter-path reliability while confirming the downstream flow still uses the real runtime path - after final terminal approval, status is
completed,pending_run_completion=null, andactive_turns={} - durable events include both
gate_approvedforrun_completionandrun_completed - non-terminal phase recovery should still quote
phase_enteredwithreconciled_before_dispatchif a standing gate advances before dispatch .agentxchain/continuous-session.jsonno longer stays atpausedwithruns_completed=0; quote the terminal session shape after the run completessession_continuationshould still be quoted if the continuous session chains into another run; otherwise quote the terminal reason instead- if the project still reports
approval_policy: null, say so explicitly rather than fabricating approval-policy ledger evidence
For BUG-55 regression proof, continue using accept-turn followed by checkpoint-turn
and quote verification.produced_files,
undeclared_verification_outputs, and git status --short.
Clean tree means BUG-55 is fixed for your reproduction.
Keep BUG-62 separate in scratch because prior tusq.dev history mixed checkpoint
baselines with governed .agentxchain changes.