[object Object]

← back to Designer Wallcoverings

AF repair: add --only-mfr scoped filter (enables targeted collision re-runs without full 27-min pass)

9983383cd15a2763b1cfb7401bd0b8a337b73bf3 · 2026-06-25 16:31:12 -0700 · Steve

Files touched

Diff

commit 9983383cd15a2763b1cfb7401bd0b8a337b73bf3
Author: Steve <steve@designerwallcoverings.com>
Date:   Thu Jun 25 16:31:12 2026 -0700

    AF repair: add --only-mfr scoped filter (enables targeted collision re-runs without full 27-min pass)
---
 shopify/scripts/anna-french-repair-inplace.mjs | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/shopify/scripts/anna-french-repair-inplace.mjs b/shopify/scripts/anna-french-repair-inplace.mjs
index 656b91f0..d6870e2c 100644
--- a/shopify/scripts/anna-french-repair-inplace.mjs
+++ b/shopify/scripts/anna-french-repair-inplace.mjs
@@ -63,6 +63,8 @@ const GQL = `https://${SHOP}/admin/api/${VER}/graphql.json`;
 const COMMIT = process.argv.includes('--commit');
 const li = process.argv.indexOf('--limit');
 const LIMIT = li >= 0 ? parseInt(process.argv[li + 1], 10) : 0;
+const omi = process.argv.indexOf('--only-mfr');
+const ONLY_MFR = omi >= 0 ? new Set(process.argv[omi + 1].split(',').map((s) => s.trim().toUpperCase())) : null;
 const oi = process.argv.indexOf('--out');
 const OUT =
   oi >= 0
@@ -487,6 +489,7 @@ async function run() {
   let processed = 0;
   for (const stage of staged) {
     if (LIMIT && scanned >= LIMIT) break;
+    if (ONLY_MFR && !ONLY_MFR.has(String(stage.mfr_sku).toUpperCase())) continue;
     scanned++;
     const mfr = String(stage.mfr_sku).toUpperCase();
     const candidates = liveByMfr.get(mfr) || [];

← 887f840a fix(stage script): add curl -g so bracketed ?asset[key]= GET  ·  back to Designer Wallcoverings  ·  auto-save: 2026-06-25T16:35:16 (6 files) — pending-approval/ 3d5bb06c →