← back to Dw Add Sellable Variant Tk10902
tk10875-codex/model-comparison.md
46 lines
# TK-10875 model comparison
`model=codex` · local mirror timestamp `2026-08-30 08:41:39` · zero production writes
## Independent result
The current ACTIVE residual is **25,214 unbuyable products** under the ticket's mirror
definition (`has_product_variant IS NOT TRUE`). The structural buckets reconcile exactly:
| Class | Products | Codex treatment |
|---|---:|---|
| Clean sample-only | 24,040 | Eligible for classification, not automatically eligible for pricing |
| One-variant irregular | 344 | Data-repair class; do not use add-variant automation |
| Multi-variant/no-sellable | 679 | Structural diagnosis required |
| Null unbuyable flag metadata | 151 | Hold for metadata verification |
Only **9** residual rows have product-level cost; **25,205** do not. This is consistent
with the earlier 717 cost-bearing quick-win having largely been repaired before this run.
## Comparison with Claude/yoloforever notes
| Claim in prior notes | Codex finding | Comparison |
|---|---|---|
| 25,858 ACTIVE unbuyable on Aug 26 | 25,214 current residual | Directionally consistent; 644 lower after intervening repairs/sync |
| 717 had product cost | 9 current residual have product cost | Consistent with 583 direct repairs plus later irregular repairs; this is a post-action residual, not a contradiction |
| WG + Coordonné + Malibu implied ~1,906 staging recoverable, pending joins | 361 exact positive-value joins: WG 224, Coordonné 136, Malibu 1 | Prior estimate materially overstated exact current coverage |
| Coordonné `price_retail` counted as staging cost | It is retail evidence only, not verified cost | Codex rejects automatic cost-based pricing until semantics are verified |
| WG is a quick add-variant class | 224 exact trade-price joins, but 0 are clean $4.25 sample-only pilots | WG is a repair/repricing class, not safe additive recovery under this pilot |
| Malibu staging should cover hundreds | 1 exact positive-`net_cost` join among the 339 mirror residuals | Join-key/data freshness gap must be resolved before any rollout |
## Safe dry-run pilot verdict
- **Malibu:** 1 clean unique exact join is cost-input eligible in dry-run only.
- **Coordonné:** 136 clean unique exact joins are held because the only value is retail,
not cost.
- **Wolf Gordon:** 224 unique exact trade-price joins exist, but none pass the clean
sample-only add-variant boundary; treat as data repair/repricing.
- No fuzzy join, activation, Shopify request, or catalog write was performed.
## Decision evidence
DTD chose **B, 5/5 valid votes** (Muse unavailable): classify `price_retail` as retail
evidence and require verified cost semantics. The mandatory post-decision Codex debate
returned **FINAL: KEEP**. The controlling risk is semantic promotion: applying a
cost-based markup to an already-retail value can produce plausible-looking but wrong prices.