← back to Dw Domain Fleet
Close C: 'A is enough' (Steve 2026-05-29). Source handle rename rejected — blind detection can't tell vendor 'Harlequin' from 'harlequin' pattern / house-brand products; would corrupt live canonical URLs. Shipped render-time scrub (A) is the fix
5aee355acf8c7369b97ca2f8a0071c49bb91f8f5 · 2026-05-29 23:05:19 -0700 · Steve
Files touched
M VENDOR_HANDLE_RENAME_PLAN.md
Diff
commit 5aee355acf8c7369b97ca2f8a0071c49bb91f8f5
Author: Steve <steve@designerwallcoverings.com>
Date: Fri May 29 23:05:19 2026 -0700
Close C: 'A is enough' (Steve 2026-05-29). Source handle rename rejected — blind detection can't tell vendor 'Harlequin' from 'harlequin' pattern / house-brand products; would corrupt live canonical URLs. Shipped render-time scrub (A) is the fix
---
VENDOR_HANDLE_RENAME_PLAN.md | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/VENDOR_HANDLE_RENAME_PLAN.md b/VENDOR_HANDLE_RENAME_PLAN.md
index 6cba280..21a3cbf 100644
--- a/VENDOR_HANDLE_RENAME_PLAN.md
+++ b/VENDOR_HANDLE_RENAME_PLAN.md
@@ -1,3 +1,22 @@
+# C — Vendor handle source-rename · CLOSED 2026-05-29: "A is enough" (Steve)
+
+> **DECISION (2026-05-29): NOT doing C. The shipped render-time scrub (A) is the
+> fix.** Evaluated C with a sandbox dry-run: the rename mechanic works
+> (`productUpdate(handle:)` cleans the handle, Shopify auto-creates the 301).
+> **But blind detection is unsafe** — even precise full-vendor-name matching
+> can't distinguish the vendor **"Harlequin"** from a **"harlequin" diamond
+> *pattern***, and it flags **house-brand** products (e.g. a Philippe Romano
+> product whose pattern is "harlequin"). An autonomous live rename would corrupt
+> legitimate product names + canonical Shopify URLs on the revenue store —
+> higher blast radius than the leak it closes. A only affects fleet *display*
+> (reversible, worst case cosmetic), so A wins. Live source handles left
+> untouched. (One sandbox test product `zoe-s-zebra…scalamandre` was renamed
+> during the dry-run — harmless test-store change, left as-is.) If C is ever
+> revisited it MUST be a **human-reviewed, per-item-approved** migration, never
+> an automated bulk rename. Everything below is the original (now-shelved) plan.
+
+---
+
# C — Vendor handle source-rename (the durable fix) · PARKED, GATED
DTD verdict (2026-05-29) on the fleet vendor-leak fix was **A**: strengthen the
← 56504de render.js+server.js: eliminate data-handle/data-sku DOM vend
·
back to Dw Domain Fleet
·
render.js productSlug: guard both slug returns with hasVendo 0ac4d91 →