← back to Designer Wallcoverings
onboarding/sangetsu-lilycolor/RESUME-063026A.md
71 lines
# RESUME — code `063026A` (Sangetsu + Lilycolor onboarding)
<!-- dated-code convention (Steve 2026-06-30): MMDDYY + per-day letter. Was placeholder "abc123A". -->
**To resume after restart:** open a session in `~/Projects/Designer-Wallcoverings` and say
**"continue 063026A"**. This file is the handoff. Everything below already exists on disk.
---
## Where we are (all OFFLINE / nothing published)
**Both vendors fully staged + deduped. 12,806 net-new SKUs, 0 true duplicates.**
| Vendor | SKUs | Specs | Images |
|---|---|---|---|
| Lilycolor (trade: WILL/LIGHT/V-wall/MATERIALS/Import) | 2,543 | ✅ price ¥ + width + repeat + fire + functions | 2,634 pattern swatches on Henry + 6,825 manifest refs |
| Sangetsu (Goodrich) | 10,263 | width/type/weight/grasscloth where present | swatches (uploads/<SKU>.jpg) |
- **Dedup (done, read-only):** 0 same-vendor dups; 164 raw matches ALL cross-vendor SKU-string
collisions (Brewster/Fentucci/Koroseal/PhillipJeffries) = false positives. → all 12,806 net-new.
- **Images are PATTERN-FIRST** (swatch leads, room/`_model` last) per Steve's instruction.
## Persistent artifacts (survive restart)
- `staging/lilycolor-unified-staging.jsonl` (2,543 — specs+price+image refs)
- `staging/sangetsu-staging.jsonl` (622 patterns → 10,263 colorway SKUs)
- `staging/lilycolor-image-manifest.json` (6,825 image refs)
- `staging/dedup-report.json` + `staging/dedup-matches.tsv`
- **Henry:** `/Volumes/Henry/dw-lily-images/` (2,634 swatches, 1.1 GB) — needs Henry mounted.
- `pricebooks/*.pdf` (gitignored), all scrapers/parser/merge/fetcher/dedup committed on branch
`collection-layout-overhaul`.
## ⚠️ RESTART KILLS the viewer server (:9931). To bring it back:
```sh
cd ~/Projects/Designer-Wallcoverings/onboarding/sangetsu-lilycolor && bash run-viewer.sh
# then: open http://localhost:9931
```
## NEXT LEG (all GATED — need Steve's go each)
1. **JA→EN translation** of Lilycolor titles (read-only, stages English alongside Japanese). ← proposed next
2. **Net COST sourcing** — the ¥ price is Japan LIST price, NOT confirmed DW cost. This is the
**hard Activation Gate blocker**; no cost → SKUs stay HELD/draft. Only Steve/purchasing supplies this.
3. **DW-SKU prefix assignment** (proposed DWLC Lilycolor / DWSG Sangetsu) via VCC generateCompliantPrefix.
**HARD:** Sangetsu short-numeric SKUs (3367, 359000, G0167) MUST be stored WITH the Sangetsu prefix
(collision-prone — see dedup report).
4. **Shopify publish** via metered cadence only (cadence-import.js) — Steve-gated, never burst.
## ALSO ON RESTART — LOCAL design enrichment (Steve, 2026-06-30)
**Run the `interior-designer` skill LOCALLY to ID style, colors, and hex numbers** for the staged
swatches (the 2,634 Lily swatches on Henry + Sangetsu images) → enrich each SKU with style tags,
colorway names (use the interior-designer lexicon: Oatmeal/Greige/Celadon…), and dominant hex codes.
- **LOCAL only** (no paid Gemini) — ground-truth hex via Pillow + semantics via a local vision model.
We likely ALREADY have a good one: **qwen2.5vl** on Mac1/Mac2 ollama (see [[reference_mac1_ollama_vision_setup]]
+ the `enrich-local-hybrid` build). Reuse it.
- **Only if qwen2.5vl is inadequate:** check **https://llm-stats.com/** for the current best
open/local vision model and pull that instead — do NOT default to a paid API.
- Pairs with the existing `enrich-ai-tags` pipeline (swap its paid Gemini call for the local model).
Output stages alongside the existing specs; still gated for publish.
## ALSO ON RESTART — separate debug task (Steve, 2026-06-30)
**Why does terminal keep losing its prompt line? Debug.**
(Unrelated to onboarding. Investigate after restart — likely the iTerm2/Terminal tab-color OSC
escape writes from `~/.claude/skills/color/scripts/tab-state.sh` and/or a stale flasher subshell
re-painting / corrupting the prompt line; see global CLAUDE.md "Tab stuck on wrong color" notes.
Check: live `tab-flash.pid` flashers, `pkill -f tab-state.sh`, shell rc PROMPT/PS1 redraw, and
whether a background OSC writer is targeting the wrong tty.)
## Standing constraints (unchanged)
Goodrich = Sangetsu (never a separate vendor). Brewster/York/Goodrich never front-facing.
George controls all email. No writes to dw_unified/Shopify without Steve's explicit go.
Memory: `[[reference_sangetsu_lilycolor_onboarding]]`.