Restore path — clean-room rebuild, 2026-07-13¶
The safety net for scope-2026-07-13-clean-room-rebuild. Taken before either live D1 was cleared. Live D1 holds the only copy of anything operator-authored, so this file is the thing that makes the rebuild reversible.
builds/ is gitignored — the SQL dumps do not survive a fresh checkout. The Time
Travel bookmarks below do, and they are the authoritative restore anchor.
Time Travel bookmarks (pre-rebuild)¶
| site | database | bookmark |
|---|---|---|
| garvanbay | replatform-emdash-demo |
000001a2-00000000-000050a7-371f0977f6767f4555007241f0e75e7b |
| waterfordcountypainters | replatform-emdash-waterfordcountypainters |
00000080-00000000-000050a7-7a00c2f3b0ca839561949e8ceb74b958 |
Note: d1 time-travel takes no --remote flag (it is remote-only; passing --remote
errors with Unknown argument: remote).
SQL dumps (local, gitignored)¶
builds/garvanbay.ie/d1-backup/full-2026-07-13.sql (564 KB)
builds/waterfordcountypainters.ie/d1-backup/full-2026-07-13.sql (392 KB)
Produced with npx wrangler d1 export <db> --remote --output <file>.
What the dumps were verified to contain¶
Checked by reading the artifact, not by trusting the file size — the discipline the 2026-07-13 pt3 session had to learn three times.
| garvanbay | WCP | |
|---|---|---|
ec_pages |
10 | 24 |
ec_globals |
1 | 1 |
revisions |
87 | 17 |
users |
3 | 1 |
WCP's ec_globals carries the operator-authored native block + span (the empty
paragraph) alongside its 7 fcr.* blocks — matching the pt3 handover's "2 blocks patched,
7 preserved". That native block is the one thing in either database that no regen can
reproduce, and it is the reason this dump was taken.
Restore triggers¶
Restore if any of the following, per the scope's stated risks:
- garvanbay's rebuilt scorecard regresses and the cause is image resolution loss (the R2 key is a lossy hash that cannot be recomputed — see known-patterns "Re-seeding a rebuilt CMS seed needs the AUTHORITATIVE basename→R2-URL map").
- A re-crawl flips the derived brand (WCP is the known flipper,
logo→surface) and the palette regresses. - WCP's operator-authored native
blockis lost by a reseed.
A regression that is measured and reported is a finding, not a restore trigger — the scope says so explicitly. Restore is for data loss, not for a worse number.