AgentXchain v2.154.8
v2.154.8 is the BUG-52 escalation-turn repair release. It fixes the tusq.dev
quote-back failure where agentxchain unblock <hesc> resolved the human
escalation but redispatched PM in planning because a stale
last_completed_turn_id overrode the turn that actually requested human gate
approval.
Bug Fixes
-
BUG-52 escalation-linked standing gate recovery: operator unblock now uses the escalation-linked turn as the standing gate source before falling back to
last_completed_turn_id. If the PM turn tied to the open escalation satisfiedplanning_signoff, unblock advances toimplementationand dispatchesdevinstead of looping PM. -
BUG-52 approval attribution:
gate_approvedandphase_enteredevents now includerequested_by_turnfor the approved phase transition, giving beta testers a stable quote-back field for the exact PM turn approved by the human. -
Vitest contract cleanup: the local CLI adapter subprocess test now imports
node:child_processdynamically inside the node:test-only test body, keeping the Vitest static dependency contract green.
Evidence
- node --test cli/test/beta-tester-scenarios/bug-52-gate-unblock-phase-advance.test.js && node --test cli/test/vitest-contract.test.js -> 26 tests / 3 suites / 0 failures / 0 skipped
Tester Re-Run Contract
Run the shipped package:
For BUG-52 closure, quote all of the following from a shipped-package tusq.dev run:
agentxchain statusreportsPhase: implementationafterunblockagentxchain gate show planning_signoffreportsStatus: passedphase_enteredis present afterunblockwith a valid recovery trigger such asreconciled_before_dispatchgate_approved.payload.requested_by_turnmatches the PM turn tied to the human escalation- the next active turn is assigned to
dev - no duplicate PM redispatch occurs
- no ghost recovery is required for the phase advance
BUG-52 remains open until that shipped-package quote-back lands. BUG-61, BUG-62, BUG-54, BUG-59, and BUG-53 remain open under their existing shipped package closure contracts.
For still-open BUG-54 and BUG-59 closure proof, pin to [email protected]
or later and follow .planning/BUG_59_54_TESTER_QUOTEBACK_RUNBOOK.md. That
runbook covers the real adapter-path watchdog evidence (startup_latency_ms,
elapsed_since_spawn_ms, and any runtimes.<id>.startup_watchdog_ms override)
plus routine auto-approval ledger rows and credentialed hard-stop
counter-evidence.
For still-open BUG-53 closure proof, run the shipped package in continuous mode
and quote session_continuation events across chained runs. A bounded idle run
should end as idle_exit, not as a paused gate.
For still-open BUG-55 regression proof, run accept-turn followed by
checkpoint-turn on a turn that declares both product files and verification
outputs. Include verification.produced_files with at least one artifact or
ignored output, prove there are no undeclared_verification_outputs, and quote
git status --short after checkpointing.
Clean tree means BUG-55 is fixed for your reproduction.
The key operator chain is accept-turn followed by checkpoint-turn against
the same accepted turn.