08056072026-07-27TK-00034 reconcile: revert the 40 quote-only activations → DRAFT (snapshot-first) per Steve 'width-first' decision after TK-00058 conflict; reset go-live ledger; restore 504 DRAFT/0 ACTIVE. Width not autonomously reachable (tokiwausa Wix, no specs/portal); reference 36in from fentucci_catalog. Blocked on Steve width-source.
c5661162026-07-22fix 422: custom.material metafield type matches store definition (multi_line); importer records create before metafields + non-fatal metafield errors
ab35a392026-07-22FIX 1 residue: sync specs.pattern jsonb to renamed towns (235 rows had old town in tokiwa_catalog specs; viewer :9981 was serving it) + retown script now propagates to specs on every run
f3f925a2026-07-22FIX 2: quote-only hardening — custom.price_mode=quote_only + custom.needs_width=true metafields on all 504 drafts (gates independent of the quotes tag), Per Yard variant inventory_policy=deny, create-drafts.py hard draft-only assert (can never set ACTIVE); drafts regenerated with re-towned patterns
15039eb2026-07-22FIX 1: re-town 27 pattern-name collisions vs live Fentucci family (748 titles) — deterministic retown-collisions.py, gate 0 collisions / 0 dupes; propagated to rename-map, products.json, pattern-copy, tokiwa_catalog; normalize.js now excludes live-colliding towns
ba655372026-07-22add fentucci-scraper-manager skill (in-repo copy; live at ~/.claude/skills/) — canonical DWFN scheme, refresh runbook, scrape gotchas, hard gates
934b2822026-07-22internal line viewer :9981 (fentucci-viewer pm2) — full internal-line-viewer spec: left rail collapsed facet tables w/ counts+type-ahead, card-field toggles to image-only wall, sort+density+text-scale persisted, unauth /healthz before basic-auth, created date+time chip, local-image serving, Memo/Stock/Price vendor-requests; E2E green chromium+webkit(creds-URL)
73c34342026-07-22gated importer scaffold (create-drafts.py, resumable, day-capped, leak tripwire) — NOT executed; approval memo filed to pending-approval