docs: 0048 live-DB evidence (runs are e2e artifacts — purge recommended) + 0049 read-models proposal #125

Merged
chad merged 2 commits from glen/docs-read-models into main 2026-10-17 23:59:30 -04:00
Collaborator

Two doc commits — no code, no behavior. Both need your approval to proceed to implementation.

1. docs/0048 amended with live-DB evidence (query run read-only on bee): 12 machine_runs total, all created 2026-10-10 (the day the writers were deleted), 7 completed / 5 cancelled, and the titles are e2e-test artifacts — "tabs or spaces?", "is a haiku 17 syllables?", "name one prime". There is no work product in those tables. This changes the doc's framing: options A (keep rendering) and B (backfill transcript) were both priced against "keep history browsable," but the data says nothing is worth browsing. New option C — purge: one migration deletes the 12 run conversations, drops both tables, and deletes every read path from the residue list (/r, redirect, hrefFor arm, glyph, runUnread, db/machines.ts) — residue to zero, per the 0032 precedent. Recommendation: C (B only if the one real conversation's words matter to you).

2. docs/0049 — read models out of db/ (new draft): the four view-shape type groups (attention, sidebar shapes from organize, search, sandbox-view) move to lib/read-models/; queries and invariants stay in db/ and re-import the types. An eslint no-restricted-imports override then makes "components never import db" checkable instead of remembered. ~29 import sites, zero runtime change.

Your merge of this PR = approval of both docs; the implementation PRs follow separately (0048-C first if you agree with the purge call — say so in the merge or comments if you'd rather have B).

Two doc commits — no code, no behavior. Both need your approval to proceed to implementation. **1. `docs/0048` amended with live-DB evidence** (query run read-only on bee): 12 `machine_runs` total, all created 2026-10-10 (the day the writers were deleted), 7 completed / 5 cancelled, and the titles are e2e-test artifacts — "tabs or spaces?", "is a haiku 17 syllables?", "name one prime". There is no work product in those tables. This changes the doc's framing: options A (keep rendering) and B (backfill transcript) were both priced against "keep history browsable," but the data says nothing is worth browsing. New option **C — purge**: one migration deletes the 12 run conversations, drops both tables, and deletes every read path from the residue list (`/r`, redirect, `hrefFor` arm, glyph, `runUnread`, `db/machines.ts`) — residue to zero, per the 0032 precedent. **Recommendation: C** (B only if the one real conversation's words matter to you). **2. `docs/0049` — read models out of `db/`** (new draft): the four view-shape type groups (`attention`, sidebar shapes from `organize`, `search`, `sandbox-view`) move to `lib/read-models/`; queries and invariants stay in `db/` and re-import the types. An eslint `no-restricted-imports` override then makes "components never import db" checkable instead of remembered. ~29 import sites, zero runtime change. Your merge of this PR = approval of both docs; the implementation PRs follow separately (0048-C first if you agree with the purge call — say so in the merge or comments if you'd rather have B).
Read-only query on bee: 12 machine_runs, all 2026-10-10 (the day the
writers were deleted), 7 completed / 5 cancelled, titles are test
noise ("tabs or spaces?", "is a haiku 17 syllables?"). Both option A
and B were priced against keeping history browsable; the data says
there is nothing worth browsing. Adds option C (purge, per the 0032
precedent) as the recommendation.
docs: propose 0049 — read models out of db/ (types to lib/read-models)
All checks were successful
deploy / checks (pull_request) Successful in 40s
deploy / deploy (pull_request) Has been skipped
54b9f860a3
Draft, not yet approved. The four view-shape type groups in
db/{attention,organize,search,sandbox-view}.ts move to
lib/read-models/ (queries and invariants stay in db/); an eslint
no-restricted-imports override then makes the component boundary
checkable instead of remembered. 29 import sites, zero behavior change.
chad approved these changes 2026-10-17 23:59:25 -04:00
chad merged commit 7840578afb into main 2026-10-17 23:59:30 -04:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
chad/sweatshop-legacy!125
No description provided.