Skip to content

v0.51.15

Latest

Choose a tag to compare

@github-actions github-actions released this 24 Aug 01:11
· 10 commits to main since this release
d66c4aa

Hardening pass

No new surface in this patch — it closes the ways the engine could quietly stall, lie, or break outside a POSIX shell.

Nothing hangs forever. Every subprocess wait is now bounded (#2239), transient classifier contexts are capped (#2256), and retries got precise transient matching with default jitter and logging (#2240). File locks release independently of ContextVar reset (#2235), so a lock no longer outlives the task that took it.

Guards fail closed. is_on_protected_branch now refuses rather than guesses (#2236). The Seed schema closed four validation gaps (#2238) and rejects empty reference-aware contracts (#2226). Constant verification reads every occurrence before declaring a constant verified (#2220). The orchestrator stopped emitting drift measurements it already knew were wrong (#2233).

Windows and non-ASCII paths. Git output in the worktree layer (#2248) and the CI module-size source (#2251) decode as UTF-8; test evidence wrapped by PowerShell is accepted (#2245).

Interactive bridge. /ooo argument completion (#2204) and native system-prompt + tool allow-list delivery (#2203) landed, plus reusable fanout provenance for interviews (#2260).


What's Changed

  • test(ci): stabilize runtime-sensitive checks by @Q00 in #2221
  • docs(auto): fix broken link to removed operational_task module by @c020627 in #2227
  • fix(ci): decode module-size Git source as UTF-8 by @zittenyetten in #2251
  • fix(codex): ignore app-managed system skill refreshes by @zittenyetten in #2249
  • fix(worktree): decode Git output as UTF-8 by @zittenyetten in #2248
  • fix(orchestrator): accept PowerShell-wrapped test evidence by @zittenyetten in #2245
  • docs: fix references to deleted ouroboros packages by @Q00 in #2242
  • fix(session-signal): make to_event_data/from_event_data round trip by default by @Q00 in #2241
  • chore(deps): bump astral-sh/setup-uv from 9.0.0 to 10.0.1 by @dependabot[bot] in #2262
  • fix(retry): precise transient matching, default jitter, retry logging by @Q00 in #2240
  • fix: bound every subprocess wait that could hang indefinitely by @Q00 in #2239
  • fix(seed): close four validation gaps in the Seed schema by @Q00 in #2238
  • fix(core): make is_on_protected_branch fail closed by @Q00 in #2236
  • fix(core): release file locks independently of ContextVar reset by @Q00 in #2235
  • fix(orchestrator): stop emitting known-wrong drift measurements by @Q00 in #2233
  • docs: align documentation with actual code state by @Q00 in #2230
  • fix(seed): reject empty reference-aware Seed contracts by @CommitTheKermit in #2226
  • fix(mcp): offer recent findings to contracted lanes by @cohemm in #2224
  • chore(deps): bump the python-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #2264
  • feat(interview): persist reusable fanout provenance by @Q00 in #2260
  • fix(verification): read every occurrence before calling a constant verified by @MyoungSoo7 in #2220
  • feat(pi): deliver system prompt and tool allow-list natively by @ruttybob in #2203
  • feat(pi): complete /ooo arguments in the interactive bridge by @ruttybob in #2204
  • test(orchestrator): guard against fabricated message drift by @Q00 in #2254
  • fix(mcp): preserve typed interview reopen errors by @Q00 in #2257
  • fix(core): preserve directory close exception precedence by @Q00 in #2259
  • fix(retry): bound transient classifier contexts by @Q00 in #2256
  • test(setup): lock launcher ownership boundaries by @Q00 in #2263
  • docs(mcp): remove invalid scoped IPv6 workaround by @Q00 in #2253
  • chore: release v0.51.15 by @Q00 in #2268

New Contributors

Full Changelog: v0.51.14...v0.51.15