diff --git a/ecomm/0035/SESSION-0035.0-TRANSCRIPT-2026-06-12T02-07--INPROGRESS.md b/ecomm/0035/SESSION-0035.0-TRANSCRIPT-2026-06-12T02-07--INPROGRESS.md index 0239966..972885a 100644 --- a/ecomm/0035/SESSION-0035.0-TRANSCRIPT-2026-06-12T02-07--INPROGRESS.md +++ b/ecomm/0035/SESSION-0035.0-TRANSCRIPT-2026-06-12T02-07--INPROGRESS.md @@ -12,7 +12,34 @@ ## Launch prompt -_(launch prompt not captured at claim time)_ +`/goal SLICE-8` — Shopify dialect (closes Products story #13), per SD-0002 §7.2. + +## Plan + +> Anchor: design `wiggleverse-ecomm-content/specs/SD-0002-products-bulk-csv-import-export.md` (R2a, ELIGIBLE) — SLICE-8 §7.2; closes story #13. +> Posture: autonomous (yolo) + +**SLICE-8 — Shopify dialect + public format docs → completes PUC-6, PUC-11** + +Ships (per SD-0002 §6.5.1 / §7.2): +1. **Header-set dialect detection** — `detect_dialect()` recognizes Shopify's + exact header set → `"shopify"`, else `"canonical"`; honest fail to canonical + (never misparse) per §7.4 risk row. +2. **Shopify→canonical mapping** at the codec boundary (INV-17): rename Shopify + headers to canonical before the known/unknown split; Shopify columns with no + canonical home are reported as **not-imported** (the `unknown_columns` + warning). Exhaustive mapping pinned as a fixture (§6.5.1). +3. **Preview UI** — "Shopify product CSV — mapped" banner + not-imported + columns warning band on ImportPreview (PUC-6). +4. **DOC-2** — CSV column reference (every column; dialect notes), app-served, + source in framework repo. +5. **DOC-3** — finalize `sample.csv` (variants + images worked examples) + + link from import screen (PUC-11). +6. **E2E** `e2e_import_shopify_dialect` — unmodified Shopify fixture → mapped + banner + not-imported warnings → confirm → run completes (DoD). +7. Unit tests (detection, mapping table, INV-10 partial-never-deletes over + Shopify); §12 traceability audit; DOC-4 dialect-adapter notes; version bump; + PPE deploy + E2E green; close #13. ## Deferred decisions