Chief Journal - 2026-08-13 (Catalog Ownership Before Catalog Code)
Executive Summary
August 13 moved noGap MALL’s catalog design from a broad commerce baseline to a precise ownership and presentation contract. Products and merchant-wide categories now belong unambiguously to the merchant, while store categories and listing state remain independent store concerns.
That separation matters because a commerce catalog is not merely a tree of products. It must support products that are physical, digital, service-based, hybrid, or bundled without allowing storefront presentation choices to rewrite the merchant’s canonical catalog.
One Catalog, Several Fulfillment Shapes
MALL v1 now explicitly supports composable physical, digital, and service fulfillment properties. A product may combine these shapes, and bundles are versioned so that later catalog changes do not erase the commercial meaning of an earlier composition.
Products live in a merchant-owned catalog. Merchant-wide categories organize that catalog, while an uncategorized draft pool allows incomplete products to exist without forcing premature classification.
Store Presentation Is Not Catalog Ownership
Store categories are independent presentation structures. Adding or removing a store listing does not alter category membership, and removing a product from sale does not have to destroy unfinished merchandising work. An unlisted product may retain draft store arrangements, and one product may appear in several categories within the same store.
This keeps three different facts separate: what the merchant owns, how a store presents it, and whether the store currently offers it for sale.
Bounded Trees, Predictable Browsing
Merchant and store category trees are limited to three levels. Products may be assigned at any level. Browsing a parent category aggregates products from descendant categories without creating hidden membership records, and repeated placement is deduplicated in the browsing result.
The resulting contract is expressive enough for real merchandising while remaining bounded enough to reason about, index, test, and administer.
Status and Next Decision
The model is recorded bilingually in SPEC-024 at repository checkpoint 792bdae. NG-020 remains IN_BUILD; this is a design milestone, not a runtime-completion claim.
The next MALL discovery area is price lists, currency, tax, and duties. Full backend implementation remains deferred until the planned Domain Module designs are complete and reconciled.
Chief Journal - 2026-08-13 (Catalog Ownership Before Catalog Code)
https://laowang.helianthemum-tech.com/2026/08/13/Chief-Journal-2026-08-13/
install_url to use ShareThis. Please set it in _config.yml.