From e1c2c2fb76c54b69a92915dc7707b4b210ee8a5b Mon Sep 17 00:00:00 2001 From: Lilleman auf Larv Date: Wed, 30 Sep 2026 20:38:09 +0200 Subject: [PATCH] File the scoring run's findings and record its scores --- todo.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/todo.md b/todo.md index 58deb96..4e3927e 100644 --- a/todo.md +++ b/todo.md @@ -207,6 +207,10 @@ not SMPP's difficulty. Maintainer's call, 2026-09-30: build plan 3. The backgrou [docs/comprehension-rewrite/](docs/comprehension-rewrite/): the plans, the board, every panel report, the lessons and the six drafts as patches. Delete that directory once this milestone ships. +The move chunk (#53) read 6, 6, 6 and 6, Navigation 7 at every seat, Locality 5, 5, 5 and 6, Shape 6 +at every seat, Self-sufficiency 5, 6, 7 and 8. Every seat's Locality cause is the lifecycle cluster +the split below rewrites. + Every chunk below ships through `/larv-review`, and before it merges it also runs the comprehension-panel scoring run over the whole project. Each round: @@ -348,6 +352,19 @@ to the plan are [plan 3 §8](docs/comprehension-rewrite/plan-3.md#8-architecture ### Shape — 6 today, and the gate is 7 +- [ ] **Give each meaning of "refusal" its own name.** `PduRefusedError`/`codec/refusal.ts` (a PDU + the codec would not read), reassembly's `Refusal` (a segment not kept), `LinkLife.refusal()` + (the session is closed), `OutgoingRequests.refuse()` (bad input) and `Session.refuse()` + (answering an unreadable PDU) are five things under one word. From the 2026-09-30 scoring run. + +- [ ] **Collect a batch of sent PDUs in one function.** `collectReceipt()` in `session/sms.ts` and + `collectSent()` in `messages/submit.ts` are the same loop over `Result<{ pduObj }>[]`, counting + `UnansweredError`s and keeping the first failure. From the 2026-09-30 scoring run. + +- [ ] **Say at `readParams()` that only `short_message` reads the length it is handed.** Every field's + `read` gets `sm_length`, and that is sound only because `sm_length` precedes `short_message` in + wire order and `buffer` is the one type that uses it. From the 2026-09-30 scoring run. + - [ ] **Answer "is this a bind command" in one place.** `bindCommands` (read by `session/incoming-requests.ts`, `session/outgoing-requests.ts` and `test/session.test.ts`) and `bindTypeFromCommand()` (read by `server.ts` and `checkedBind()`) each list the three bind