{"slug":"dw-color-image-audit","total":11,"limit":100,"offset":0,"since":null,"commits":[{"hash":"d48653e","date":"2026-07-03 08:07:57 -0700","author":"Steve","subject":"chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)","body":""},{"hash":"2b896ad","date":"2026-06-21 18:04:16 -0700","author":"Steve","subject":"resolved: $0-price emergency (33 demoted DRAFT, verified live)","body":""},{"hash":"7b31afd","date":"2026-06-21 17:10:59 -0700","author":"SteveStudio2","subject":"PR raw-930 close-out: Gemini-vision spot-check on 40 strongest chromatic candidates = 0 confirmed wrong-image defects (1 low-conf WATCH row Oswego-Plum, DTD B 2/3); $0.0240 actual","body":""},{"hash":"30306bf","date":"2026-06-21 16:57:21 -0700","author":"Steve","subject":"color-image-audit: refine no-dash mapper — demote pattern/place/material homonyms (grass/ocean/marine/leaf/apple/forest)","body":"Second mapper-completeness gap the dash-fix (307493e) didn't cover. On NO-DASH\ntitles the whole title is scanned and a botanical/place/motif homonym in the\nlexicon (grass->green [grasscloth], ocean->teal, marine->blue ['Cote Marine'],\nleaf->green, apple->chartreuse ['Big Apple'], forest->green ['Fir/Virgin Forest'])\nwas mis-read as the colorway, inflating raw-HIGH noise.\n\nFix (DTD verdict A, 3/3 Claude+Codex+Qwen): add AMBIGUOUS_COLORWORDS set +\ndemote_ambiguous flag in _familyFromPhrase / _family_from_phrase. Demotion is\ngated to the NO-DASH / whole-title path ONLY — the clean after-dash colorway\nsegment is untouched, so 'X - Ocean' still resolves teal and Hawksbill-Forest /\nHawksbill-Ocean stay genuine HIGHs. When a real colorway co-occurs it survives\nand wins; when the only signal is a homonym, fall through to UNKNOWN instead of\nasserting a wrong family. Mirrored identically in JS + both Python mappers.\n\nRead-only rerun on the existing flagged set (cached hexes, no image re-download,\n$0, no network): vs the post-dash-fix baseline HIGH 629->602 (27 false-positive\nHIGHs cleared), 26 homonym-only no-dash titles routed HIGH->UNKNOWN, ZERO new\nHIGH regressions (new_high held at 21, all dash-fix unmaskings). JS<->Python\nparity verified across all 1831 titles (0 real mismatches). Self-test 13/13 PASS.\nNo DB/Shopify writes; catalog disposition unchanged (~925 set stays HOLD)."},{"hash":"307493e","date":"2026-06-21 14:50:13 -0700","author":"Steve","subject":"color-image-audit: fix family-mapper trailing-material hijack (leather->brown) + multi-word colorways","body":"Root cause: nameToFamily/name_family kept the LAST mappable token in a DW title's\ncolor segment. DW titles read 'Pattern - Colorway MaterialType' so the trailing\n'Vegan Leather' (leather->brown in lexicon) overrode the true colorway. 27 Tier-1\nHIGH rows mis-bucketed brown.\n\nFix (DTD verdict A, 3/3 Claude+Codex+Qwen): dash-aware colorway parse (segment\nafter last ' - '), material-stopword skip gated on a real color surviving,\nmulti-word colorway map (sea green->teal), fallback to whole segment when the\nafter-dash part has no color (preserves pattern-half colorways). Same fix mirrored\nin JS (color-classify.js) and both Python mappers (reextract.py/reextract2.py).\nAdded reextract2 __main__ guard so the read-only rerun harness imports the real code.\n\nRe-run on existing flagged set (cached hexes, no image re-download, $0): 88\ndeclaredFamily corrected, 17 false-positive HIGHs cleared (incl. Baroque-Orange,\nPinpoint-Sea Green, Crushed Coral-Amber), 21 previously-MASKED real mismatches\nunmasked (Sapphire/Azure/Lagoon/Peacock... on off-hue images). Real alarm preserved\n(Hawksbill-Walnut brown vs orange still HIGH). No DB/Shopify writes."},{"hash":"496eff3","date":"2026-06-21 13:50:12 -0700","author":"Steve","subject":"prep: verified putty flat-shots for LIN-980023/980022 wrong-image remap (GROUP 1)","body":""},{"hash":"2fb0f8b","date":"2026-06-20 13:41:30 -0700","author":"SteveStudio2","subject":"non-PR color-image: v2 full re-extract artifacts + DTD-D1 push-target selector; ignore pycache/chunks/large jsonl","body":""},{"hash":"db0ed7e","date":"2026-06-20 11:47:29 -0700","author":"Steve","subject":"track vision-gate result artifacts (summary + dispositions) for Steve review","body":""},{"hash":"07d2c04","date":"2026-06-20 11:47:07 -0700","author":"Steve","subject":"vision-gate non-PR Tier-1 color-image set: 105->29 survivors->8 recrawl/18 hold/3 drop (DTD Q1=b)","body":""},{"hash":"8c15981","date":"2026-06-20 10:32:05 -0700","author":"SteveStudio2","subject":"v2 background-suppressed full-catalog re-extract + staging loader + analysis SQL","body":""},{"hash":"c8bbfd3","date":"2026-06-20 09:54:55 -0700","author":"steve@designerwallcoverings.com","subject":"DW color-image integrity audit: classifier, parallel re-extraction, confirmed tiered findings","body":""}]}