Skip to content

Commit 53cee2d

Browse files
reid-spencerclaude
andcommitted
Hand off BACKLOG 1a mid-flight
Records what the first three pages taught, so a fresh session does not rediscover it: every page hid real errors rather than merely lacking directives; a full-gate re-run after any wrapper edit is mandatory; the scratchpad dump helper ignores no-prelude and so lies about duplicates; and fences must be annotated by line number, not by matching their first line. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent 58a5485 commit 53cee2d

1 file changed

Lines changed: 21 additions & 3 deletions

File tree

NOTEBOOK.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ to the task file and note completion in this notebook.
1313

1414
## HANDOFF — as of 2026-08-08
1515

16-
**State:** branch `main`, clean. Everything through the rc.10-57 upgrade is
17-
committed; **not yet pushed**.
16+
**State:** branch `main`, clean, all pushed.
1817

1918
**Compiler: `../bin/riddlc` is `2.0.0-rc.10-57-e012ebb9`** — run `riddlc
2019
version`, it is restaged often. `build.sbt`'s `With.Riddl.library` pin must
@@ -34,7 +33,10 @@ looked successful. CLAUDE.md § "Things that will bite" has the recipe.
3433
### What is now true
3534

3635
`concepts/`, `quickstart.md` and `references/language-reference.md` are **fully
37-
gated** — 95 fences validated, 120 skipped, 0 failed, exit 0, against rc.10-57.
36+
gated** — 108 fences validated, 107 skipped, 0 failed, exit 0, against
37+
rc.10-57. **BACKLOG 1a is in flight**: retiring the 118 remaining blanket
38+
"illustrative fragment" skips, three pages done (`statement`, `value`,
39+
`invariant`), `language-reference.md`'s 44 deliberately last.
3840

3941
**rc.10-57 fixed `foreach`:** the element is now bound over the loop body (and
4042
carries its TYPE, so `line.nosuch` is still an Error), and any resolvable path
@@ -73,6 +75,22 @@ git show <rev>:scripts/validate-riddl-examples.py > /tmp/base.py
7375
python3 /tmp/base.py ../bin/riddlc <file.md>
7476
```
7577

78+
### Doing BACKLOG 1a — what the first three pages taught
79+
80+
- **Every page hid real errors.** 4, 1 and 4 respectively — an unsatisfiable
81+
`morph ... with record R()`, a `send` to a processor that should be `tell`,
82+
`???` written after real statements, states with no handler. Not one page was
83+
merely unannotated, so budget for content repair.
84+
- **Re-run the FULL gate after any wrapper edit.** Wrapper changes regressed
85+
other pages three times; the worst was naming a record `OrderData`, which
86+
collided with `language-reference.md`'s own prelude.
87+
- **`dump.py` in the scratchpad ignores `no-prelude`**, so its output is NOT
88+
what the gate sees. A "duplicate name" error from it is an artifact. Get the
89+
gate's own error before diagnosing.
90+
- Annotate fences by LINE NUMBER. Keying on a fence's first line put two
91+
directives on one fence and left two bare, because two fences both began
92+
`entity Account is {`.
93+
7694
### Traps this session paid for
7795

7896
- **A recorded warning can be stale; check its premise before obeying it.**

0 commit comments

Comments
 (0)