Skip to content

v1.99.0

Choose a tag to compare

@BrennonTWilliams BrennonTWilliams released this 09 May 20:35
· 1427 commits to main since this release

What's Changed

Added

  • go/no-go Gate for refine-and-implement Loops — Added a go_no_go state between implement_next and implement_issue in both auto-refine-and-implement and sprint-refine-and-implement loops to filter low-value issues before costly implementation. (ENH-1387)
  • Issue Model Alignment Capture — Captures issue model alignment issues for platform compatibility when scanning issues. (50c290b)

Fixed

  • Skill descriptions exceed Claude Code context budget, causing 38 silent drops — Trimmed all 28 skills/*/SKILL.md description fields to single-line inline values (≤100 chars), reducing token footprint by 57% to fit within the default 1% context budget. (BUG-1379)
  • recursive-refine dequeue_next bash expansion crashes interpolator, causing infinite sprint loops — Fixed by using $${} escape syntax to pass bash parameter expansions through interpolation unchanged. (BUG-1380)
  • subprocess output parser silently discards result events — Extended the result event branch in run_claude_command() to extract and report errors via stderr. (BUG-1381)
  • Worker pool error messages use only stderr, ignoring stdout — Added stdout fallback in error message construction for both failure sites in _process_issue(). (BUG-1382)
  • Orchestrator state file overwrites failure details with generic "Failed" string — Accumulated per-issue worker error strings replace the generic overwrite with actual error messages. (BUG-1383)
  • FSM interpolation engine rejects bash default-value syntax in escaped variables — Added regression tests and documentation for bash-operator support inside $${...} escapes. (BUG-1384)
  • --resume fails in print mode during Option E context-handoff continuation — Changed to --continue in subprocess_utils.run_claude_command() for correct print-mode session continuations without requiring an explicit session ID. (BUG-1385)
  • Phantom failure after Option J guillotine fresh session — Added _just_ran_fresh_session guard to skip Option E after fresh session completes, and classified "requires a valid session id" as TRANSIENT failure. (BUG-1386)
  • UnixSocketTransport skips initial state seed on client connect — New on_connect callback seeds new clients with current running loop state from .loops/.running/*.state.json. (BUG-1388)

Full Changelog: v1.98.0...v1.99.0