← back to Mfr Recovery 2026 08 23
auto-data-snapshot: 2026-08-25T07:39:06 (3 data files) — zoffany_durable_apply.sql zoffany_restore.sql zoffany_restore_map.json
883600307975a639412f15cbb7e8125137c6caa0 · 2026-08-25 07:39:18 -0700 · auto-commit-fleet
Files touched
A zoffany_durable_apply.sqlA zoffany_restore.sqlA zoffany_restore_map.json
Diff
commit 883600307975a639412f15cbb7e8125137c6caa0
Author: auto-commit-fleet <steve@designerwallcoverings.com>
Date: Tue Aug 25 07:39:18 2026 -0700
auto-data-snapshot: 2026-08-25T07:39:06 (3 data files) — zoffany_durable_apply.sql zoffany_restore.sql zoffany_restore_map.json
---
zoffany_durable_apply.sql | 47 +++++++++++++++++
zoffany_restore.sql | 7 +++
zoffany_restore_map.json | 127 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 181 insertions(+)
diff --git a/zoffany_durable_apply.sql b/zoffany_durable_apply.sql
new file mode 100644
index 0000000..f8e73c9
--- /dev/null
+++ b/zoffany_durable_apply.sql
@@ -0,0 +1,47 @@
+-- DURABLE Zoffany mfr_sku recovery — TK-10677 — generated 2026-08-25
+-- Runs identically on Kamatera-canonical dw_unified AND the Mac2 mirror.
+-- IDEMPOTENT + GUARDED: only fills rows that are still null/empty, only these 24 handles, only ACTIVE Zoffany.
+-- A re-run after success updates 0 rows. Reversible via zoffany_restore.sql.
+BEGIN;
+
+WITH recover(handle, mfr_sku) AS (
+ VALUES
+ ('watered-silk-antique-bronze-dwzf-187023', 'ZRHW312914'),
+ ('spark-310993-sapphire-dwzf-187024', 'ZQUA310993'),
+ ('kensington-grasscloth-mineral-dwzf-187027', 'ZHIW313004'),
+ ('abstract-1928-taupe-dwzf-187029', 'ZRHW312889'),
+ ('watered-silk-platinum-grey-dwzf-187032', 'ZRHW312916'),
+ ('persian-tulip-blue-stone-dwzf-187034', 'ZHIW312997'),
+ ('ormonde-stripe-la-seine-dwzf-187041', 'ZFOW312941'),
+ ('ormonde-stripe-mushroom-dwzf-187042', 'ZFOW312943'),
+ ('eleonora-dwzf-187049', 'ZGUV08004'),
+ ('abstract-1928-mineral-dwzf-187011', 'ZRHW312890'),
+ ('conway-sahara-dwzf-187003', 'ZTOT312747'),
+ ('hawksmoor-antique-bronze-dwzf-187007', 'ZPHA312595'),
+ ('persian-tulip-poison-dwzf-187001', 'ZHIW312996'),
+ ('shagreen-como-blue-dwzf-187012', 'ZRHW312906'),
+ ('shagreen-oyster-dwzf-187006', 'ZRHW312910'),
+ ('shagreen-zinc-dwzf-187000', 'ZRHW312907'),
+ ('spun-silk-antique-copper-dwzf-187004', 'ZRHW312899'),
+ ('weathered-stone-plain-bluestone-dwzf-187005', 'ZKEM312641'),
+ ('guinea-blue-stone-dwzf-187016', 'ZKEM312648'),
+ ('kensington-grasscloth-paris-grey-dwzf-187021', 'ZHIW313003'),
+ ('moresque-glaze-indigo-dwzf-187019', 'ZHIW312994'),
+ ('persian-tulip-quartz-grey-dwzf-187015', 'ZHIW312995'),
+ ('spun-silk-antique-bronze-dwzf-187014', 'ZRHW312897'),
+ ('spun-silk-paris-grey-dwzf-187017', 'ZRHW312903')
+)
+UPDATE shopify_products sp
+SET mfr_sku = r.mfr_sku
+FROM recover r
+WHERE sp.handle = r.handle
+ AND sp.vendor = 'Zoffany'
+ AND sp.status = 'ACTIVE'
+ AND (sp.mfr_sku IS NULL OR sp.mfr_sku = '');
+
+-- verify: how many of the 24 target handles now carry their mfr code
+SELECT count(*) AS zoffany_with_mfr_now
+FROM shopify_products
+WHERE vendor='Zoffany' AND status='ACTIVE' AND mfr_sku IN ('ZRHW312914','ZQUA310993','ZHIW313004','ZRHW312889','ZRHW312916','ZHIW312997','ZFOW312941','ZFOW312943','ZGUV08004','ZRHW312890','ZTOT312747','ZPHA312595','ZHIW312996','ZRHW312906','ZRHW312910','ZRHW312907','ZRHW312899','ZKEM312641','ZKEM312648','ZHIW313003','ZHIW312994','ZHIW312995','ZRHW312897','ZRHW312903');
+
+COMMIT;
diff --git a/zoffany_restore.sql b/zoffany_restore.sql
new file mode 100644
index 0000000..c50597e
--- /dev/null
+++ b/zoffany_restore.sql
@@ -0,0 +1,7 @@
+-- REVERSIBLE UNDO for the durable Zoffany mfr recovery — TK-10677
+-- Sets the 24 recovered mfr_sku back to '' (only rows that currently hold exactly these codes).
+BEGIN;
+UPDATE shopify_products
+SET mfr_sku = ''
+WHERE vendor='Zoffany' AND status='ACTIVE' AND mfr_sku IN ('ZRHW312914','ZQUA310993','ZHIW313004','ZRHW312889','ZRHW312916','ZHIW312997','ZFOW312941','ZFOW312943','ZGUV08004','ZRHW312890','ZTOT312747','ZPHA312595','ZHIW312996','ZRHW312906','ZRHW312910','ZRHW312907','ZRHW312899','ZKEM312641','ZKEM312648','ZHIW313003','ZHIW312994','ZHIW312995','ZRHW312897','ZRHW312903');
+COMMIT;
diff --git a/zoffany_restore_map.json b/zoffany_restore_map.json
new file mode 100644
index 0000000..4918533
--- /dev/null
+++ b/zoffany_restore_map.json
@@ -0,0 +1,127 @@
+{
+ "ticket": "TK-10677",
+ "generated": "2026-08-25",
+ "undo": "SET mfr_sku='' for the listed mfr codes",
+ "rows": [
+ {
+ "handle": "watered-silk-antique-bronze-dwzf-187023",
+ "mfr": "ZRHW312914",
+ "dw": "DWZF-187023"
+ },
+ {
+ "handle": "spark-310993-sapphire-dwzf-187024",
+ "mfr": "ZQUA310993",
+ "dw": "DWZF-187024"
+ },
+ {
+ "handle": "kensington-grasscloth-mineral-dwzf-187027",
+ "mfr": "ZHIW313004",
+ "dw": "DWZF-187027"
+ },
+ {
+ "handle": "abstract-1928-taupe-dwzf-187029",
+ "mfr": "ZRHW312889",
+ "dw": "DWZF-187029"
+ },
+ {
+ "handle": "watered-silk-platinum-grey-dwzf-187032",
+ "mfr": "ZRHW312916",
+ "dw": "DWZF-187032"
+ },
+ {
+ "handle": "persian-tulip-blue-stone-dwzf-187034",
+ "mfr": "ZHIW312997",
+ "dw": "DWZF-187034"
+ },
+ {
+ "handle": "ormonde-stripe-la-seine-dwzf-187041",
+ "mfr": "ZFOW312941",
+ "dw": "DWZF-187041"
+ },
+ {
+ "handle": "ormonde-stripe-mushroom-dwzf-187042",
+ "mfr": "ZFOW312943",
+ "dw": "DWZF-187042"
+ },
+ {
+ "handle": "eleonora-dwzf-187049",
+ "mfr": "ZGUV08004",
+ "dw": "DWZF-187049"
+ },
+ {
+ "handle": "abstract-1928-mineral-dwzf-187011",
+ "mfr": "ZRHW312890",
+ "dw": "DWZF-187011"
+ },
+ {
+ "handle": "conway-sahara-dwzf-187003",
+ "mfr": "ZTOT312747",
+ "dw": "DWZF-187003"
+ },
+ {
+ "handle": "hawksmoor-antique-bronze-dwzf-187007",
+ "mfr": "ZPHA312595",
+ "dw": "DWZF-187007"
+ },
+ {
+ "handle": "persian-tulip-poison-dwzf-187001",
+ "mfr": "ZHIW312996",
+ "dw": "DWZF-187001"
+ },
+ {
+ "handle": "shagreen-como-blue-dwzf-187012",
+ "mfr": "ZRHW312906",
+ "dw": "DWZF-187012"
+ },
+ {
+ "handle": "shagreen-oyster-dwzf-187006",
+ "mfr": "ZRHW312910",
+ "dw": "DWZF-187006"
+ },
+ {
+ "handle": "shagreen-zinc-dwzf-187000",
+ "mfr": "ZRHW312907",
+ "dw": "DWZF-187000"
+ },
+ {
+ "handle": "spun-silk-antique-copper-dwzf-187004",
+ "mfr": "ZRHW312899",
+ "dw": "DWZF-187004"
+ },
+ {
+ "handle": "weathered-stone-plain-bluestone-dwzf-187005",
+ "mfr": "ZKEM312641",
+ "dw": "DWZF-187005"
+ },
+ {
+ "handle": "guinea-blue-stone-dwzf-187016",
+ "mfr": "ZKEM312648",
+ "dw": "DWZF-187016"
+ },
+ {
+ "handle": "kensington-grasscloth-paris-grey-dwzf-187021",
+ "mfr": "ZHIW313003",
+ "dw": "DWZF-187021"
+ },
+ {
+ "handle": "moresque-glaze-indigo-dwzf-187019",
+ "mfr": "ZHIW312994",
+ "dw": "DWZF-187019"
+ },
+ {
+ "handle": "persian-tulip-quartz-grey-dwzf-187015",
+ "mfr": "ZHIW312995",
+ "dw": "DWZF-187015"
+ },
+ {
+ "handle": "spun-silk-antique-bronze-dwzf-187014",
+ "mfr": "ZRHW312897",
+ "dw": "DWZF-187014"
+ },
+ {
+ "handle": "spun-silk-paris-grey-dwzf-187017",
+ "mfr": "ZRHW312903",
+ "dw": "DWZF-187017"
+ }
+ ]
+}
\ No newline at end of file
← d390b67 TK-10827: durable two-surface mfr push (Kamatera DB + Shopif
·
back to Mfr Recovery 2026 08 23
·
zoffany durable mfr recovery builder + guarded apply/restore 654c25e →