diff --git a/docs/CAPABILITY-MATRIX.adoc b/docs/CAPABILITY-MATRIX.adoc index 1f244abd..9aa1d945 100644 --- a/docs/CAPABILITY-MATRIX.adoc +++ b/docs/CAPABILITY-MATRIX.adoc @@ -61,8 +61,12 @@ Gate baseline at reconstruction: **`opam exec --switch=. -- dune runtest |Lexer |works |Full Unicode. Quantity-literal `ZERO`/`ONE` tokens are *not* emitted (QTT numeric surface uses `:1`/`:0`/`:ω` sugar parsed elsewhere). -|Parser |works |Menhir grammar, ADR-009 conformance. Residual grammar -conflicts tracked as the #215 family workstream (Stage B). *Module-qualified +|Parser |works |Menhir grammar, ADR-009 conformance. Stage B *CLOSED*: +#215 closed with the owner-ratified ADR-012 disposition — the residual +~68 S/R + state-401 R/R conflicts are an *intentional won't-fix* (Menhir +resolves them correctly; the gate proves every parse is intended; +eliminating them is the contortion ADR-012 forbids). `just build` masks ++ proves them, `just build-loud`/`dune build` reveal all. *Module-qualified type/effect paths now parse* — `Pkg.Type` / `Pkg::Type` (mixed, deep), `::` canonical (ADR-014, PR #241, Refs #228; zero Menhir conflict delta). Cleared the dominant estate parse blocker (was 525/1177 `.affine`); diff --git a/docs/ECOSYSTEM.adoc b/docs/ECOSYSTEM.adoc index d72526c9..0d8e57a3 100644 --- a/docs/ECOSYSTEM.adoc +++ b/docs/ECOSYSTEM.adoc @@ -54,8 +54,19 @@ recovery). |*CLOSED* |`affine-types = wired-and-reachable`, |*B* |Grammar conformance + conflict elimination: ADR-009 conformance, the #215 conflict-family workstream, ADR-012 ("grammar changes are correctness -assertions"). |*near-closed* |Family B (`return`/`resume`, PR #224) merged; -residual S/R + state-401 R/R families remain (one family per PR). +assertions"). |*CLOSED* |#215 closed with an owner-ratified *ADR-012 +disposition*: families A/C/D/F + the EXTERN bug fixed on correctness +grounds (#216/#217/#219/#222/#223); family B (`return`/`resume`, #224) +shipped as a *correctness* change, conflict-count-neutral. The residual +~68 S/R + state-401 R/R are *intentional WON'T-FIX*: Menhir resolves them +correctly, the full gate proves every accepted parse is the intended one, +and removing them is the systemic precedence/left-factoring contortion +(estate-wide blast radius, cosmetic-only payoff) ADR-012 *forbids*. +Closure is by *disclosure, not surgery*: `just build` masks the benign +notices but prints the count + correctness proof + ADR pointer; `just +build-loud` / `dune build` reveal all (policy: +`docs/specs/SETTLED-DECISIONS.adoc` "Parser-Conflict Disclosure"). Do +*not* reopen residual-conflict elimination — it is settled won't-fix. |*C* |Standard library AOT: every stdlib file compiles resolve→typecheck→codegen, gated in CI. |*CLOSED 2026-05-18* |19/19 stdlib diff --git a/docs/TECH-DEBT.adoc b/docs/TECH-DEBT.adoc index 2e927a2e..bc7cb2c3 100644 --- a/docs/TECH-DEBT.adoc +++ b/docs/TECH-DEBT.adoc @@ -26,7 +26,7 @@ toc::[] [source] ---- Stage A CLOSED ───────────────────────────────────────────────┐ -Stage B near-closed (#215 residual families) │ +Stage B CLOSED (#215; residual conflicts = ADR-012 won't-fix) │ Stage C CLOSED 2026-05-18 (#128/#135 stdlib AOT) │ ▼ Stage D ACTIVE ── CORE-01 (#177) ─┐ (base lang