The gate can no longer lie.
A multi-agent audit confirmed one thing and flagged another. Confirmed: the whole chain runs green end to end, no blocker. Flagged: gate-integrity defects — the paths by which a mission could look done when it wasn't. v0.14.0 closes them.
The chain was run for real, not just read: build, tests, framing, the strict gate, the compliance pack, and the example floor catching a fabricated account. The core holds. What remained were integrity holes — nothing that crashes, but ways to pass a gate you shouldn't, or to read an operator typo as a real failure. A green gate has to be ground truth. This release restores that.
What's new
- Divergence guard. A deliverable with few placeholders (decision matrix, execution topology) no longer closes on a one-byte edit: it takes real content, not a changed character.
- Reliable exit codes. A mistyped command or an unknown option exits 2, never again confused in CI with a legitimate gate failure, which stays exit 1.
- Non-vacuity at zero. Emptying a phase's rule mapping no longer neutralises the gate in silence: the gap surfaces instead of slipping through.
- One ADR count, everywhere. Mission, status and conformance finally agree; an ADR whose name contains a trap run of digits is no longer dropped.
- The workflows name every gated deliverable. Frame and Architect now cite the steering contract and the decision matrix: no more gate you cannot close by following the text.
The invariant held
The gate stays deterministic, zero-LLM, zero-run. None of these fixes softened it — each makes it harder to fool, never more talkative. And the audit itself was Runward's own method applied to Runward: agents in parallel, every finding adversarially verified, kept only if it reproduces.
Trust is not declared, it is earned. We tested the gate against itself before asking you to rely on it.
Install: npx runward init
Release v0.14.0 on GitHub · CHANGELOG
← All news