← back to Designerwallcoverings
TK-11073 Wave4: fleetwide CSS-keyword artifact tag cleanup (32 products)
5eebaac0215bb6e361ac05a6584f8b3152974b90 · 2026-09-01 12:14:40 -0700 · Steve Abrams
Scoped investigation of the ~8,792 AI-Analyzed-v2 palette layer found it is MOSTLY LEGIT
descriptive color tags — stripping fleetwide would destroy filterability, so the own-palette
strip is DEFERRED (codex-agreed). The genuinely-safe machine-garbage subset = 32 products carrying
CSS-keyword artifact tags (Lightbeige/Mediumseagreen/Dimgray/lightBlue/Darkkhaki/Lightseagreen —
mixed-case dupes confirm machine origin). Stripped only those artifact tags; all legit color +
non-color tags preserved. 32/32 per-item verified, reversible via tk11073-wave4-rollback.mjs.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Files touched
A scripts/tk11073-css-keywords.jsonA scripts/tk11073-wave4-css-strip.mjsA scripts/tk11073-wave4-diff.jsonA scripts/tk11073-wave4-rollback.mjs
Diff
commit 5eebaac0215bb6e361ac05a6584f8b3152974b90
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Sep 1 12:14:40 2026 -0700
TK-11073 Wave4: fleetwide CSS-keyword artifact tag cleanup (32 products)
Scoped investigation of the ~8,792 AI-Analyzed-v2 palette layer found it is MOSTLY LEGIT
descriptive color tags — stripping fleetwide would destroy filterability, so the own-palette
strip is DEFERRED (codex-agreed). The genuinely-safe machine-garbage subset = 32 products carrying
CSS-keyword artifact tags (Lightbeige/Mediumseagreen/Dimgray/lightBlue/Darkkhaki/Lightseagreen —
mixed-case dupes confirm machine origin). Stripped only those artifact tags; all legit color +
non-color tags preserved. 32/32 per-item verified, reversible via tk11073-wave4-rollback.mjs.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
scripts/tk11073-css-keywords.json | 1 +
scripts/tk11073-wave4-css-strip.mjs | 93 ++
scripts/tk11073-wave4-diff.json | 2186 +++++++++++++++++++++++++++++++++++
scripts/tk11073-wave4-rollback.mjs | 50 +
4 files changed, 2330 insertions(+)
diff --git a/scripts/tk11073-css-keywords.json b/scripts/tk11073-css-keywords.json
new file mode 100644
index 0000000..827a306
--- /dev/null
+++ b/scripts/tk11073-css-keywords.json
@@ -0,0 +1 @@
+["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","lightbeige","lightbrown"]
\ No newline at end of file
diff --git a/scripts/tk11073-wave4-css-strip.mjs b/scripts/tk11073-wave4-css-strip.mjs
new file mode 100644
index 0000000..0794feb
--- /dev/null
+++ b/scripts/tk11073-wave4-css-strip.mjs
@@ -0,0 +1,93 @@
+#!/usr/bin/env node
+/**
+ * TK-11073 Wave 4 — fleetwide CSS-keyword ARTIFACT tag cleanup.
+ *
+ * SCOPE (codex-ruled, TK-11073): the "~8,792 palette-noise" layer is MOSTLY LEGIT descriptive color
+ * tags — stripping them fleetwide would destroy filterability, so the own-palette-match strip is
+ * DEFERRED. The genuinely-safe, unambiguous machine-garbage subset is products carrying CSS-KEYWORD
+ * ARTIFACT tags (concatenated compound CSS color keywords: Lightbeige/Mediumseagreen/Dimgray/
+ * lightBlue/Darkkhaki/Lightseagreen…). No human tags a wallcovering "Lightseagreen"; mixed-case dupes
+ * (lightblue/lightBlue) confirm machine origin. This strips ONLY those artifact tags. Tags-only.
+ * NEVER touches a color: facet, a real colorway, or any non-color tag. Reversible + ledgered + verified.
+ *
+ * Reads the pre-computed candidate set from /tmp/w4-final-diff.json (built by w4-final-diff.mjs).
+ *
+ * node tk11073-wave4-css-strip.mjs # DRY-RUN
+ * node tk11073-wave4-css-strip.mjs --apply --limit=5 # canary
+ * node tk11073-wave4-css-strip.mjs --apply # full (bounded set, ~32)
+ */
+import fs from 'node:fs';
+import path from 'node:path';
+import { execSync } from 'node:child_process';
+
+const STORE = process.env.SHOPIFY_STORE || 'designer-laboratory-sandbox.myshopify.com';
+const TOKEN = process.env.SHOPIFY_ADMIN_TOKEN;
+const API = process.env.SHOPIFY_API_VERSION || '2024-10';
+const APPLY = process.argv.includes('--apply');
+const LIMIT = parseInt((process.argv.find(a => a.startsWith('--limit=')) || '').split('=')[1] || '0', 10);
+const ONLY = ((process.argv.find(a => a.startsWith('--only=')) || '').split('=')[1] || '').split(',').filter(Boolean);
+const DIFF = '/tmp/w4-final-diff.json';
+const ROLLBACK = path.join(process.env.HOME, '.claude/yolo-queue/executed-reversible/TK-11073-rollback-map.json');
+const LEDGER_LOG = path.join(process.env.HOME, '.claude/yolo-queue/executed-reversible');
+if (!TOKEN) { console.error('FATAL: set SHOPIFY_ADMIN_TOKEN'); process.exit(1); }
+const sleep = ms => new Promise(r => setTimeout(r, ms));
+
+async function gql(query, variables) {
+ for (let a = 0; a < 5; a++) {
+ const res = await fetch(`https://${STORE}/admin/api/${API}/graphql.json`, {
+ method: 'POST', headers: { 'X-Shopify-Access-Token': TOKEN, 'Content-Type': 'application/json' },
+ body: JSON.stringify({ query, variables }), signal: AbortSignal.timeout(45000) });
+ const j = await res.json().catch(() => ({}));
+ if (j.errors) { if (a === 4) return { errors: j.errors }; await sleep(1200 * (a + 1)); continue; }
+ await sleep(350); return j.data;
+ }
+}
+
+async function main() {
+ let plans = JSON.parse(fs.readFileSync(DIFF, 'utf8'));
+ if (ONLY.length) plans = plans.filter(p => ONLY.includes(p.handle));
+ console.log(`Wave-4 CSS-artifact strip: ${plans.length} products`);
+ let toApply = LIMIT ? plans.slice(0, LIMIT) : plans;
+ for (const pl of toApply) console.log(` [${pl.status}] ${pl.handle} — STRIP ${pl.remove.join(', ')}`);
+ if (!APPLY) { console.log(`\nDRY-RUN. ${toApply.length} would change. Re-run with --apply.`); return; }
+
+ const rollback = fs.existsSync(ROLLBACK) ? JSON.parse(fs.readFileSync(ROLLBACK, 'utf8')) : {};
+ let done = 0, pass = 0, fail = 0;
+ for (const pl of toApply) {
+ // re-GET current tags (source-of-truth; the diff was computed earlier — re-derive newTags now)
+ const cur = await gql(`query($id:ID!){ product(id:$id){ tags } }`, { id: pl.id });
+ const curTags = (cur && cur.product && cur.product.tags) || [];
+ const rm = new Set(pl.remove);
+ const newTags = curTags.filter(t => !rm.has(t));
+ if (newTags.length === curTags.length) { console.log(` ${pl.handle}: already clean, skip`); done++; pass++; continue; }
+
+ rollback[pl.handle] = { id: pl.id, ts: new Date().toISOString(), old_tags: curTags, new_tags: newTags };
+ fs.writeFileSync(ROLLBACK, JSON.stringify(rollback, null, 2));
+
+ const d = await gql(`mutation($input:ProductInput!){ productUpdate(input:$input){ product{ id } userErrors{ field message } } }`,
+ { input: { id: pl.id, tags: newTags } });
+ const ue = d && d.productUpdate && d.productUpdate.userErrors;
+ if (ue && ue.length) { console.error(` userErrors ${pl.handle}: ${JSON.stringify(ue)}`); fail++; continue; }
+
+ const v = await gql(`query($id:ID!){ product(id:$id){ tags } }`, { id: pl.id });
+ const liveTags = (v && v.product && v.product.tags) || [];
+ const gone = !pl.remove.some(t => liveTags.includes(t));
+ const noLoss = newTags.every(t => liveTags.includes(t));
+ const verifyOk = gone && noLoss;
+ if (verifyOk) pass++; else { fail++; console.error(` VERIFY FAIL ${pl.handle}: gone=${gone} noLoss=${noLoss}`); }
+ done++;
+ console.log(`[${done}/${toApply.length}] ${pl.handle} ✓ ${verifyOk ? 'verified' : 'VERIFY-FAIL'}`);
+ try {
+ execSync(`node "${path.join(LEDGER_LOG, 'log-exec.mjs')}" ` +
+ `--agent vp-dw-commerce --ticket TK-11073 ` +
+ `--action "Wave4 CSS-artifact strip ${pl.handle}: ${pl.remove.join('/')}" ` +
+ `--blast 1 ` +
+ `--undo "cd ${path.join(process.env.HOME,'Projects/designerwallcoverings/scripts')} && node tk11073-wave4-rollback.mjs --only=${pl.handle} --apply" ` +
+ `--verify "GET product ${pl.id} — artifact tags gone, all other tags intact"`, { stdio: 'ignore' });
+ } catch {}
+ await sleep(600);
+ }
+ console.log(`\nDONE: ${done} products · verify-pass ${pass} · verify-fail ${fail}`);
+ console.log(`rollback map: ${ROLLBACK}`);
+}
+main();
diff --git a/scripts/tk11073-wave4-diff.json b/scripts/tk11073-wave4-diff.json
new file mode 100644
index 0000000..ea573e8
--- /dev/null
+++ b/scripts/tk11073-wave4-diff.json
@@ -0,0 +1,2186 @@
+[
+ {
+ "id": "gid://shopify/Product/1494830383216",
+ "handle": "the-original-heavy-madagascar-cloth-raffia-wall-paper-mad-100",
+ "vendor": "Madagascar Walls",
+ "title": "The Original Heavy Madagascar Cloth Raffia Wallcovering",
+ "status": "ACTIVE",
+ "remove": [
+ "Lightbeige",
+ "Lightbrown"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Almond",
+ "Architectural",
+ "Beige",
+ "Class A Fire Rated",
+ "Coastal",
+ "Coffee",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "grass cloth",
+ "grasscloth",
+ "Grasscloth Texture",
+ "Latte",
+ "Lightbeige",
+ "Lightbrown",
+ "Madagascar",
+ "Madagascar Naturals",
+ "Madagascar Walls",
+ "Natural Wallcovering",
+ "Raffia",
+ "Rustic",
+ "Tan",
+ "Textured",
+ "The Original Heavy Madagascar Cloth Raffia Wallcovering",
+ "Traditional",
+ "vinyl",
+ "Wallcovering",
+ "Walnut"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Almond",
+ "Architectural",
+ "Beige",
+ "Class A Fire Rated",
+ "Coastal",
+ "Coffee",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "grass cloth",
+ "grasscloth",
+ "Grasscloth Texture",
+ "Latte",
+ "Madagascar",
+ "Madagascar Naturals",
+ "Madagascar Walls",
+ "Natural Wallcovering",
+ "Raffia",
+ "Rustic",
+ "Tan",
+ "Textured",
+ "The Original Heavy Madagascar Cloth Raffia Wallcovering",
+ "Traditional",
+ "vinyl",
+ "Wallcovering",
+ "Walnut"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1494834577520",
+ "handle": "grasscloth-wiki-horizontal-aba-311",
+ "vendor": "Phillipe Romano",
+ "title": "Grasscloth Wiki Horizontal | Phillipe Romano",
+ "status": "ACTIVE",
+ "remove": [
+ "Lightbeige",
+ "Lightbrown"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Beige",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "grass cloth",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Grasscloth Wiki Horizontal",
+ "Lightbeige",
+ "Lightbrown",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Tan",
+ "Taupe",
+ "Textured",
+ "Tropical",
+ "Wallcovering",
+ "Walnut"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Beige",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "grass cloth",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Grasscloth Wiki Horizontal",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Tan",
+ "Taupe",
+ "Textured",
+ "Tropical",
+ "Wallcovering",
+ "Walnut"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1494834905200",
+ "handle": "grasscloth-tightwiki-ab320-peach-grasscloth-tightwiki-ab320-peach",
+ "vendor": "Phillipe Romano",
+ "title": "TightWiki Grasscloth Peach | Phillipe Romano",
+ "status": "ACTIVE",
+ "remove": [
+ "Lightcoral"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Beige",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Lightcoral",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Salmon",
+ "Stripe",
+ "Tan",
+ "Textured",
+ "TightWiki Grasscloth Peach",
+ "Traditional",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Beige",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Salmon",
+ "Stripe",
+ "Tan",
+ "Textured",
+ "TightWiki Grasscloth Peach",
+ "Traditional",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1494835003504",
+ "handle": "grasscloth-tightwiki-light-blue-grs-1825",
+ "vendor": "Phillipe Romano",
+ "title": "TightWiki Grasscloth Light Blue | Phillipe Romano",
+ "status": "ACTIVE",
+ "remove": [
+ "Lightgray",
+ "Lightseagreen"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Light Denim Blue",
+ "Lightgray",
+ "Lightseagreen",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Scandinavian",
+ "Silver",
+ "Steel",
+ "Textured",
+ "TightWiki Grasscloth Light Blue",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Grasscloth",
+ "Grasscloth Texture",
+ "Light Denim Blue",
+ "Natural",
+ "Natural Fiber",
+ "Naturals",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Rustic",
+ "Scandinavian",
+ "Silver",
+ "Steel",
+ "Textured",
+ "TightWiki Grasscloth Light Blue",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1494838476912",
+ "handle": "solid-vertical-coordinate-stripe-color-dk-silver-non-glass-glp-410",
+ "vendor": "Glass Beaded",
+ "title": "Solid Vertical Coordinate Stripe - Color: dk silver Non-Glass)",
+ "status": "ARCHIVED",
+ "remove": [
+ "Lightgray"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Bling",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Glass Bead",
+ "Glass Beaded",
+ "Gray",
+ "Lightgray",
+ "Silver",
+ "Solid Vertical Coordinate Stripe",
+ "Stripe",
+ "Textured",
+ "vinyl",
+ "Wallcovering",
+ "White"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Bling",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Glass Bead",
+ "Glass Beaded",
+ "Gray",
+ "Silver",
+ "Solid Vertical Coordinate Stripe",
+ "Stripe",
+ "Textured",
+ "vinyl",
+ "Wallcovering",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1494843097200",
+ "handle": "1970s-daisy-wall-paper-10xrl15b99",
+ "vendor": "Fentucci",
+ "title": "1970s Daisy Wallcovering",
+ "status": "ACTIVE",
+ "remove": [
+ "Lightgreen"
+ ],
+ "oldTags": [
+ "1970s Daisy Wallcovering",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fentucci",
+ "Floral",
+ "Lightgreen",
+ "Mid-Century Modern",
+ "Needs-Width",
+ "Orange",
+ "Paper",
+ "Sage",
+ "vinyl",
+ "Wallcovering",
+ "White"
+ ],
+ "newTags": [
+ "1970s Daisy Wallcovering",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fentucci",
+ "Floral",
+ "Mid-Century Modern",
+ "Needs-Width",
+ "Orange",
+ "Paper",
+ "Sage",
+ "vinyl",
+ "Wallcovering",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1497973588080",
+ "handle": "francesca-real-silk-wallpaper-twg-73446",
+ "vendor": "Phillipe Romano",
+ "title": "Francesca Real Silk | Phillipe Romano",
+ "status": "ARCHIVED",
+ "remove": [
+ "Mediumseagreen"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "color:Emerald",
+ "Commercial",
+ "display_variant",
+ "Francesca Real Silk",
+ "Green",
+ "Jade",
+ "Mediumseagreen",
+ "Naturals",
+ "Needs-Image",
+ "Needs-Price",
+ "Needs-Width",
+ "Phillip Romano Commercial",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Real Silk",
+ "Showroom Line",
+ "Silk",
+ "Textured",
+ "Traditional",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "color:Emerald",
+ "Commercial",
+ "display_variant",
+ "Francesca Real Silk",
+ "Green",
+ "Jade",
+ "Naturals",
+ "Needs-Image",
+ "Needs-Price",
+ "Needs-Width",
+ "Phillip Romano Commercial",
+ "Phillipe Romano",
+ "Phillipe Romano Naturals",
+ "Real Silk",
+ "Showroom Line",
+ "Silk",
+ "Textured",
+ "Traditional",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1498148569200",
+ "handle": "panarea-island-wallpaper-by-versace-ver-43218",
+ "vendor": "Versace",
+ "title": "Panarea Island | Versace",
+ "status": "ACTIVE",
+ "remove": [
+ "Mediumseagreen"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "Dark Green",
+ "display_variant",
+ "Fern",
+ "Green",
+ "Luxury",
+ "Mediumseagreen",
+ "Modern",
+ "Panarea Island",
+ "Textured",
+ "Versace",
+ "Versace Wallcovering",
+ "Vinyl",
+ "Wallcovering",
+ "White"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "Dark Green",
+ "display_variant",
+ "Fern",
+ "Green",
+ "Luxury",
+ "Modern",
+ "Panarea Island",
+ "Textured",
+ "Versace",
+ "Versace Wallcovering",
+ "Vinyl",
+ "Wallcovering",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1501600972912",
+ "handle": "puna-drive-natural-grassweave-hlw-73112",
+ "vendor": "Hollywood Wallcoverings",
+ "title": "Puna Drive - Natural Grassweave | Hollywood Wallcoverings",
+ "status": "ACTIVE",
+ "remove": [
+ "Darkkhaki"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Basketweave",
+ "Bedroom",
+ "Bone",
+ "Brown",
+ "Burlywood",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "Darkkhaki",
+ "display_variant",
+ "Farmhouse",
+ "Grasscloth",
+ "Grasscloth Weave",
+ "Hallway",
+ "Hollywood Wallcoverings",
+ "Living Room",
+ "Natural",
+ "Naturally Glamorous",
+ "Puna Drive",
+ "Rustic",
+ "Tan",
+ "Textured",
+ "Traditional",
+ "Tropical",
+ "Wallcovering",
+ "Warm"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Basketweave",
+ "Bedroom",
+ "Bone",
+ "Brown",
+ "Burlywood",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "display_variant",
+ "Farmhouse",
+ "Grasscloth",
+ "Grasscloth Weave",
+ "Hallway",
+ "Hollywood Wallcoverings",
+ "Living Room",
+ "Natural",
+ "Naturally Glamorous",
+ "Puna Drive",
+ "Rustic",
+ "Tan",
+ "Textured",
+ "Traditional",
+ "Tropical",
+ "Wallcovering",
+ "Warm"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/1960660762689",
+ "handle": "jojo-mountain-premium-jersey-mens-t-shirt",
+ "vendor": "Designer Wallcoverings",
+ "title": "Jojo Mountain Premium Jersey Men's T-Shirt",
+ "status": "ACTIVE",
+ "remove": [
+ "Dimgray"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Apparel",
+ "Architectural",
+ "Ash",
+ "Beige",
+ "Blue",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "Cotton",
+ "Designer Laboratory",
+ "Dimgray",
+ "display_variant",
+ "Fabric",
+ "Japonisme",
+ "Jojo Mountain Premium Jersey Men's T",
+ "Needs-Width",
+ "Scenic",
+ "Takumi",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Apparel",
+ "Architectural",
+ "Ash",
+ "Beige",
+ "Blue",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "Cotton",
+ "Designer Laboratory",
+ "display_variant",
+ "Fabric",
+ "Japonisme",
+ "Jojo Mountain Premium Jersey Men's T",
+ "Needs-Width",
+ "Scenic",
+ "Takumi",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/4481156874291",
+ "handle": "sc_0022g1193",
+ "vendor": "Scalamandre Wallpaper",
+ "title": "Sisal - Royalty | Scalamandre",
+ "status": "ACTIVE",
+ "remove": [
+ "Mediumvioletred"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Clay",
+ "Commercial",
+ "Dark Slategray",
+ "display_variant",
+ "Grasscloth",
+ "Luxury",
+ "Mediumvioletred",
+ "Natural",
+ "Needs-Price",
+ "Pink",
+ "Rustic",
+ "Showroom Line",
+ "SISAL",
+ "Texture",
+ "Textured",
+ "Traditional",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Clay",
+ "Commercial",
+ "Dark Slategray",
+ "display_variant",
+ "Grasscloth",
+ "Luxury",
+ "Natural",
+ "Needs-Price",
+ "Pink",
+ "Rustic",
+ "Showroom Line",
+ "SISAL",
+ "Texture",
+ "Textured",
+ "Traditional",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6679693656115",
+ "handle": "dwrw-75414",
+ "vendor": "Rebel Walls",
+ "title": "Romberg, lightblue | Rebel Walls",
+ "status": "ACTIVE",
+ "remove": [
+ "lightblue"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Architectural",
+ "Black",
+ "Blue",
+ "Brown",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "customize",
+ "display_variant",
+ "Gray",
+ "Gunmetal",
+ "Industrial",
+ "Insects",
+ "Light Gray",
+ "lightblue",
+ "material-group-metallic-foil",
+ "Mural",
+ "Non-woven",
+ "Paper",
+ "r18481",
+ "rebel walls",
+ "romberg",
+ "Rose Quartz",
+ "Steel Blue",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Architectural",
+ "Black",
+ "Blue",
+ "Brown",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "customize",
+ "display_variant",
+ "Gray",
+ "Gunmetal",
+ "Industrial",
+ "Insects",
+ "Light Gray",
+ "material-group-metallic-foil",
+ "Mural",
+ "Non-woven",
+ "Paper",
+ "r18481",
+ "rebel walls",
+ "romberg",
+ "Rose Quartz",
+ "Steel Blue",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6679833641011",
+ "handle": "dwss-76710",
+ "vendor": "Sandberg",
+ "title": "Elmire emerald Wallcovering | Sandberg",
+ "status": "ACTIVE",
+ "remove": [
+ "Mediumseagreen"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "Botanical",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Elmire",
+ "Elmire emerald",
+ "Emerald",
+ "Floral",
+ "Green",
+ "Hallway",
+ "Khaki",
+ "Light Coral",
+ "material-group-non-woven",
+ "Mediumseagreen",
+ "Moss",
+ "Non-Woven",
+ "Paper",
+ "Sandberg",
+ "Sandberg Leaf",
+ "Scandinavian",
+ "Swedish Design",
+ "Timeless",
+ "Traditional",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "Botanical",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Elmire",
+ "Elmire emerald",
+ "Emerald",
+ "Floral",
+ "Green",
+ "Hallway",
+ "Khaki",
+ "Light Coral",
+ "material-group-non-woven",
+ "Moss",
+ "Non-Woven",
+ "Paper",
+ "Sandberg",
+ "Sandberg Leaf",
+ "Scandinavian",
+ "Swedish Design",
+ "Timeless",
+ "Traditional",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6702934786099",
+ "handle": "dwjs-14724",
+ "vendor": "Jeffrey Stevens",
+ "title": "Charisse Black & White Multi | Jeffrey Stevens",
+ "status": "ARCHIVED",
+ "remove": [
+ "Dimgray"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Art Deco",
+ "Baroque",
+ "Chalkboard",
+ "Charisse Black & White Multi",
+ "Class A Fire Rated",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "Damask",
+ "Dark",
+ "Deep Charcoal",
+ "Dimgray",
+ "Discontinued",
+ "display_variant",
+ "Faux Finish",
+ "French Country",
+ "Geometric",
+ "Gray",
+ "Jeffrey Stevens",
+ "Light Duty",
+ "Light Traffic",
+ "MH1532",
+ "Muted",
+ "Neoclassical",
+ "Ornamental",
+ "Paper",
+ "Phasing-2026-04",
+ "Prepasted",
+ "Soft White",
+ "Solid",
+ "Strippable",
+ "Sure Strip",
+ "Texture",
+ "Traditional",
+ "United States",
+ "Wallcovering",
+ "Washable",
+ "White"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Art Deco",
+ "Baroque",
+ "Chalkboard",
+ "Charisse Black & White Multi",
+ "Class A Fire Rated",
+ "Commercial",
+ "Commercial Wallcovering",
+ "Contemporary",
+ "Damask",
+ "Dark",
+ "Deep Charcoal",
+ "Discontinued",
+ "display_variant",
+ "Faux Finish",
+ "French Country",
+ "Geometric",
+ "Gray",
+ "Jeffrey Stevens",
+ "Light Duty",
+ "Light Traffic",
+ "MH1532",
+ "Muted",
+ "Neoclassical",
+ "Ornamental",
+ "Paper",
+ "Phasing-2026-04",
+ "Prepasted",
+ "Soft White",
+ "Solid",
+ "Strippable",
+ "Sure Strip",
+ "Texture",
+ "Traditional",
+ "United States",
+ "Wallcovering",
+ "Washable",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6790305841203",
+ "handle": "ultra_2620",
+ "vendor": "Ultrasuede",
+ "title": "Ultrasuede™ Pine Green | Wallcovering & Fabric",
+ "status": "ACTIVE",
+ "remove": [
+ "Mediumseagreen"
+ ],
+ "oldTags": [
+ "5538-4672",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fabric",
+ "Faux Suede",
+ "Green",
+ "Juniper",
+ "Mediumseagreen",
+ "Pine",
+ "Smoke",
+ "Solid",
+ "Suede",
+ "Textured",
+ "Ultrasuede",
+ "Ultrasuede Pine Green",
+ "VINYL/FAUX LEATHER",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "5538-4672",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fabric",
+ "Faux Suede",
+ "Green",
+ "Juniper",
+ "Pine",
+ "Smoke",
+ "Solid",
+ "Suede",
+ "Textured",
+ "Ultrasuede",
+ "Ultrasuede Pine Green",
+ "VINYL/FAUX LEATHER",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6790305906739",
+ "handle": "ultra_2630",
+ "vendor": "Ultrasuede",
+ "title": "Ultrasuede™ Basil Green | Wallcovering & Fabric",
+ "status": "ACTIVE",
+ "remove": [
+ "Mediumaquamarine"
+ ],
+ "oldTags": [
+ "5538-4673",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Basil",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fabric",
+ "Faux Suede",
+ "Green",
+ "Light Seagreen",
+ "Mediumaquamarine",
+ "Nickel",
+ "Slate",
+ "Solid",
+ "Teal",
+ "Texture",
+ "Textured",
+ "Ultrasuede",
+ "Ultrasuede Basil Green",
+ "VINYL/FAUX LEATHER",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "5538-4673",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Basil",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fabric",
+ "Faux Suede",
+ "Green",
+ "Light Seagreen",
+ "Nickel",
+ "Slate",
+ "Solid",
+ "Teal",
+ "Texture",
+ "Textured",
+ "Ultrasuede",
+ "Ultrasuede Basil Green",
+ "VINYL/FAUX LEATHER",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/6811276935219",
+ "handle": "deerpath-trail-plaid-hunter",
+ "vendor": "Ralph Lauren",
+ "title": "Deerpath Trail Plaid Hunter Green Multi - Navy Fabric | Ralph Lauren",
+ "status": "ACTIVE",
+ "remove": [
+ "Dimgray"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "Blend",
+ "Charcoal",
+ "Check",
+ "Class A Fire Rated",
+ "Classic",
+ "Commercial",
+ "Dark Olivegreen",
+ "Deerpath Trail Plaid Hunter Green Multi",
+ "Dimgray",
+ "display_variant",
+ "Fabric",
+ "FRL5115/03",
+ "Geometric",
+ "Khaki",
+ "Midnightblue",
+ "Navy",
+ "Paper",
+ "Pattern",
+ "Plaid",
+ "Ralph Lauren",
+ "Ralph Lauren Fabrics",
+ "Traditional",
+ "Wallcovering",
+ "Wool Plaids Fabrics"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "Blend",
+ "Charcoal",
+ "Check",
+ "Class A Fire Rated",
+ "Classic",
+ "Commercial",
+ "Dark Olivegreen",
+ "Deerpath Trail Plaid Hunter Green Multi",
+ "display_variant",
+ "Fabric",
+ "FRL5115/03",
+ "Geometric",
+ "Khaki",
+ "Midnightblue",
+ "Navy",
+ "Paper",
+ "Pattern",
+ "Plaid",
+ "Ralph Lauren",
+ "Ralph Lauren Fabrics",
+ "Traditional",
+ "Wallcovering",
+ "Wool Plaids Fabrics"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245693124659",
+ "handle": "https-cdn-shopify-com-s-files-1-0015-4117-7456-files-balancing-act-sunset_8-webp-v-1715723607",
+ "vendor": "Brand McKenzie",
+ "title": "Balancing Act Sunset Wallcovering | Brand McKenzie",
+ "status": "ARCHIVED",
+ "remove": [
+ "lightpink"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Sunset Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01D",
+ "Bohemian",
+ "Botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "color:Eggshell",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Pink",
+ "lightpink",
+ "Maximalist",
+ "Nature",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Sunset Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01D",
+ "Bohemian",
+ "Botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "color:Eggshell",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Pink",
+ "Maximalist",
+ "Nature",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245726056499",
+ "handle": "dwbm-260000",
+ "vendor": "Brand McKenzie",
+ "title": "Balancing Act Green Sky - Light Blue Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightblue"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Blue Sky Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01A",
+ "Botanical",
+ "Brand Mckenzie",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Blue",
+ "lightblue",
+ "Maximalist",
+ "Monkey",
+ "Mushroom",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Powder",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Blue Sky Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01A",
+ "Botanical",
+ "Brand Mckenzie",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Blue",
+ "Maximalist",
+ "Monkey",
+ "Mushroom",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Powder",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245726122035",
+ "handle": "dwbm-260001",
+ "vendor": "Brand McKenzie",
+ "title": "Balancing Act Blue Sky - Light Blue Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightblue"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Green Sky Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01B",
+ "Botanical",
+ "Brand Mckenzie",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Blue",
+ "lightblue",
+ "Maximalist",
+ "Moss",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Powder Blue",
+ "Scenic",
+ "Tropical",
+ "Turtle",
+ "Wallcovering",
+ "White",
+ "Zebra"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Green Sky Wallcovering",
+ "Bird",
+ "Birds",
+ "BMCF003/01B",
+ "Botanical",
+ "Brand Mckenzie",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Blue",
+ "Maximalist",
+ "Moss",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Powder Blue",
+ "Scenic",
+ "Tropical",
+ "Turtle",
+ "Wallcovering",
+ "White",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245726384179",
+ "handle": "dwbm-260003",
+ "vendor": "Brand McKenzie",
+ "title": "Balancing Act Sunset Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightpink"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Sunset Wallcovering",
+ "Berry",
+ "Bird",
+ "Birds",
+ "Bohemian",
+ "Botanical",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Pink",
+ "lightpink",
+ "Maximalist",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Balancing Act Sunset Wallcovering",
+ "Berry",
+ "Bird",
+ "Birds",
+ "Bohemian",
+ "Botanical",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Flamingo",
+ "Green",
+ "Half Drop",
+ "Leopard",
+ "Light Pink",
+ "Maximalist",
+ "Nature",
+ "Paper",
+ "Pink",
+ "Scenic",
+ "Toucan",
+ "Tropical",
+ "Wallcovering",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245726482483",
+ "handle": "dwbm-260004",
+ "vendor": "Brand McKenzie",
+ "title": "Butterfly Effect Navy - Dark Blue Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightBlue"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Art Deco",
+ "Basil",
+ "Bird",
+ "BMCF003/02A",
+ "Bohemian",
+ "Brand Mckenzie",
+ "Butterflies",
+ "Butterfly",
+ "Butterfly Effect Green Multi Wallcovering",
+ "Charcoal",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Gold",
+ "Half Drop",
+ "Insects",
+ "Juniper",
+ "Light Blue",
+ "lightBlue",
+ "Maximalist",
+ "Moss",
+ "Nature",
+ "Paper",
+ "Peach",
+ "Scenic",
+ "Spruce",
+ "Teal",
+ "Wallcovering",
+ "White",
+ "Yellow"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Art Deco",
+ "Basil",
+ "Bird",
+ "BMCF003/02A",
+ "Bohemian",
+ "Brand Mckenzie",
+ "Butterflies",
+ "Butterfly",
+ "Butterfly Effect Green Multi Wallcovering",
+ "Charcoal",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Eclectic",
+ "Elephant",
+ "Gold",
+ "Half Drop",
+ "Insects",
+ "Juniper",
+ "Light Blue",
+ "Maximalist",
+ "Moss",
+ "Nature",
+ "Paper",
+ "Peach",
+ "Scenic",
+ "Spruce",
+ "Teal",
+ "Wallcovering",
+ "White",
+ "Yellow"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245726777395",
+ "handle": "dwbm-260007",
+ "vendor": "Brand McKenzie",
+ "title": "Butterfly Effect Pink Multi Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightBlue"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Art Deco",
+ "Art Nouveau",
+ "Blush",
+ "BMCF003/02D",
+ "Bohemian",
+ "Brand Mckenzie",
+ "Butterflies",
+ "Butterfly",
+ "Butterfly Effect Pink Multi Wallcovering",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Denim",
+ "display_variant",
+ "Eclectic",
+ "Green",
+ "Half Drop",
+ "Insects",
+ "Light Blue",
+ "lightBlue",
+ "Moth",
+ "Nature",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Purple",
+ "Wallcovering",
+ "White"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Animals",
+ "Architectural",
+ "Art Deco",
+ "Art Nouveau",
+ "Blush",
+ "BMCF003/02D",
+ "Bohemian",
+ "Brand Mckenzie",
+ "Butterflies",
+ "Butterfly",
+ "Butterfly Effect Pink Multi Wallcovering",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Denim",
+ "display_variant",
+ "Eclectic",
+ "Green",
+ "Half Drop",
+ "Insects",
+ "Light Blue",
+ "Moth",
+ "Nature",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Purple",
+ "Wallcovering",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245732511795",
+ "handle": "dwbm-260061",
+ "vendor": "Brand McKenzie",
+ "title": "Silk Shades Cerise - Light Gray Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightgray"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Art Deco",
+ "Beige",
+ "Black",
+ "BMHD002/09B",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fuchsia",
+ "Geometric",
+ "Gold",
+ "Half Drop",
+ "Light Gray",
+ "lightgray",
+ "Maximalist",
+ "Paper",
+ "Silk",
+ "Silk Shades Charcoal Wallcovering",
+ "single dominant background color",
+ "Traditional",
+ "Wallcovering",
+ "Yellow"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Art Deco",
+ "Beige",
+ "Black",
+ "BMHD002/09B",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Fuchsia",
+ "Geometric",
+ "Gold",
+ "Half Drop",
+ "Light Gray",
+ "Maximalist",
+ "Paper",
+ "Silk",
+ "Silk Shades Charcoal Wallcovering",
+ "single dominant background color",
+ "Traditional",
+ "Wallcovering",
+ "Yellow"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245732610099",
+ "handle": "dwbm-260062",
+ "vendor": "Brand McKenzie",
+ "title": "Silk Shades Salmon & Olive | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightgray"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Apricot",
+ "Architectural",
+ "Art Deco",
+ "Beige",
+ "BMHD002/09C",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Geometric",
+ "Green",
+ "Half Drop",
+ "light beige",
+ "Light Gray",
+ "lightgray",
+ "olive green",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Silk",
+ "Silk Shades Salmon & Olive",
+ "Traditional",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Apricot",
+ "Architectural",
+ "Art Deco",
+ "Beige",
+ "BMHD002/09C",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Geometric",
+ "Green",
+ "Half Drop",
+ "light beige",
+ "Light Gray",
+ "olive green",
+ "Paper",
+ "Pattern",
+ "Pink",
+ "Silk",
+ "Silk Shades Salmon & Olive",
+ "Traditional",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245732872243",
+ "handle": "dwbm-260064",
+ "vendor": "Brand McKenzie",
+ "title": "The Art Deco Hills Teal & Copper - Light Gray Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "darkBlue"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Architecture",
+ "Art Deco",
+ "Beige",
+ "Black",
+ "Blue",
+ "BMHD002/10A",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "Cyan",
+ "Dark Blue",
+ "darkBlue",
+ "display_variant",
+ "Eclectic",
+ "Geometric",
+ "Half Drop",
+ "Maximalist",
+ "Paper",
+ "Sage",
+ "Scenic",
+ "single dominant background color",
+ "Steel",
+ "Swan",
+ "Teal",
+ "The Art Deco Hills Aqua Wallcovering",
+ "Wallcovering",
+ "Zebra"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Architecture",
+ "Art Deco",
+ "Beige",
+ "Black",
+ "Blue",
+ "BMHD002/10A",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "Cyan",
+ "Dark Blue",
+ "display_variant",
+ "Eclectic",
+ "Geometric",
+ "Half Drop",
+ "Maximalist",
+ "Paper",
+ "Sage",
+ "Scenic",
+ "single dominant background color",
+ "Steel",
+ "Swan",
+ "Teal",
+ "The Art Deco Hills Aqua Wallcovering",
+ "Wallcovering",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245732970547",
+ "handle": "dwbm-260065",
+ "vendor": "Brand McKenzie",
+ "title": "The Art Deco Hills Aqua - Teal Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightBlue"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal/Insects",
+ "Architectural",
+ "Architecture",
+ "Art Deco",
+ "Blue",
+ "BMHD002/10B",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Dog",
+ "Eclectic",
+ "Geometric",
+ "Gray",
+ "Half Drop",
+ "Lemon",
+ "Light Gray",
+ "lightBlue",
+ "Nature",
+ "Orange",
+ "Paper",
+ "Peacock",
+ "Scenic",
+ "Teal",
+ "The Art Deco Hills Teal & Copper",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal/Insects",
+ "Architectural",
+ "Architecture",
+ "Art Deco",
+ "Blue",
+ "BMHD002/10B",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Dog",
+ "Eclectic",
+ "Geometric",
+ "Gray",
+ "Half Drop",
+ "Lemon",
+ "Light Gray",
+ "Nature",
+ "Orange",
+ "Paper",
+ "Peacock",
+ "Scenic",
+ "Teal",
+ "The Art Deco Hills Teal & Copper",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245733101619",
+ "handle": "dwbm-260066",
+ "vendor": "Brand McKenzie",
+ "title": "The Art Deco Hills Teal & Fushia | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightGray"
+ ],
+ "oldTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Art Deco",
+ "Blue",
+ "BMHD002/10C",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Flamingo",
+ "Green",
+ "Light Gray",
+ "lightGray",
+ "Maximalist",
+ "Paper",
+ "Pattern",
+ "Peacock",
+ "Scenic",
+ "Teal",
+ "The Art Deco Hills Teal & Fushia",
+ "Wallcovering",
+ "Zebra"
+ ],
+ "newTags": [
+ "Abstract",
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Art Deco",
+ "Blue",
+ "BMHD002/10C",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Chinoiserie",
+ "Class A Fire Rated",
+ "Commercial",
+ "display_variant",
+ "Flamingo",
+ "Green",
+ "Light Gray",
+ "Maximalist",
+ "Paper",
+ "Pattern",
+ "Peacock",
+ "Scenic",
+ "Teal",
+ "The Art Deco Hills Teal & Fushia",
+ "Wallcovering",
+ "Zebra"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245733429299",
+ "handle": "dwbm-260069",
+ "vendor": "Brand McKenzie",
+ "title": "The Great Damask Raisin Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightGray"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Art Deco",
+ "Art Nouveau",
+ "Beetle",
+ "BMHD002/11C",
+ "Botanical",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "Damask",
+ "display_variant",
+ "Half Drop",
+ "Insects",
+ "lightGray",
+ "material-group-non-woven",
+ "Non-woven",
+ "Pattern",
+ "single dominant background color",
+ "The Great Damask Raisin Wallcovering",
+ "Traditional",
+ "Victorian",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "Animal",
+ "Animal/Insects",
+ "Architectural",
+ "Art Deco",
+ "Art Nouveau",
+ "Beetle",
+ "BMHD002/11C",
+ "Botanical",
+ "Brand Mckenzie",
+ "Charcoal",
+ "Class A Fire Rated",
+ "Commercial",
+ "Damask",
+ "display_variant",
+ "Half Drop",
+ "Insects",
+ "material-group-non-woven",
+ "Non-woven",
+ "Pattern",
+ "single dominant background color",
+ "The Great Damask Raisin Wallcovering",
+ "Traditional",
+ "Victorian",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245733593139",
+ "handle": "dwbm-260071",
+ "vendor": "Brand McKenzie",
+ "title": "Abstract Jungle Putty Grey - Beige Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightgray"
+ ],
+ "oldTags": [
+ "Abstract",
+ "Abstract Jungle Leaf Green Wallcovering",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "BMTD001/01A",
+ "Botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "Dark Green",
+ "display_variant",
+ "Foliage",
+ "Green",
+ "Half Drop",
+ "Light Beige",
+ "lightgray",
+ "material-group-non-woven",
+ "Mushroom",
+ "No - Per Settlement",
+ "Non-woven",
+ "Silver",
+ "Tropical",
+ "Wallcovering",
+ "White"
+ ],
+ "newTags": [
+ "Abstract",
+ "Abstract Jungle Leaf Green Wallcovering",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "BMTD001/01A",
+ "Botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "Dark Green",
+ "display_variant",
+ "Foliage",
+ "Green",
+ "Half Drop",
+ "Light Beige",
+ "material-group-non-woven",
+ "Mushroom",
+ "No - Per Settlement",
+ "Non-woven",
+ "Silver",
+ "Tropical",
+ "Wallcovering",
+ "White"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7245733724211",
+ "handle": "dwbm-260072",
+ "vendor": "Brand McKenzie",
+ "title": "Abstract Jungle Leaf Green - Pale Beige Wallcovering | Brand McKenzie",
+ "status": "ACTIVE",
+ "remove": [
+ "lightgray"
+ ],
+ "oldTags": [
+ "abstract",
+ "Abstract Jungle Putty Grey",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "BMTD001/01B",
+ "botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Foliage",
+ "Gray",
+ "Half Drop",
+ "Light Gray",
+ "lightgray",
+ "material-group-non-woven",
+ "No - Per Settlement",
+ "Non-woven",
+ "Pearl",
+ "Silver",
+ "Taupe",
+ "tropical",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "abstract",
+ "Abstract Jungle Putty Grey",
+ "AI-Analyzed-v2",
+ "Architectural",
+ "Beige",
+ "BMTD001/01B",
+ "botanical",
+ "Brand Mckenzie",
+ "Class A Fire Rated",
+ "Coastal",
+ "Commercial",
+ "Contemporary",
+ "display_variant",
+ "Foliage",
+ "Gray",
+ "Half Drop",
+ "Light Gray",
+ "material-group-non-woven",
+ "No - Per Settlement",
+ "Non-woven",
+ "Pearl",
+ "Silver",
+ "Taupe",
+ "tropical",
+ "Wallcovering"
+ ]
+ },
+ {
+ "id": "gid://shopify/Product/7292180758579",
+ "handle": "dwqw-56858-handle",
+ "vendor": "Malibu Wallpaper",
+ "title": "Lace Medallion Transitional Geometric - Sea Green, Beige, and Ebony | Architectural Wallcoverings",
+ "status": "ACTIVE",
+ "remove": [
+ "Dimgray"
+ ],
+ "oldTags": [
+ "AI-Analyzed-v2",
+ "and Ebony",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Aura",
+ "Background Color Dark Seagreen",
+ "Background Color sea green",
+ "Cedar",
+ "Celadon",
+ "Class \"A\" Fire Rated",
+ "Commercial",
+ "Dark Seagreen",
+ "Dimgray",
+ "display_variant",
+ "Floral",
+ "Geometric",
+ "Green",
+ "Ivy",
+ "Juniper",
+ "Lace Medallion",
+ "Lace Medallion Transitional Geometric",
+ "Laurel",
+ "Light Duty",
+ "Low Traffic",
+ "Medallion",
+ "Paisley",
+ "Paper",
+ "Pattern",
+ "Residential",
+ "Residential Use",
+ "Sea Green",
+ "Thyme",
+ "Traditional",
+ "Transitional",
+ "Vinyl",
+ "Wallcovering"
+ ],
+ "newTags": [
+ "AI-Analyzed-v2",
+ "and Ebony",
+ "Architectural",
+ "ASTM E84 Class A",
+ "Aura",
+ "Background Color Dark Seagreen",
+ "Background Color sea green",
+ "Cedar",
+ "Celadon",
+ "Class \"A\" Fire Rated",
+ "Commercial",
+ "Dark Seagreen",
+ "display_variant",
+ "Floral",
+ "Geometric",
+ "Green",
+ "Ivy",
+ "Juniper",
+ "Lace Medallion",
+ "Lace Medallion Transitional Geometric",
+ "Laurel",
+ "Light Duty",
+ "Low Traffic",
+ "Medallion",
+ "Paisley",
+ "Paper",
+ "Pattern",
+ "Residential",
+ "Residential Use",
+ "Sea Green",
+ "Thyme",
+ "Traditional",
+ "Transitional",
+ "Vinyl",
+ "Wallcovering"
+ ]
+ }
+]
\ No newline at end of file
diff --git a/scripts/tk11073-wave4-rollback.mjs b/scripts/tk11073-wave4-rollback.mjs
new file mode 100644
index 0000000..5ababd5
--- /dev/null
+++ b/scripts/tk11073-wave4-rollback.mjs
@@ -0,0 +1,50 @@
+#!/usr/bin/env node
+/**
+ * TK-11073 rollback — restore products to pre-remediation tags from
+ * ~/.claude/yolo-queue/executed-reversible/TK-11073-rollback-map.json.
+ * Tags-only (Waves 1-2 & 4 are retag-only; no image/PG writes to reverse).
+ *
+ * node tk11073-rollback.mjs # DRY-RUN, all recorded handles
+ * node tk11073-rollback.mjs --only=h1,h2 # DRY-RUN specific handles
+ * node tk11073-rollback.mjs --apply # RESTORE all
+ * node tk11073-rollback.mjs --only=h1 --apply # RESTORE one
+ */
+import fs from 'node:fs';
+import path from 'node:path';
+
+const STORE = process.env.SHOPIFY_STORE || 'designer-laboratory-sandbox.myshopify.com';
+const TOKEN = process.env.SHOPIFY_ADMIN_TOKEN;
+const API = process.env.SHOPIFY_API_VERSION || '2024-10';
+const APPLY = process.argv.includes('--apply');
+const ONLY = ((process.argv.find(a => a.startsWith('--only=')) || '').split('=')[1] || '').split(',').filter(Boolean);
+const ROLLBACK = path.join(process.env.HOME, '.claude/yolo-queue/executed-reversible/TK-11073-rollback-map.json');
+const sleep = ms => new Promise(r => setTimeout(r, ms));
+if (!TOKEN) { console.error('FATAL: set SHOPIFY_ADMIN_TOKEN'); process.exit(1); }
+
+async function gql(query, variables) {
+ for (let a = 0; a < 5; a++) {
+ const res = await fetch(`https://${STORE}/admin/api/${API}/graphql.json`, {
+ method: 'POST', headers: { 'X-Shopify-Access-Token': TOKEN, 'Content-Type': 'application/json' },
+ body: JSON.stringify({ query, variables }), signal: AbortSignal.timeout(45000) });
+ const j = await res.json().catch(() => ({}));
+ if (j.errors) { if (a === 4) return { errors: j.errors }; await sleep(1200 * (a + 1)); continue; }
+ await sleep(350); return j.data;
+ }
+}
+
+async function main() {
+ const map = JSON.parse(fs.readFileSync(ROLLBACK, 'utf8'));
+ const handles = ONLY.length ? ONLY : Object.keys(map);
+ for (const h of handles) {
+ const r = map[h];
+ if (!r) { console.log(`no rollback record for ${h}`); continue; }
+ console.log(`[${h}] restore tags(${r.old_tags.length})`);
+ if (!APPLY) continue;
+ const d = await gql(`mutation($input:ProductInput!){ productUpdate(input:$input){ userErrors{ message } } }`,
+ { input: { id: r.id, tags: r.old_tags } });
+ const ue = d && d.productUpdate && d.productUpdate.userErrors;
+ if (ue && ue.length) console.error(` errors: ${JSON.stringify(ue)}`); else console.log(' restored ✓');
+ }
+ if (!APPLY) console.log('\nDRY-RUN. Re-run with --apply to restore.');
+}
+main();
← e0cf48e TK-11073 Wave3: defensive image-keep filter + muralsource/ri
·
back to Designerwallcoverings
·
auto-data-snapshot: 2026-09-01T12:16:45 (5 data files) — dat 76fe1a2 →