← back to Dw Yolo Loop
scripts/collection-orphan-sweep/FINDING.md
43 lines
# Collection-membership integrity = HEALTHY (0 true orphans / 100% coverage fleet-wide) — a clean NEGATIVE finding that rules out the dark-by-orphaning class — cycle 86
**DTD verdict B (2/1 — Claude + Codex B; Qwen dissent A/image-integrity).** READ-ONLY (Admin GraphQL full active scan + a negative control + a publication probe; no mutation), **$0**. First fresh non-price surface after the ~18-cycle price/variant thread closed. Tests whether live products are orphaned from every browse/merchandising path (= invisible despite being live) — a different dark-inventory failure mode than the April archive.
## 🟢 Result: ZERO true orphans — 100% of active products are in ≥1 collection, and the catalog is richly multi-collection
Full active scan (71,726, complete=true, PJ excluded):
| Collection count | Products | Share |
|---|---|---|
| **0 (ORPHAN)** | **0** | **0.0%** |
| 1 | 12 | 0.0% |
| 2 | 35 | 0.0% |
| 3–5 | 1,751 | 2.4% |
| 6–10 | 6,665 | 9.3% |
| **11+ (truncated)** | **63,263** | **88.2%** |
- **0 products are orphaned from collections.** Only 47 products (0.07%) sit in ≤2 collections; 88.2% are in 11+.
## 🔬 The skeptical decode — negative control makes the "0 orphans" load-bearing (not a vacuous pass)
- **"0 orphans" is only meaningful if the BULK is collection-rich** (so a zero-membership product would be a true anomaly, not the norm). The distribution proves it: in-a-collection = 71,726 (100.0%), heavily multi-collection (88% in 11+). Browse is collection-driven AND filter-driven (Boost), and membership is dense → a zero-collection product WOULD stand out. There are none. So the healthy result is real, not an artifact of "browse is filter-only so collections don't matter."
- **Caveat 1 closed — the 12 single-collection products are NOT browse-dark.** A re-scan found 12 active products whose ONLY collection is `best-seller-internal-use` (8 of them duplicate "Torre Wallcovering Prints" + Sneak Preview/Malibu PS/2 Designtex Rocket). The worry: if their one collection were unpublished/internal, they'd be effectively orphaned from customer browse.
- **Caveat 2 closed (the publication probe that defuses caveat 1):** `best-seller-internal-use` ("Best Seller (internal use)", 127,560 products) is **PUBLISHED to the Online Store + all 13 sales channels** (Online Store, Buy Button, Google&YouTube, Facebook&Instagram, Houzz, POS, Fabricut, Pinterest, Rakuten, Shop, Inbox, TikTok, DWAutoPostBlog all = true). So despite the "(internal use)" name it is a fully-published, customer-reachable de-facto catch-all → the 12 single-membership products ARE reachable. Not browse-dark.
## 📋 Disposition: clean bill on this surface; 2 minor flags (NOT defects)
1. **Collection-membership integrity is HEALTHY fleet-wide.** This is a valuable NEGATIVE result: it definitively rules out "dark inventory via collection-orphaning" at fleet scale. The April-archive dark-inventory problem (archived-dark) is NOT compounded by an orphaning problem — live products are all reachable by browse. No fix needed.
2. **Flag A — misnamed 127k catch-all published to all channels (P3, route to merchandising — officer upgraded from P4):** the de-facto catch-all (127,560 products, 90% of active) is named "Best Seller (internal use)" yet is published to all 13 channels. Two non-cosmetic edges (officer): (a) any channel that ingests collection NAME as a merchandising/title signal (Google/Meta/Pinterest feeds) is now mislabeling 127k products as "Best Seller" = a soft SEO/feed-integrity issue, not pure cosmetics; (b) the 0-orphan "healthy" result partly RESTS on this junk-drawer collection — it doesn't invalidate the finding, but the catch-all is doing the heavy lifting. Disposition: rename + decide whether it should be channel-published at all → hand to vp-dw-marketing for a real merchandising call (Steve-gated).
3. **Minor flag B — a dedup signal (P3, hand-off to fleet-dedup, NOT this surface):** 8 ACTIVE "Torre Wallcovering Prints" [Designer Wallcoverings] share the same title and sit in only the internal collection — looks like a duplicate cluster (the `fleet-dedup` lane, maker-name-SKU caveat applies). Logged for the dedup pass, out of scope for collection-integrity.
## What this does NOT cover (named residuals — honest scope, not "closed")
- **Image integrity (the Qwen-dissent surface)** — missing featured image / broken 404 CDN URLs / single-image PDPs — remains UNSWEPT (deferred this cycle because the 404 check needs a per-URL HTTP fan-out at 71k scale). Strong candidate for a future cycle.
- **Inventory-state (inventory=2026 both variants)** — the standing new-products convention — still un-audited fleet-wide.
- **NAV-LINK reachability = the next collection-integrity cycle (officer: this is where the real dark-inventory risk now lives).** This sweep counted collection MEMBERSHIP, not whether each membership is in a customer-NAVIGABLE menu/rail/facet (a collection can be published-and-URL-reachable yet linked nowhere a shopper traverses). Note membership-richness ≠ merchandising health: the 88%-in-11+ figure is partly inflated by the same 127k catch-all, so "collection-rich" overstates curation quality. The honest discoverability question — is each product reachable via a path a shopper actually clicks — is UNSWEPT and formally queued as the next collection cycle.
_Cycle 86. DTD-picked B (2/1; Qwen dissent A). Swept collection-membership integrity: full active scan (71,726) → 0 true orphans, 100% in ≥1 collection, 88.2% in 11+. Negative control (bulk is collection-rich, so 0 orphans is a real anomaly-free result, not a filter-driven artifact) + caveat probes both closed: the 12 single-collection products are in `best-seller-internal-use` which is PUBLISHED to all 13 channels (reachable, not browse-dark). Clean bill — rules out the dark-by-orphaning class fleet-wide. 2 non-defect flags: the 127k catch-all misnamed "(internal use)" yet published to all 13 channels (P3 — officer-upgraded — mislabels 127k as "Best Seller" in feeds + the 0-orphan result partly rests on it; route to merchandising); 8 duplicate "Torre Wallcovering Prints" → fleet-dedup lane (P3). Named residuals: image integrity (Qwen's surface, deferred — 404 fan-out), inventory=2026, nav-link reachability (queued as next collection cycle). PJ excluded. Read-only, $0, nothing gated (no fix needed)._
---
## 🏛️ OFFICER SIGN-OFF — vp-dw-marketing: CONFIRMED (2 non-blocking refinements, folded in)
- **Q1 — "0 orphans = healthy" SOUND but NARROW; membership ≠ discoverable.** Counting membership correctly rules out the orphan failure mode, and the negative control is legitimate. But "in a published collection" is not "shopper-discoverable" (a collection can be published + URL-reachable yet in no menu/rail/facet). The cycle was honest — it named nav-link as an unswept residual — so the conclusion isn't overstated; but nav-link is the bigger discoverability question and deserves its own cycle (queued).
- **Q2 — catch-all = reachable is TECHNICALLY correct, merchandising-WEAK.** The 12 single-membership products aren't browse-dark in the orphan sense (correct disposition), but a 127,560-product collection carries zero curation signal ("everything" = "nothing" for merchandising). Correctly fenced as a flag, not a fig leaf in the conclusion.
- **Q3 — flag scoping right, ONE upgrade (folded in):** Flag B (8 Torre dups → fleet-dedup) correct at P3. **Flag A re-ranked P4→P3** — the misnamed 127k catch-all syndicating to Google/Meta as "Best Seller" mislabels 127k products (soft SEO/feed-integrity, not cosmetic), AND the 0-orphan result partly rests on it. Routed to vp-dw-marketing for a real merchandising disposition (rename + channel-publish decision), Steve-gated.
- **Q4 — nothing materially overstated.** Disciplined: called it a "valuable negative," fenced all 3 residuals, didn't claim untested discoverability. One soften (folded in): "collection-rich" slightly overstates curation quality since 88%-in-11+ is partly the catch-all.
- **Officer asks (both folded in):** bump Flag A P4→P3 + route to merchandising; formally queue NAV-LINK reachability as the next collection-integrity cycle (where the real dark-inventory risk now lives).
CONFIRMED. The orphan-integrity finding stands (clean bill, 0 orphans, negative-control-validated). No prod action; the 2 flags + nav-link next-cycle are Steve-gated / queued. Read-only, $0.