DUNIN7 · LOOMWORKS · RECORD
record.dunin7.com
Status Current
Path scoping-notes/loomworks-b101-b99-scoping-note-v0_1.md

B-101 before B-99 — the ordering ruled, both scoped — v0.1

Date. 2026-08-14 · Mode. READ-ONLY, nothing built. Engine 3c925ba, surface 322a216 (clean). The ordering question, answered first: AGREED — B-101 goes ahead. A record you can't read is data loss in effect, present tense, and every future save-offer conversation mints another poison turn; B-99 is a missing sentence on a correct outcome. B-101 is scoped first below; B-99's shape-sweep follows.


B-101 — the blast radius, measured

Today: ONE turn, ONE engagement — E0128 alone. The full census of persisted structured_data kinds in playground_dev: upload_results (13 turns / 1 engagement), voice_recording (7 / 2), answer_sources (1 / 1), save_offer (1 / 1 — E0128), plus 190 JSON-null rows (the normal no-payload case, harmless). The read union's five members cover everything persisted except save_offer. The unregistered set is exactly one tag.

Smaller than feared today — and structural tomorrow, which is why the urgency read still holds: the writer (converse.py:1456, the R1 held-tray fix — the offered note's number carried deterministically to the next turn) fires on every add_knowledge save-offer that carries a display number. Every future offer-bearing conversation adds a poison turn to its engagement. E0128's own came from the walk's composer captures — the Operator's Held 1/Held 2 pastes each drew an offer, and the offer wrote the tag.

B-101 — the sweep (which mattered more than the tag, as ruled)

CR shape (small, no prerequisite): engine — add the save_offer union member; per-turn degrade-don't-fail; the kinds enumeration made single-source (writer imports it). Surface — the mirror member or tolerate-unknown. E0128's history becomes readable with no data change: the turn was always valid; only the reader's vocabulary was behind.


B-99 — the shape-sweep: is the silent-close guard pattern elsewhere?

The criterion that separates the defect from the idiom: empties-as-idle-state rendered honestly vs empties-as-action-outcome swallowed by unmount. Sweep of every zero-length render gate in the surface:

B-99's fix stands as filed (the converged outcome renders a closing state — "nothing left open; this draft is ready to commit" — handing off to the banner; test drives the converged outcome and asserts the report renders before any unmount), now with the sweep's assurance that it is one site, not a class — and one sentence for the banner's adjacency.


What awaits ruling

The B-101 CR draft (engine union member + per-turn degrade + single-source kinds; surface mirror), then B-99's (one site, small, the sweep annexed). Both scoped; neither drafted.


DUNIN7 — Done In Seven LLC — Miami, Florida — B-101/B-99 scoping — v0.1 — 2026-08-14 One tag behind, one page hostage; the writer minted vocabulary the reader never learned. And the silent close is one site, not a habit.