Skip to content

v0.17.0 — a second audit, honestly closed; the gate reaches into BMAD

Choose a tag to compare

@stranxik stranxik released this 16 Jul 02:51

We ran our own method on ourselves again: an adversarial internal audit plus a fresh code-level competitive benchmark. It confirmed the four grounds nobody else pairs — a rule-level gate with verified evidence, signed-and-sealed evidence, a gated hand-over, and a deterministic OSCAL mapping — and it broke five things shipped in v0.15/v0.16. Closing your own defects in daylight is the doctrine.

  • Path traversal closed. file:/etc/hosts and file:../../etc/hosts passed the gate green, contradicting ADR-0019. Resolution is now confined to the three project bases: absolute paths rejected, ../ cannot climb out. Evidence must be in your project.
  • ReDoS closed. A nested-quantifier signature ((a+)+) hung the gate on adversarial content. A deterministic screen rejects the dangerous shape before compiling the regex — fails fast, never hangs.
  • OSCAL reconciled with its own spec. renderOscal took the first manifest row, so a multi-phase rule's implementation-status depended on deliverable order. It now aggregates every row (spec §3), order-independent; the readiness link is regime-derived (no dangling href); the "implementable independently, byte-for-byte" promise holds off the nominal path.
  • The seal's scope stated plainly (ADR-0021, spec §6): content-addressed, it detects drift and deletion — not falsification by a writer who recomputes the hash. The trust anchor is the signed git history; a zero-secret gate holds no signing key by design.
  • RUNWARD_NOW validated; doctor adapter count fixed; doc regressions fixed (five wizard prompts, current counts, README lists Kiro + execution-topology).
  • EU AI Act date corrected (2 Aug 2026 → 2 Dec 2027). The Digital Omnibus on AI postponed the Annex III/IV high-risk obligations; our regime data printed the stale date in the OSCAL readiness draft. The 2 Aug 2026 milestone stays real for Article 50 transparency, governance and GPAI. positioning.md swaps the stale deadline for two durable talking points: FedRAMP RFC-0024 forbidding GenAI-produced evidence, and the Delve affair — both validating the zero-LLM gate.
  • The gate reaches into BMAD (ADR-0027). templates/adapters/bmad-review-layer.toml adds runward's deterministic gate as a review layer beside BMAD's LLM reviewers (their seam explicitly allows "an external reviewer via bash") — a complement on their distribution, same inert exit-code port (adapters 5 → 6), no orchestrator privileged.

Full detail: CHANGELOG · the OSCAL mapping spec: docs/spec/runward-oscal-mapping.md