iter 22-tidy: journal entry — milestone 22 closed

This commit is contained in:
2026-05-09 22:52:49 +02:00
parent c8fc33fb86
commit 105ad3fe80
+55
View File
@@ -11755,3 +11755,58 @@ already populate the env correctly. No collateral is implied.
**Bench gates:** all three exited 0/0/0.
**Next step:** dispatch `audit` skill to close milestone 22.
## 2026-05-09 — Iteration 22-tidy: DESIGN.md and spec drift after milestone-22 close
Audit (architect drift review) flagged three doc-drift sites
where DESIGN.md and the spec described an as-originally-planned
milestone 22 (Prelude shipping, `print` rewired through Show.show,
`Float` type, Form-B class/instance render in 22b.4) instead of
what actually shipped (no Prelude, primitive print primitives,
no Float, prose render queued post-22). The fix is mechanical
across three files; no code logic changes.
**Per-task subjects:**
- 22-tidy.1: DESIGN.md — reconcile Decision 11 with milestone-22 outcome (no Prelude, '__' separator)
- 22-tidy.2: spec — components table reflects 22b.4a/b split + 22c shipped
- 22-tidy.3: prose-lib — drop 22b.4 reference from class/instance placeholder
**Milestone-22 status: CLOSED.** The four acceptance criteria from
the spec are all satisfied:
1. JOURNAL entries committed: 22b.1, 22b.2, 22b.3, 22b.4a, 22c.
2. Audit suite green — drift report addressed (this iter); bench
gates 0/0/0 at 22c close (rerun confirmed at milestone-22 audit
on 2026-05-09).
3. 22c user-class fixture compiles, runs, prints `42`.
4. Round-trip skip-list retired in 22b.4a; all 106 fixtures in
`examples/*.ail.json` pass round-trip.
**Carried debt (not gating, not in this iter's scope):**
- Primitive-name set duplicated across 4 sites
(`crates/ailang-check/src/mono.rs:316-327`, `linearity.rs:143`,
`lib.rs:1240`, `lib.rs:2222`). Flagged in 22b.3 JOURNAL,
re-flagged by milestone-22 audit. Consolidation is a real
refactor (one helper, four call sites) and benefits from being
its own iter. Queued.
- Strict duplicate-clause detection in `parse_fn` / `parse_data`
/ `parse_const` (sibling parsers to the 22b.4a additions). The
asymmetry is documented; promoting siblings to the strict
pattern is queued.
- Form-B (prose) printer arms for ClassDef / InstanceDef. One-way,
not gating.
- Lib.rs gap-related sites at lib.rs:1266 / 1853-1856 / 1978 /
2314-2316 — reachable only through paths that already populate
the env correctly, but the same discipline that was applied in
mono.rs (workspace-wide flat tables) could be hardened
defensively. Not currently broken.
**What's next:** orchestrator's call. The JOURNAL queue's
substantive items per recent entries are: post-22 Prelude
milestone (gated on user-author demand for primitive
`Show`/`Eq`/`Ord`), operator routing through `Eq`/`Ord` (gated on
bench re-baselining), the primitive-name-set consolidation, or
unrelated work. The milestone-cycle dictates `brainstorm` for
whichever lands next.