{"slug":"dw-dead-image-recovery","total":13,"limit":100,"offset":0,"since":null,"commits":[{"hash":"486a706","date":"2026-09-04 09:38:07 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-09-04T09:31:20 (3 data files) — data/tk11050-versa-image-repair/apply-mac2-image-repair.sql data/tk11050-versa-image-repair/fix-pairs-127.tsv data/tk11050-versa-image-repair/undo-mac2-image-repair.sql","body":""},{"hash":"95bc6b0","date":"2026-09-02 14:49:45 -0700","author":"Steve Abrams","subject":"TK-11048: independent verification of Kamatera-scoped re-recovery — 145/145 keys match prod verbatim, 40/40 fresh liveness, 0 wrong-image risk; apply-versa-kamatera.sql gated-ready (retire Mac2-shaped SQL for prod)","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01R9pqyFahiGfXofjzY2q6Hs"},{"hash":"d14f2fe","date":"2026-09-02 14:47:11 -0700","author":"Steve Abrams","subject":"TK-11048: track Kamatera recovery + restore maps (force-add past .jsonl ignore)","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01R9pqyFahiGfXofjzY2q6Hs"},{"hash":"bd89bdd","date":"2026-09-02 14:47:00 -0700","author":"Steve Abrams","subject":"TK-11048: Kamatera-scoped Versa re-recovery — 145/283 recovered (SKU-core-keyed, verified live), corrected apply SQL","body":"Mac2-mirror apply-versa.sql matched 0 on prod (disjoint cohort). Fresh pass against\nKamatera's 283 live product_urls: 145 recovered (all core-keyed, 0 wrong-image risk,\nnotlive=0). 138 miss: INV(91)/ASL(21) install filenames lack the mfr core + 14 404 PDPs.\napply-versa-kamatera.sql keyed on as-stored mfr_sku. No DB write, no push.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01R9pqyFahiGfXofjzY2q6Hs"},{"hash":"10b13e4","date":"2026-09-02 13:53:45 -0700","author":"Steve Abrams","subject":"TK-11048: verify Versa dead-image recovery (13 negative-case tests, 40/40 independent liveness, guarded-SQL scan); fix ESM require() crash in --apply path + add direct-run guard for testability","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01R9pqyFahiGfXofjzY2q6Hs"},{"hash":"94c41e5","date":"2026-09-01 22:01:23 -0700","author":"Steve Abrams","subject":"allow Carlisle staging while keeping it offline","body":""},{"hash":"c1caf71","date":"2026-09-01 21:58:46 -0700","author":"Steve Abrams","subject":"exclude dead catalog lines from reconciliation","body":""},{"hash":"dc851eb","date":"2026-09-01 17:30:53 -0700","author":"Steve Abrams","subject":"harden catalog gap audit and bounded backfill","body":""},{"hash":"47f4119","date":"2026-09-01 16:33:28 -0700","author":"Steve Abrams","subject":"TK-11050: 33 RW mural drafts, parity per-sqm metafield (83.38/70.81) matching live siblings","body":""},{"hash":"e855b87","date":"2026-08-31 16:56:41 -0700","author":"Steve Abrams","subject":"TK-11050 item-4: 33 corrected Rebel Walls mural draft payloads (real DWRW-R codes, Model A, gated)","body":""},{"hash":"b912f75","date":"2026-08-31 14:34:51 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-08-31T14:28:57 (4 data files) — data/onboarding-candidates/anna_french-496.txt data/onboarding-candidates/rebelwalls-250.txt data/tk11050-item4/anna_french-genuine-new.csv data/tk11050-item4/rebelwalls-genuine-new.csv","body":""},{"hash":"8088bda","date":"2026-08-31 13:23:05 -0700","author":"Steve Abrams","subject":"TK-11048: crash-fix (maxBuffer) + data:-reject; full 345/345 recovery; guarded gated apply.sql","body":""},{"hash":"912c36e","date":"2026-08-31 13:04:23 -0700","author":"steve@designerwallcoverings.com","subject":"TK-11048: versa feed-first image recovery (/bin/zsh, 100% on 60-sample, dry-run default)","body":""}]}