AgentXchain v2.155.1
v2.155.1 is a BUG-60 release-truth patch over v2.155.0. It keeps the
perpetual continuous idle-expansion feature intact while aligning the tester
quote-back ask, budget terminal status, and release evidence with the shipped
implementation.
Bug Fixes
-
Tester ask V6 copy-paste repair: the BUG-60 quote-back ask now uses
agentxchain init -y --governed --dir ., preserves the scaffolded governed routing/gates/prompts, patches only the continuous-mode and approval-policy fields it owns, preserves the ROADMAP## Phasesmarker, and validates the scratch fixture before committing it. -
BUG-60 event-trail correction: the V6 ask now checks the actual events:
idle_expansion_ingestedwithpayload.kind == "vision_exhausted"for PM-declared exhaustion, andidle_expansion_cap_reachedfor thevision_expansion_exhaustedcap state. -
Distinct budget terminal status: continuous budget exhaustion now persists and returns
status: "session_budget"instead of genericcompleted. Schedule-owned continuous sessions treatsession_budgetas terminal and keep mapping it tocontinuous_session_budget_exhausted.
Evidence
- node --test --test-timeout=60000 test/continuous-run.test.js test/continuous-budget.test.js test/beta-tester-scenarios/bug-60-perpetual-idle-expansion.test.js test/schedule-daemon-health-e2e.test.js -> 109 tests / 39 suites / 0 failures / 0 skipped
Tester Re-Run Contract
Run the shipped package:
For downstream closure, start from a clean checkpoint and quote:
- functional downstream behavior remains fixed: continuous does not idle out in
QA, QA advances,
launch_readyunblock completes the run, and no duplicate dispatch 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.
For BUG-60 verification, use the self-contained fixture in
.planning/TESTER_QUOTEBACK_ASK_V6_BUG60.md and quote:
idle_expansion_dispatchedafter the vision queue empties under--on-idle perpetualidle_expansion_ingestedwithpayload.kind == "new_intake_intent"orpayload.kind == "vision_exhausted"idle_expansion_cap_reachedwhen expansion cap exhaustion is the terminal path.agentxchain/continuous-session.jsonwith non-zeroexpansion_iterationand non-emptyvision_headings_snapshot- budget-stop evidence as
status: "session_budget"andbudget_exhausted: trueif the session budget path is exercised