← back to Hollywood Mfr Trim

GROUP-B-REPORT.md

56 lines

# HWC Group-B brand-as-vendor bug — investigation report
_Generated 2026-08-18 · read-only · no writes performed · ties TK-10630 / TK-10633 · guarded by dw-hollywood-sku-canary_

## What Group B is
113 **LIVE (ACTIVE)** products, vendor "Hollywood Wallcoverings", `real_vendor = Momentum` (correctly hidden in the `private_label` namespace — no customer-facing leak). Each has:
- mirror-column `dw_sku` = **NULL** (no DW canonical assigned)
- a fabricated `DWHD-######` code stamped into `custom.dw_sku` / `dwc.dw_sku` (the TK-10630 brand-as-vendor bug)
- so the fabricated code is currently the product's *only* DW identity.

The older 221 HWC-610xx products (Group A) are all ARCHIVED and DO have a correct `HWC-` code in the column — trivially fixable, separate track.

## Series continuation point
Max existing `HWC-` number = **HWC-61244** → a mint would continue at **HWC-61245**.

## The 113 split into three risk buckets

| Bucket | Count | Meaning | Remediation readiness |
|---|---|---|---|
| **ok** — clean real mfr code | 75 | Has a unique, usable Momentum mfr_sku (e.g. `ASL-127164`, `T2-NN-05`, `AZ53862`). | Ready — mint HWC-61245+, keep the real code in `mfr_sku`. |
| **MFR_COLLIDES** | 14 | Real mfr_sku already exists on ANOTHER product — can't be trusted as a unique key until deduped. | Needs dedup/verify FIRST. |
| **NO_MFR** | 24 | No manufacturer code at all — only the fabricated DWHD code. All "Goat Rock" (12) + "Hearst Castle" (12), created Aug 2026, DWHD-508043..508066. | Identity unrecoverable from our data — needs Momentum source. |

- Fabricated-code collisions across products: **0** (the DWHD codes are sequential/unique).

## The 14 MFR_COLLIDES (verify before trusting mfr_sku)
Boulder Creek-Carnelian `T2-MS-25`, China Camp-Jade Garden `A163-326`, Corona Del-Vapor `A217-040`, Del Mar-Natural `A203-552`, Felton-Onyx `T2-MR-16`, Fernald Point-Mushroom `T2-FT-15`, Gorda-Silverworks `A183-500`, Green Drakes-Atmospheric `T2-SL-15`, Laguna Beach-Ecru `HAR-04`, Moonstone Beach-Zurich Snow `TR-CL-07`, Pfeiffer Beach-Jet Stream `T2-LS-04`, Pfeiffer Big-Plum `T2-GD-03`, Sand City-Charcoal `A175-579`, Zipper Zing-Toasted Almond `T2-ZN-12`.

## The 24 NO_MFR (no recoverable manufacturer identity)
Goat Rock: Alpine, Anchor, Cove, Dover, Glacier, Gravel, Jadeite, Khaki, Sky, Smoke, Soy, Zinc (DWHD-508055..508066).
Hearst Castle: Antique, Copper, Halo, Icicle, Manta, Neptune, Pewter, Rosegold, Sable, Sisal, Sterling, Vapor (DWHD-508043..508054).

## Verification (codex-vetted, read-only)
- **No hidden HWC code to recover:** 0 of the 113 carry an HWC code in their handle or variant SKU → minting a new canonical IS required (nothing to copy from). Only **1** product in the entire catalog holds an HWC code in a dw_sku metafield, so minting HWC-61245+ into metafields won't collide.
- **The 14 "collides" are NOT all safe to treat as dups:** 6 collide with another *Hollywood* product (likely a legit sibling/colorway) and **9 collide with a DIFFERENT vendor's product** — the 9 cross-vendor ones must be individually verified before their mfr_sku can be trusted as a unique key.

## Recommendation (NOT executed — awaiting Steve)
Remediate in the order of readiness, each a gated Shopify metafield write:
1. **Group A (221 archived):** overwrite `custom/dwc/global.dw_sku` metafields with the existing correct column `HWC-` code. Lowest risk, no minting.
2. **Group B "ok" (75 live):** mint sequential `HWC-61245+`, write into the dw_sku metafields, retain the real Momentum code in `mfr_sku`.
3. **Group B MFR_COLLIDES (14):** resolve the mfr_sku duplication first, then mint.
4. **Group B NO_MFR (24):** mint HWC canonicals; flag that the true manufacturer code must be recovered from Momentum (may stay unknown).

## Fan-out resolution of the deferred buckets (2026-08-18, parallel subagents, read-only)

### The 14 collides — classified
- **SAFE-TO-MINT (12):** 5 BENIGN (collide only with own Hollywood sample/re-list: A163-326, A175-579, A183-500, A203-552, A217-040) + 7 SAME-LINE (collide with a Phillipe-Romano row that is a relabeled Momentum item, supplier='mom': T2-FT-15, T2-GD-03, T2-LS-04, T2-MR-16, T2-MS-25, T2-SL-15, T2-ZN-12). The mint puts a NEW unique HWC canonical on the Hollywood product's own dw_sku; the colliding rows keep their own dw_sku, so no identity contention.
- **HOLD/verify (2):** HAR-04 (colliding PR row supplier='inn'/Innovations — genuinely different source) and TR-CL-07 (PR row supplier='Phillipe Romano Wide Textures', ambiguous). Verify the PR row's true origin before minting.

### The 24 no-mfr — PROVENANCE RECOVERED (was "unverifiable")
- **Goat Rock = Momentum "Seto"** (pattern_number 09199551), 12/12 colorways matched → per-color momentum_sku recovered (Alpine 09199562, Anchor 09199683, Cove 09199661, Dover 09199573, Glacier 09199639, Gravel 09199595, Jadeite 09199672, Khaki 09199584, Sky 09199650, Smoke 09199628, Soy 09199606, Zinc 09199617).
- **Hearst Castle = Momentum "Layout"** (pattern_number 09199298), 12/12 matched → (Antique 09199331, Copper 09199386, Halo 09199364, Icicle 09199309, Manta 09199430, Neptune 09199408, Pewter 09199419, Rosegold 09199342, Sable 09199397, Sisal 09199353, Sterling 09199375, Vapor 09199320).
- Method: private-label rule preserves colorway names verbatim; matched DW color → momentum_colorways.color_name within one pattern. #2 candidate matched only 2/12 → decisive.

### Net remediable set
75 clean + 12 safe collides + 24 recovered = **111 mintable** (was 75); only **2 held** (HAR-04, TR-CL-07). All writes remain gated. Momentum name stays internal-only (never customer-facing).