[object Object]

← back to Designer Wallcoverings

TK-10002 /yolo FIX-THEN-SHIP: fix 2 Missoni -sample collisions BATCH-1 missed + harden regression-fix gate scope

1376340ceb0ffce07e0a97a8ad9b753f280916ab · 2026-07-29 22:23:44 -0700 · Steve

Cody red-team (FIX FIRST 4-1) + live repro found BATCH-1 renamed only the loser BASE variant,
leaving MIS-18313-sample / MIS-18398-sample still shared with the keeper (mirror scalar was blind
to it). Renamed loser samples -> MIS-18313-W2-sample / MIS-18398-W2-sample; 2/2 pairs verified
collision-free live. Also: fix-pr-base-collision.js now requires a DISTINCT scope token
(pr-base-regression-fix) so it can't reuse the residual-cleanup artifact (Cody's gate-gap catch).
Final DTD: FIX-THEN-SHIP 4/4.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit 1376340ceb0ffce07e0a97a8ad9b753f280916ab
Author: Steve <steve@designerwallcoverings.com>
Date:   Wed Jul 29 22:23:44 2026 -0700

    TK-10002 /yolo FIX-THEN-SHIP: fix 2 Missoni -sample collisions BATCH-1 missed + harden regression-fix gate scope
    
    Cody red-team (FIX FIRST 4-1) + live repro found BATCH-1 renamed only the loser BASE variant,
    leaving MIS-18313-sample / MIS-18398-sample still shared with the keeper (mirror scalar was blind
    to it). Renamed loser samples -> MIS-18313-W2-sample / MIS-18398-W2-sample; 2/2 pairs verified
    collision-free live. Also: fix-pr-base-collision.js now requires a DISTINCT scope token
    (pr-base-regression-fix) so it can't reuse the residual-cleanup artifact (Cody's gate-gap catch).
    Final DTD: FIX-THEN-SHIP 4/4.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
 scripts/tk10002-null-sample/fix-pr-base-collision.js |  5 ++++-
 .../tk10002_missoni_sample_results.json              | 20 ++++++++++++++++++++
 2 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/scripts/tk10002-null-sample/fix-pr-base-collision.js b/scripts/tk10002-null-sample/fix-pr-base-collision.js
index 8fc75fb0..4000110e 100644
--- a/scripts/tk10002-null-sample/fix-pr-base-collision.js
+++ b/scripts/tk10002-null-sample/fix-pr-base-collision.js
@@ -53,7 +53,10 @@ async function baseFreeLive(newBase){
 }
 
 async function main(){
-  const gate=requireApproval({ ticket:'TK-10002', scope:'residual-collision-cleanup', apply:APPLY });
+  // DISTINCT scope token (Cody 2026-07-29): this regression fix must NOT ride the residual-cleanup
+  // artifact — it needs its own APPROVED: TK-10002 pr-base-regression-fix, i.e. a fresh Steve decision
+  // (incl. the Weave-keeps call + a Weave-base order-history check).
+  const gate=requireApproval({ ticket:'TK-10002', scope:'pr-base-regression-fix', apply:APPLY });
   console.log(`MODE: ${APPLY?'APPLY (LIVE WRITE)':'DRY-RUN'}  gate=${gate.mode}\n`);
   const results={applied:[],failed:[],skipped:[]};
   for(const t of TARGETS){
diff --git a/scripts/tk10002-null-sample/tk10002_missoni_sample_results.json b/scripts/tk10002-null-sample/tk10002_missoni_sample_results.json
new file mode 100644
index 00000000..a4e398f1
--- /dev/null
+++ b/scripts/tk10002-null-sample/tk10002_missoni_sample_results.json
@@ -0,0 +1,20 @@
+{
+  "applied": [
+    {
+      "pid": "6751727386675",
+      "label": "Magic Garden Cream",
+      "old": "MIS-18313-sample",
+      "neu": "MIS-18313-W2-sample",
+      "got": "MIS-18313-W2-sample"
+    },
+    {
+      "pid": "6753081589811",
+      "label": "Striped Sunset",
+      "old": "MIS-18398-sample",
+      "neu": "MIS-18398-W2-sample",
+      "got": "MIS-18398-W2-sample"
+    }
+  ],
+  "skipped": [],
+  "failed": []
+}
\ No newline at end of file

← dd4a842f auto-save: 2026-07-29T21:42:29 (1 files) — scripts/tk10002-n  ·  back to Designer Wallcoverings  ·  TK-10002: PR base-collision regression FIXED live (Steve go, b2949c91 →