runward

RW™ · V0.46.0

Docs · Décisions

Journal des décisions.

Chaque décision structurelle est verrouillée dans un ADR daté, avec un déclencheur de ré-évaluation. 102 décisions, la trace exacte du dépôt à la version 0.46.0.

ADRDécisionStatutDate
ADR-0102ADR-0102-whether-the-seal-hashes-a-junit-report-by-what-the-gate-reads-of-it-rather-than-its-bytes.mdaccepted (2026-10-23) — the maintainer chose A now with D and E from the adopter's follow-up: a documented normaliser for drift, `--freeze` refuses to seal a cited JUnit report whose root counts failures or errors, and `check` warns when a cited report carries failures outside the cases it cites. B waits for a second adopter; C is discarded2026-10-22
ADR-0101ADR-0101-whether-the-eu-ai-act-pack-carries-rows-for-article-50-transparency-and-the-system-qualification.mdaccepted (2026-10-23) — the maintainer chose B and C: operator-required rows for the system's qualification and Articles 4, 5, 14 and 50 in a new lens file, and the lens's dated notes printed under the draft's header. A and D are not taken2026-10-22
ADR-0100ADR-0100-whether-a-mission-can-span-several-repositories-a-system-and-one-aggregated-evidence-file.mdaccepted (2026-10-23) — the maintainer kept A (one mission per project) and recorded the convention an operator's system document follows meanwhile: cite each member's emitted artefact by digest, never merge their states. C is the target contract if a second adopter asks; E is measured before any sentence says it works2026-10-22
ADR-0099ADR-0099-which-regime-lenses-come-after-the-three-ai-ones-cra-nis2-dora-gdpr-and-where-each-belongs.mdaccepted (2026-10-23) — the maintainer chose, regime by regime: D for GDPR and NIS2 (a documentation crosswalk, no pack), C for DORA (a lens of the D3 period report, when D3 is built), A for the CRA. B (a pack per regime) is not taken for any of the four2026-10-22
ADR-0098ADR-0098-whether-the-gate-says-how-old-a-committed-junit-report-is-and-what-it-may-read-to-say-it.mdaccepted (2026-10-23) — the maintainer chose B now and G next: the output counts the rows judged on a committed JUnit report and says their freshness is not verified by this command; runward then ships the regenerate-and-compare guard as a recipe adopters run in CI. C, D and E are discarded; F stays written down for a second adopter2026-10-22
ADR-0097ADR-0097-whether-the-structure-contract-reads-section-headings-written-in-another-language.mdaccepted (2026-10-20) — the maintainer chose option A: the structure contract reads the template's English headings only, and names every heading it does not find. Options B to E stay written down with their cost; E (a missing trigger as a strict gap outside the opt-in) is not decided here. An agent wrote this record; the maintainer decided (ADR-0088 decision 4, applied to decisions as to rows)2026-10-20
ADR-0096Code Quality and JUnit renderings of the verdict, and why runward's gaps are not filed as vulnerabilitiesaccepted (2026-10-13) — class R under ADR-0088 decision 2; the maintainer accepted the2026-10-13
ADR-0095`check --json` carries the ratification row by row, the causes by kind, and the assurance mode in forceaccepted (2026-10-13) — class R under ADR-0088 decision 2; the maintainer accepted the2026-10-13
ADR-0094The forge adapter boundary: one port, GitHub and GitLab at parity, the verdict forge-neutralaccepted (2026-10-13) — class R under ADR-0088 decision 2; the maintainer accepted the2026-10-13
ADR-0093What runward shows is assembled from files the CLI writes and never raises; a customer-run satellite verifies and displays; a hosted product is a separate productaccepted (2026-10-13) — the maintainer accepted the umbrella architecture and its four2026-10-13 (revised the same day after two adversarial reviews)
ADR-0092ADR-0092-a-claims-layer-factual-sentences-are-tagged-typed-and-sealed-the-rest-is-said-unchecked.mdaccepted (2026-10-13) — the maintainer accepted the revised record with the three recommended2026-10-13
ADR-0091ADR-0091-machine-checked-proofs-as-evidence-a-ratified-statement-a-kernel-checked-proof-read-and-never-run.mdaccepted (2026-10-12) — class R under ADR-0088 decision 2 (its increment 1 touches the2026-10-12
ADR-0090ADR-0090-a-mission-chooses-its-assurance-mode-machine-is-a-first-class-choice-honest-only-on-a-named-floor.mdaccepted (2026-10-12) — constitutional, class R under ADR-0088 decision 2 (it changes the2026-10-12
ADR-0089ADR-0089-the-verdict-carries-its-witness-a-small-checker-that-shares-no-code-re-checks-it.mdaccepted (2026-10-06) — constitutional, class R under ADR-0088 decision 2 (it touches the2026-10-05
ADR-0088ADR-0088-runwards-own-delivery-runs-under-a-delegation-charter-the-gate-reads.mdaccepted (2026-10-01) — the maintainer accepted this record as written: agents under their own2026-10-01
ADR-0087ADR-0087-a-qualification-kit-the-user-runs-runward-ships-the-evidence.mdaccepted (2026-10-02) — the maintainer accepted the record with every recommended option;2026-10-01
ADR-0086ADR-0086-security-advisories-and-a-fix-time-target.mdaccepted (2026-10-01) — the maintainer accepted the four criteria, the retroactive advisories, eleven after the amendment below (CVE requested for S1 and S2 only), option (b) for the retroactive list and (a) going forward when the fix applies without rework, and the 30-day aim2026-10-01
ADR-0085ADR-0085-the-release-chain-publishes-a-draft-first-then-makes-it-immutable.mdaccepted (2026-10-01) — the maintainer chose the recommended chain, with the prepare phase started by a tag push, and the ratchet summary committed under `docs/compliance/ratchet-summaries/`; the setting is enabled only after one release has run on the new chain2026-10-01
ADR-0084ADR-0084-security-intake-leaves-one-inbox-the-judgement-stays-human.mdaccepted 2026-09-30 — the recommended split, chosen by the maintainer; the two measurements under "What would settle it" remain to be run and can reopen it2026-09-30
ADR-0083ADR-0083-exit-code-two-carries-several-meanings-say-which-before-splitting-it.mdaccepted 2026-09-28 — option A, chosen by the maintainer: keep 2 for every current case, make the class legible; doctor's critical exit stays 2 and is written into the port contract2026-09-28
ADR-0082ADR-0082-an-agent-may-ratify-under-its-own-name-never-under-a-humans.mdaccepted 2026-09-28 — the recommended direction, chosen by the maintainer, who opened the question on 2026-09-27 (« ça peut très bien être un autre agent IA qui va ratifier aussi, pas forcément un humain » [it may very well be another AI agent that ratifies too, not necessarily a human])2026-09-27
ADR-0081ADR-0081-the-scale-bench-is-a-local-instrument-not-a-ci-measurement.mdaccepted 2026-09-27 — a correction of fact rather than a new direction: it narrows one sentence of ADR-0075 to what the tree does, changes no behaviour and no verdict, and is ratified by the maintainer's merge2026-09-27
ADR-0080ADR-0080-the-regulated-tier-the-repository-disciplines-the-forge-proves.mdaccepted 2026-09-26 — direction chosen by the maintainer after an investigation of what runward already has, what regulated organisations are asked for, and what their forges already enforce; the delivery criteria are below2026-09-26
ADR-0079ADR-0079-a-release-keeps-a-signed-summary-of-its-mutation-ratchet.mdaccepted 2026-09-26 — ratified by the maintainer as a decision, before implementation; the criteria under « What would settle it » are now the delivery criteria, and the 7 run links in ADR-0059 stay until the summary job ships2026-09-26
ADR-0078The domain core is a category, and one written absence of territory is reopenedaccepted 2026-09-24 — the maintainer handed the open question of [ADR-0077](ADR-0077-rules-for-shows-what-the-mission-already-cited-a-reminder-not-a-territory.md) back to be investigated to a conclusion rather than arbitrated; this is that conclusion2026-09-24
ADR-0077`rules --for` shows what the mission already cited — a reminder, not a territoryaccepted 2026-09-24 — the maintainer asked for the defect to be fixed after a three-way investigation (doctrine, code, adversarial field measurement), and approved this shape2026-09-24
ADR-0076OSCAL 1.2.3, a widening measured rather than announcedaccepted 2026-09-24 — the maintainer asked for the watch's findings to be handled; the bump is the policy ADR-0032 already ratified ("track the current OSCAL release"), applied once more with its proof2026-09-24
ADR-0075ADR-0075-a-required-nature-the-project-cannot-produce.mdaccepted 2026-09-12 — all three answers, chosen by the maintainer: install the linter, commit a scan whose subject is the rule, declare the limit a CLI cannot cross2026-09-12
ADR-0074ADR-0074-a-mission-cites-the-journal-it-declares.mdaccepted 2026-09-12 — **option 3**, chosen by the maintainer: `adr:` resolves across the conventional journal locations, and a refusal names every place it looked2026-09-12
ADR-0073ADR-0073-how-a-report-becomes-citable-evidence.mdaccepted 2026-09-12 — **option 1**, chosen by the maintainer: the report is committed, and the product ships the step that makes it committable2026-09-11
ADR-0072ADR-0072-an-unknown-is-surfaced-never-refused.mdaccepted 2026-09-11 (this states a rule the product already follows in three places and2026-09-11
ADR-0071ADR-0071-what-identifies-the-object-a-report-judges.mdaccepted 2026-09-12 — **option 2**, chosen by the maintainer: the digest is printed as of before the write, declared as such2026-09-11
ADR-0070ADR-0070-the-package-is-the-product.mdaccepted 2026-09-11 (decided on a measurement nobody had taken: the tarball opened as a2026-09-11
ADR-0069ADR-0069-the-structure-contract-is-the-default-for-new-missions.mdaccepted 2026-09-09 (the maintainer's explicit call, made on the question the M12026-09-09
ADR-0068ADR-0068-one-maintained-minor-and-a-dated-release-train.mdaccepted 2026-09-09 (ratified on the maintainer's order, two days after 0.38.0 shipped — the first supported-lines table below is this policy's first act; the first post-bump security release remains the measurement that settles it)2026-09-03
ADR-0067ADR-0067-the-workflow-carries-a-contract-the-gate-reads.mdaccepted 2026-09-03 (ratified by the maintainer on the 2026-09-02 investigation's measurements, unamended)2026-09-02
ADR-0066ADR-0066-a-manifest-row-can-be-proposed-and-a-proposal-never-crosses.mdaccepted 2026-09-03 (ratified by the maintainer on the 2026-09-02 investigation's measurements, unamended)2026-09-02
ADR-0065ADR-0065-the-gate-can-be-armed-only-by-the-operators-hand.mdaccepted 2026-09-03 (ratified by the maintainer on the 2026-09-02 investigation's measurements, unamended)2026-09-02
ADR-0064ADR-0064-the-verdict-gets-a-report-an-auditor-reads-alone.mdaccepted 2026-09-09 (the maintainer's explicit call — accept and build; the settling measurement, an external reader answering the five questions without the repository, remains ahead of it and is what the pilot runs)2026-09-01
ADR-0063ADR-0063-what-a-sarif-finding-about-a-missing-file-anchors-to.mdaccepted 2026-09-01 (measured against GitHub code scanning; record below)2026-08-29
ADR-0062the SARIF emission is validated against the official schema, and that is worth one dev dependencyaccepted 2026-08-272026-08-27
ADR-0061the spelling brick is specified by a corpus, not by its implementationaccepted 2026-08-272026-08-27
ADR-0060a vacuous green is disclosed, not refusedaccepted 2026-08-272026-08-27
ADR-0059the mutation ratchet is enforced as freshness, not as a levelaccepted 2026-08-26 (all five criteria demonstrated in CI; the red/green pair for criterion 2 is recorded below with its run ids; this document crosses nothing)2026-08-24
ADR-0058documentation has genres, and they do not mixaccepted 2026-08-17 (all four criteria met; record below; this document crosses nothing)2026-08-17
ADR-0057the shared corpus is pinned without a registryaccepted 2026-08-14 (all four ratification criteria met on the built binary; this document crosses nothing)2026-08-14
ADR-0056the evidence layer widens, and never leaves GATE_NON_SCOPEaccepted 2026-08-14 (the three widenings are delivered with their proofs; record below; this document crosses nothing)2026-08-14
ADR-0055the verdict is a standards-legible in-toto attestationaccepted (2026-08-14; layers 1 and 2 proven, record below)2026-08-14
ADR-0054the runtime boundary is explicitaccepted 2026-08-14 (the consolidated boundary test exists and passes on the built binary; record below; this document crosses nothing)2026-08-14
ADR-0053the construction gate certifies a declared horizon, not the whole arcaccepted (2026-08-13; ratification proofs recorded below)2026-08-13
ADR-0052the survival thesis and the first third-party missionaccepted 2026-08-18 (the thesis is locked and the pilot is armed — everything that does not depend on the third party; record below)2026-08-12
ADR-0051the gate is made as strong as its headlineaccepted (2026-08-13; ratification record below)2026-08-12
ADR-0050the public claim is narrowed to the provable formaccepted 2026-08-17 (the five executable proofs were run; record below)2026-08-12
ADR-0049the build is isolated from the publishaccepted (ratified 2026-08-11 — canary results appended under Ratification)2026-08-11
ADR-0048the release carries verifiable proof, and the builder paths we refuseaccepted (ratified 2026-08-11 — see Ratification)2026-08-11
ADR-0047the verdict is computed where a test can reach itaccepted (ratified 2026-08-06 — see Ratification)2026-08-06
ADR-0046mutation testing is an instrument, not a gateaccepted (ratified 2026-08-05 — see Ratification)2026-08-05
ADR-0045the gate cannot be satisfied by paperworkaccepted (ratified 2026-08-04 — see Ratification)2026-08-04
ADR-0044generated harness artifacts are refreshed, not ownedaccepted (ratified 2026-08-04 — see Ratification)2026-08-04
ADR-0043territory is declared in two parts — the rule names the category, the mission names its filesaccepted (ratified 2026-07-31 — see Ratification)2026-07-31
ADR-0042craft-rule confrontation is continuous, not a gate-crossing ritualaccepted (ratified 2026-07-31 — see Ratification)2026-07-31
ADR-0041`runward rules --for <paths>` — declared territory, with a named match reasonaccepted (ratified 2026-07-31 — see Ratification)2026-07-31
ADR-0040per-rule non-scope declaration — every gate names what it cannot verifyaccepted (ratified 2026-07-21 — see Ratification)2026-07-21
ADR-0039the operator layer stays outside the CLI — three tiers named, nothing new mechanisedaccepted2026-07-21
ADR-0038`--mine` mines across languages, groups by dependency family, and never resurrects a ratified DRAFTaccepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0037`runward characterize` detects infrastructure and framework/DB config signals (presence only)accepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0036`runward characterize` reports git churn hotspots and bus-factor — counts, never "seams"accepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0035`runward characterize` extracts pinned versions from the lockfile it already detectsaccepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0034`runward characterize` sees the whole tree — nested workspaces — and orders every scan deterministicallyaccepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0033`runward status` reports a mission's real lifecycle position — its state and which decisions to reopenaccepted (ratified 2026-07-29 — see Ratification)2026-07-20
ADR-0032track the current OSCAL release, and watch dated external facts out-of-bandaccepted2026-07-17
ADR-0031sovereign engineering evidence for regulated environments — narrow the wedge, never claim complianceaccepted2026-07-17
ADR-0030the agent operates runward — neutral baseline, best-effort harness detection, machine-readable surfaceaccepted2026-07-16
ADR-0029MCP is a discovery boundary, never an enforcement pathaccepted2026-07-16
ADR-0028Distributable packagings — the gate installable in one gesture, across every channelaccepted2026-07-16
ADR-0027Adapters into competing orchestrators — the gate as a review layer they callaccepted2026-07-16
ADR-0026Hand-over as a gated conformance phase — the succession is proven, not promisedaccepted2026-07-16
ADR-0025The OSCAL mapping published as a versioned, citable mini-specaccepted2026-07-16
ADR-0024A machine surface for the rule set — rules --json, explainaccepted2026-07-16
ADR-0023manifest --sync — runward scaffolds the form, never the contentaccepted2026-07-16
ADR-0022Regime mappings as versioned data, selected by --regime-versionaccepted2026-07-16
ADR-0021Drift promoted to blocking under --strict; opt-in evidence sealing (--freeze)accepted2026-07-16
ADR-0020Rule evidence signatures — an opt-in deterministic content predicateaccepted2026-07-16
ADR-0019Typed evidence pointers, verified at the gateaccepted2026-07-16
ADR-0018Native skill packagings as opt-in application adapters over the gated coreaccepted2026-07-12
ADR-0017The application↔infrastructure double vision — shared-brick placement as a gated deliverableaccepted2026-07-11
ADR-0016`runward compliance <regime>` — a deterministic evidence-pack assembler, upstream of the auditoraccepted2026-07-10
ADR-0015Regulatory conformance as a regional profile; the OWASP ASI mapping is universalaccepted2026-07-10
ADR-0014The `runward characterize` command contractaccepted2026-07-09
ADR-0013Retro-documentation as the transmission phase pointed backwardaccepted2026-07-09
ADR-0012The gate as a port, with harness adaptersaccepted2026-07-09
ADR-0011Neutral ecosystem standards as versioned ports in the reference stackaccepted2026-07-09
ADR-0010AGENTS.md as a first-class handover deliverableaccepted2026-07-09
ADR-0009OWASP Top 10 for Agentic Applications (ASI01–10) as the gate's risk grammaraccepted2026-07-09
ADR-0008An opt-in hook seam around checkaccepted2026-07-07
ADR-0007Advisory LLM conformance verification, subordinate to the gateaccepted2026-07-07
ADR-0006Rule-set evolution as tracked migrationsaccepted2026-07-07
ADR-0005Baseline-worktree test validation is out of scope for the gateaccepted2026-07-07
ADR-0004Advisory drift detection — applied pointers that no longer resolveaccepted2026-07-07
ADR-0003Deterministic form-lint of the conformance manifest before the semantic checkaccepted2026-07-07
ADR-0002Harden the --strict gate against vacuous passingaccepted2026-07-07
ADR-0001Enforce declared rule-conformance at the gateaccepted2026-07-07

Généré depuis le journal des ADR du dépôt · runward v0.46.0

← Docs