Version. 0.1 · Date. 2026-08-06 · Author. Claude.ai (drafting) / Marvin Percival (approving).
Target. /Users/dunin7/loomworks-engine, branch main.
Baseline. Post CR-2026-174 (e101e08, tag cr-2026-174-ruff-gate-closure). CC confirms exact HEAD at Step 0.
Companion to. inspection-briefs/loomworks-small-work-sweep-step-0-findings-v0_1.md (§ unanticipated finding); CR-2026-171 §3, which found this and deliberately left it.
Charter. Autonomous regime. Status. Ready for CC execution.
CR number. Best-guess next slot past 174. CC confirms the ledger before filing.
The identical defect CR-2026-171 fixed for renders (B-53), in the Shape path. shape_events_view_query.py's SELECT never names display_number; the reader at shape_events.py:150 does row.get("display_number") and gets nothing — indistinguishable from a Shape that genuinely has no number.
Not a new build-list item at drafting time — recommend adding it as B-59 when the build list next moves.
Fix. Add display_number to the SELECT at shape_events_view_query.py:109-133. One line, mirroring exactly what CR-2026-171 did to render_events_view_query.py.
Test. Extend the Shape list-loading test — assert display_number present and correct for both a backfilled row and a freshly-created one. Mirror the render-side test CR-2026-171 added.
Anything about whether the number must exist — that is B-54, now sitting in CR-2026-176 (code fix) with the NOT NULL migration behind it. This CR only makes the existing number readable.
| Step | What | Mode |
|---|---|---|
| 0 | Pre-flight — confirm baseline HEAD, tree clean. | Auto |
| 1 | Fix + test. | Auto |
| 2 | Full engine suite. Ruff and mypy gates both now live — both must pass. | Auto |
| A | Checkpoint. | Checkpoint |
| 3 | Tag cr-2026-175-shape-list-display-number. Push. | Auto |
display_number present in every Shape-list response body.
Execute CR-2026-175 v0.1 at ~/Downloads/cr-2026-175-loomworks-shape-list-
display-number-v0_1.md. Confirm the CR number against the ledger first.
One-line fix: shape_events_view_query.py's SELECT (lines 109-133) never
names display_number. Add it. Mirror exactly what CR-2026-171 did to
render_events_view_query.py, including the shape of its test.
Baseline: post CR-2026-174, e101e08. Confirm current HEAD at Step 0.
Both quality gates are live now — ruff must stay at 0, mypy at or below
baseline. Checkpoint before tagging.
DUNIN7 — Done In Seven LLC — Miami, Florida CR-2026-175 — B-59: Shape list display number — v0.1 — 2026-08-06