Products MVP — product catalog: list + read-only detail, bulk CSV import/export, kits #12
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Products MVP: a merchant's storefront holds a real product catalog — products
(including kits) browsable as a list with navigation to a read-only product
detail — populated by bulk CSV import/export for mass data and by single-product
authoring in the admin for one-off adds.
Problem / pain
The platform today has accounts, identity, and storefronts (SD-0001,
SLICE-1–3 shipped) — but a storefront is an empty shell with nothing to sell.
A merchant who signs up and creates a storefront hits a dead end immediately:
there is no way to represent their actual business in the system. Every
downstream capability of an ecomm platform — orders, checkout, merchandising,
inventory — is blocked on a catalog existing, so the build cannot progress past
"storefront exists" and the product cannot be demoed or validated as an ecomm
at all. Merchants coming from an existing platform feel it concretely: their
catalog lives in spreadsheets and platform exports of hundreds of products,
and entering that one product at a time would be a non-starter even if an
editing UI existed. The everyday case bites the other way too — once a catalog
exists, adding a single new product should not require authoring a bulk file.
Who feels it
Desired outcome / value
The platform holds the merchant's real catalog: product data — plain products
and kits — can be loaded and maintained in bulk, authored one at a time for
one-off adds, inspected in place, and round-tripped back out. A storefront stops
being an empty shell, merchants can migrate without manual re-entry, the
everyday single-product add is no longer a bulk-file chore, and every
product-dependent capability downstream is unblocked.
Acceptance — "done right"
extract it back out, losslessly.
one-off case.
and column selection), each with a read-only detail view.
products.
detail view stays read-only, and bulk CSV plus single-product create are the
only ways product data enters the catalog.
(Each child Feature carries the observable acceptance detail.)
Scope / non-goals
In: product list (sort/search/column selection); read-only product detail;
bulk CSV import (add + update); bulk CSV export; single-product authoring in the
admin; kits.
Out (MVP non-goals):
read-only by design; only adding products (bulk CSV or single-product create)
is in the MVP.
the merchant-side catalog; the buyer experience is its own future ask.
media management) except as plain fields the data carries.
Assumptions · constraints · dependencies
storefront within a merchant's account (multi-tenant).
not an accident — keep each increment small.
type/epic, this is decomposed into Features below; each Featureproduces its own Solution Design before an implementation plan (handbook
§4.3 gate).
Source / signal
Self-originated — operator ask, capture session
ecomm-0025(2026-06-10);re-sized Feature → Epic and decomposed at operator direction in capture
session
ecomm-0026(same day); single-product authoring added and theCSV-only boundary relaxed in capture session
ecomm-0031(2026-06-11).Priority (WSJF)
Value 8 · Time-criticality 5 · Opportunity-enablement 8 ÷ Size 5 ≈ 4.2 —
the catalog is the keystone every downstream ecomm capability waits on →
priority/P1.Decomposition (→ Features)
MVP (
priority/P1)detail view (
priority/P1)priority/P1)(
priority/P2)Products MVP — catalog list + read-only detail; CSV bulk import/export as the only data mechanismto Products MVP — product catalog: list + read-only detail, bulk CSV import/export, kitsClosing as part of the pivot from a generic multi-tenant Shopify-alternative storefront to the commitment-commerce + cross-maker verified referral network direction (see
ecomm-content/rfcs/network_strategy.md; session 0036).The Products MVP epic was storefront catalog UX (list/detail + bulk CSV import). The canonical catalog model survives as the network's index-ingestion layer, but the epic's storefront framing is superseded. Kits split out and recast (#15).
Nothing is lost — code stays in git history and the issue can be reopened if it resurfaces under the network architecture.