# Session 0035.0 — Transcript > App: ecomm > Start: 2026-06-12T02-07 (PST) > Type: planning-and-executing > Claude-Session: 2c8ed539-d087-409e-ad4d-effec7f8d6b3 > Status: **PLACEHOLDER — claimed at session start; finalized at session end.** > > This file reserves session ID 0035 for ecomm. The driver replaces this > body with the full transcript and renames the file to its final > SESSION-0035.0-TRANSCRIPT-2026-06-12T02-07--.md form at session end. ## Launch prompt `/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 _Autonomous-mode low-confidence calls the driver made and would have liked operator input on. Appended as the session runs; surfaced at finalize. Empty if none._