{"slug":"mfr-recovery-2026-08-23","total":11,"limit":100,"offset":0,"since":null,"commits":[{"hash":"d137c99","date":"2026-08-27 18:10:55 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-08-27T18:10:50 (1 data files) — out/mfr-push-restore-1787879088597.jsonl","body":""},{"hash":"25fe485","date":"2026-08-27 10:57:24 -0700","author":"Steve Abrams","subject":"TK-10827: fix Novasuede join-key bug in mfr push (nc.sku=handle, exclude slug placeholders)","body":"The old join nc.mfr_sku=stripped_handle recovered 0 rows. Correct join\nnc.sku=handle recovers exactly 1: novasuede-sand -> T3D8W (real vendor code,\nverified vs authoritative novasuede.com). Dry-run confirmed planned=1 wrote=0.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"e08f75e","date":"2026-08-26 12:00:07 -0700","author":"Steve Abrams","subject":"TK-10829 Gate 1 (Steve-approved): adopt-live for 32 mis-scraped novasuede_catalog codes + restore-map","body":""},{"hash":"ed86664","date":"2026-08-26 11:34:03 -0700","author":"Steve Abrams","subject":"TK-10829 Novasuede mfr recovery: authoritative novasuede.com reconciliation + 20 placeholder staging fixes","body":""},{"hash":"654c25e","date":"2026-08-25 08:08:39 -0700","author":"Steve","subject":"zoffany durable mfr recovery builder + guarded apply/restore (TK-10677)","body":""},{"hash":"8836003","date":"2026-08-25 07:39:18 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-08-25T07:39:06 (3 data files) — zoffany_durable_apply.sql zoffany_restore.sql zoffany_restore_map.json","body":""},{"hash":"d390b67","date":"2026-08-24 22:04:23 -0700","author":"Steve Abrams","subject":"TK-10827: durable two-surface mfr push (Kamatera DB + Shopify) + companion rollback; dry-run default, restore-map","body":""},{"hash":"31981a9","date":"2026-08-24 21:21:09 -0700","author":"Steve Abrams","subject":"TK-10677: add push-mfr-to-shopify.mjs (dry-run default; sets custom.+dwc.manufacturer_sku; restore-map; reversible)","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"fc2116f","date":"2026-08-24 19:39:29 -0700","author":"Steve Abrams","subject":"TK-10677: verify 24 Zoffany recoverable (/bin/zsh join), mark stale/mirror-only SQL, add verified CSV","body":""},{"hash":"3cc4ec0","date":"2026-08-23 04:14:44 -0700","author":"Steve Abrams","subject":"add pending-approval memo for dw_unified write — awaiting Steve approval","body":""},{"hash":"b4fdc74","date":"2026-08-23 04:13:57 -0700","author":"Steve Abrams","subject":"initial: mfr recovery SQL for Zoffany (24) and Novasuede (14) — TK-10677/TK-10794","body":"Dry-run SQL proves recovery via local staging table join — no live scrape needed.\nAPPLY SQL files drafted for pending-approval (dw_unified mirror write only).\n\nCo-Authored-By: rescrape-agent <noreply@anthropic.com>\n"}]}