Skip to main content

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> or approve-completion, the paused continuous-session snapshot is now terminalized and its blocked run is counted. Status no longer reports a stale paused / runs_completed=0 after the governed run has already completed.

  • Standing-gate completion audit: final standing-gate run completion reconciliation now emits gate_approved before run_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-existing pending_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:

npx --yes -p [email protected] -c "agentxchain --version"

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_ready unblock completes the run, and no duplicate product_marketing dispatch occurs
  • quote any startup_latency_ms, elapsed_since_spawn_ms, and runtimes.<id>.startup_watchdog_ms evidence 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, and active_turns={}
  • durable events include both gate_approved for run_completion and run_completed
  • non-terminal phase recovery should still quote phase_entered with reconciled_before_dispatch if a standing gate advances before dispatch
  • .agentxchain/continuous-session.json no longer stays at paused with runs_completed=0; quote the terminal session shape after the run completes
  • session_continuation should 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.