[object Object]

← back to Dw Yolo Loop

cycle 75: consolidated variant/price-integrity synthesis (c66-c74) + basis-aware dw-map-auditor canary spec (zero-dollar STATUS-AGNOSTIC + abnormal-sample branched-by-basis + disco-completeness) + codified methodology

ba51039d298f44e81949e54e33e3eb5e3192d222 · 2026-06-17 22:51:15 -0700 · Steve Abrams

Files touched

Diff

commit ba51039d298f44e81949e54e33e3eb5e3192d222
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Wed Jun 17 22:51:15 2026 -0700

    cycle 75: consolidated variant/price-integrity synthesis (c66-c74) + basis-aware dw-map-auditor canary spec (zero-dollar STATUS-AGNOSTIC + abnormal-sample branched-by-basis + disco-completeness) + codified methodology
---
 .../SYNTHESIS-and-canary-spec.md                   | 54 ++++++++++++++++++++++
 1 file changed, 54 insertions(+)

diff --git a/scripts/variant-price-integrity-synthesis/SYNTHESIS-and-canary-spec.md b/scripts/variant-price-integrity-synthesis/SYNTHESIS-and-canary-spec.md
new file mode 100644
index 0000000..7173991
--- /dev/null
+++ b/scripts/variant-price-integrity-synthesis/SYNTHESIS-and-canary-spec.md
@@ -0,0 +1,54 @@
+# Variant + Price Integrity — consolidated synthesis (cycles c66–c74) + basis-aware canary spec — cycle 75
+
+**DTD verdict D (2/1, dissent Claude/A).** READ-ONLY, **$0**. One decision-ready artifact mapping 9 cycles of variant/price-integrity findings → vendor / set / cause / lifecycle / fix / gate / severity, plus the durable canary spec so this defect class can't silently re-open. Headline counts re-confirmed live this cycle (RL active 253, DWTT-71xx active 46, DWTF active 76, Cole&Son active 1,238).
+
+## 1. The map — every variant/price-integrity defect found, c66–c74
+### 🔴 Zero-dollar / free-checkout (the c67→c71 arc — fully bounded + root-caused)
+| Set | Size | Structure | Root cause (verified) | Lifecycle | Fix (GATED) | Sev | Cycles |
+|---|---|---|---|---|---|---|---|
+| Ralph Lauren | 111 | single-variant "Sample" $0, CONTINUE (orderable) | **NEVER-PRICED** — RL in no pipeline (product_map=0, ~0% costed via DG gap, Schu-only seeders, no RL importer); 2025 import | ACTIVE/orderable | reprice Sample → confirmed value (NOT hardcode $4.25; confirm vs RL/DG memo); min-safe `CONTINUE→DENY` first; DG cost-load is a SEPARATE sellability track | **P1** | c67/68/71 |
+| DW Bespoke Studio | 1 | single-variant "Sample" $0 | orphan straggler (c68's 6% gap; caught by full-catalog GraphQL) | ACTIVE | reprice w/ RL | P1 | c69 |
+| Hollywood Acoustical/Wallcoverings + 5 others | 33 | multi-variant; real ROLL variant $0 + CONTINUE | **2018–19 LEGACY placeholder**, NO current producer (build-roll-scale exonerated; repricers fix-$0-upward) | ACTIVE; 15 CONTINUE (guaranteed free-checkout) + 18 DENY (stock-gated) | per-product TRIAGE (price-the-roll vs remove-stray); no pipeline fix needed | **P2** | c69/70 |
+- **Total $0-orderable exposure: 145 products** (112 default/single P1 + 33 multi P2). Multi-variant DEFAULT-$0 = 0 (verified full-catalog). Two distinct causes (2018 legacy placeholder vs 2025 never-priced), same symptom.
+
+### 🟠 At-MAP mislabel (current live products, correctly priced, wrong variant title — SPLIT fix)
+| Set | Size | Finding | Unit verified | Fix (GATED) | Sev | Cycle |
+|---|---|---|---|---|---|---|
+| Cole & Son | 352 | single "Sample" priced at EXACTLY Kravet `new_map` (0 below MAP) | Roll/Panel (namespace 17R+4P, 0 yard; join 1:1) | SPLIT (relabel roll + add $4.25 Sample, self-heal landmine); no reprice | **P2** | c72 |
+| Kravet | 13 | single "Sample" at/above MAP (0 below) | per-roll (W-prefix namespace 99.85% Roll) — **per-SKU unit-confirm MANDATORY before split** (Kravet mixes yard/roll); carve out the $1,188 outlier | SPLIT + stricter unit gate | **P2** | c73 |
+- Consumer-harm: a "Sample" charging $81–$2,146 (chargeback/deceptive vector). Pricing-integrity itself clean.
+
+### 🟡 Discontinued stragglers (NOT mislabels — disposition is removal, not relabel)
+| Set | Size | Finding | Fix (GATED) | Sev | Cycle |
+|---|---|---|---|---|---|
+| Thibaut DWTT-71xx + DWTF | 56 (subset of 122 active) | discontinued lines, flat placeholder prices ($125.43 ×32, $3.50 ×24); 2026-06-13 archive left 122 active (46 DWTT-71xx + 76 DWTF); live-200 on DW (301 is vendor-side) | **UNPUBLISH → per-SKU confirm → archive** (April caution); split DWTF $3.50 (sub-$4.25 price-integrity) from DWTT-71xx | **P3** + P2 fulfillment edge | c74 |
+
+### 🟢 Image-SEO (separate, c66)
+- ~27% of product images have a *stored*-null alt → image-SEO/curation opportunity. Rendered-layer WCAG violations = **0/46** (theme constructs alt at render). **P3** — NOT an ADA fire (officer-corrected).
+
+### ⏸️ Deferred (basis undiagnosed — explicit open items)
+| Set | Size | Why deferred | Next |
+|---|---|---|---|
+| Osborne & Little | 90 | NOT Kravet-family; RRP basis; barcode=None (Kravet-MAP method N/A) | decode RRP basis + lifecycle/status (c75-A candidate) |
+| Fentucci | 21 | unknown basis | decode basis + status |
+
+## 2. The basis-aware canary spec (extend `dw-map-auditor`)
+A single Kravet-MAP check mis-flags non-Kravet vendors (the c73 lesson). The recurring guard must BRANCH by basis + check lifecycle:
+1. **Zero-dollar-orderable gate (STATUS-AGNOSTIC, ANY position):** assert 0 orderable $0 variants fleet-wide — single AND multi-variant, any position, **including DRAFT** (a DRAFT $0 product is a latent activation landmine). Report era + vendor. (Covers c67/68/69/70/71.)
+2. **Abnormal-sample detector, BRANCHED by vendor pricing basis:**
+   - **Kravet-family** (Cole&Son, Kravet, Lee Jofa, Brunschwig, GP&J Baker, Colefax, Clarke&Clarke, Mulberry, Threads, Baker, Andrew Martin, Groundworks, Aerin, Barclay Butera, Thom Filicia): join barcode→`kravet_authoritative_pricing.new_map`; **assert unit is Roll/Panel (not yard)** via the product_map namespace before comparing; below-MAP = defect; at-MAP single-variant-"Sample" = mislabel-candidate.
+   - **Thibaut / DWTT / DWTF:** retail×0.45 basis; ALSO flag if on a discontinued SKU prefix (→ disco check, not reprice).
+   - **Osborne & Little:** RRP basis (TBD c75+).
+   - **Generic/unknown vendor:** flag for basis-decode, do NOT apply a default frame.
+3. **Disco-archive-completeness check:** for each known-discontinued SKU prefix (DWTT-71xx, DWTF, …), assert active count = 0; alert on stragglers (would have caught the 122). Pair with `zoffany-false-archive-recovered` guard (don't auto-archive; surface for per-SKU confirm).
+4. All read-only; alerts → CNCP; NEVER auto-mutates. Disposition (reprice/split/unpublish/archive) stays Steve-gated.
+
+## 3. Methodology codified (what made this arc reliable — reusable discipline)
+- **Producer-elimination > timestamp** (c70/71): prove "no current process writes X" by code-auditing the writers; `createdAt` is corroboration, not proof.
+- **Value-match is a TAUTOLOGY** (c72/73): a price equalling its source row only proves the import copied it — verify the UNIT/semantics independently (Kravet yard-vs-roll), and per-SKU before any money-touching gated fix (namespace evidence = prioritization, not per-item proof).
+- **Check lifecycle BEFORE proposing a fix** (c74): a "mislabel/mispricing" can dissolve into "discontinued-but-live" — opposite remediation (remove vs relabel).
+- **Join false-negative masquerades as "no data"** (c66/72): ask *why does the join fail* (wrong table/key) before concluding absence.
+- **Unpublish-not-archive-first** (c74) + **per-SKU confirm** (April/Zoffany caution) for any removal.
+- **Negative control / coverage gate** every cycle (reproduce a known positive, e.g. RL=111).
+
+_Cycle 75. DTD-D (2/1, dissent Claude/A). Consolidated the c66–c74 variant/price-integrity arc into one decision-ready map (145 $0-orderable across 2 causes; 365 at-MAP mislabels = Cole&Son 352 + Kravet 13, SPLIT-gated; Thibaut 122 disco stragglers, unpublish-gated; ~27% null-alt image-SEO; O&L 90 + Fentucci 21 deferred) + a basis-aware `dw-map-auditor` canary spec (zero-$0 STATUS-AGNOSTIC + abnormal-sample branched-by-basis + disco-completeness) + the codified methodology. All fixes Steve-gated; counts re-confirmed live. PJ excluded._

← d8119d3 cycle 74: officer CONFIRMED finding + FLAG action — unpublis  ·  back to Dw Yolo Loop  ·  cycle 75: officer CONFIRMED synthesis faithful (no drift, al 5a1c7d5 →