Sitemap / IA: demo-test-a-specialist

Visual tree

Home is rendered here as the tree's root so the page has something to hang collections off of. It is a UI convenience only -- the underlying sitemap.json artifact never contains a "home" node, per skills/shopify-ia/SKILL.md ("Home is implicit, not its own sitemap node"). The node count below therefore excludes Home, matching the convention already used by projects/mc-batch-13-general (7 collections + 13 products + 2 pages = 22 nodes).

Home (implicit root) ├── Collection: baby-feeding │ ├── Product: silicone-baby-feeding-spoon-set │ ├── Product: bpa-free-baby-bottle-240ml │ ├── Product: silicone-baby-bib-food-catcher │ ├── Product: silicone-baby-teether-ring ├── Collection: baby-sleep-comfort │ ├── Product: organic-cotton-swaddle-blanket │ ├── Product: baby-sleep-sound-machine ├── Page: about ├── Page: support

10 sitemap nodes (excludes Home)

Rationale, URL rules, multi-market architecture, internal linking

# Site Architecture Rationale — demo-test-a-specialist (TEST/DEMO DATA)

## Proposed structure

```
Home (implicit)
├── Collection: baby-feeding (4 products: spoon set, bottle, bib, teether)
├── Collection: baby-sleep-comfort (2 products: swaddle, sound machine)
├── Page: about
└── Page: support
```

## Decision-by-decision

| Decision | Classification | Rationale |
|---|---|---|
| Two collections, not one, not six | **OUR RECOMMENDED STANDARD** | The six products' `identity.category` values genuinely split into two groups (Feeding: 4, Sleep & Comfort: 2) — not one artificially unified "Baby Products" collection, and not six separate collections that would fragment a naturally coherent catalog into pieces too small to be useful |
| Collection names taken directly from `product.identity.category`, not invented separately | **OUR RECOMMENDED STANDARD** | Avoids a second, competing naming decision for the same grouping already established in Product Truth |
| Fixed URL prefixes (`/collections/`, `/products/`, `/pages/`) | **SHOPIFY NATIVE CAPABILITY** | Non-negotiable per `shopify_platform_constraints_check.py`'s constants table |
| One "About" page | **OBSERVED ANKER PATTERN**, generalized as **OUR RECOMMENDED STANDARD** | A single coherent brand story serves a single-category catalog well — there is one story to tell |
| No subcategory nesting under either collection | **OUR RECOMMENDED STANDARD**, per the Architecture SOP's shallow-hierarchy principle | With 4 and 2 products respectively, subcategories would fragment link equity for no navigational benefit — 2 levels of nesting is a ceiling, not a target to always reach |

## What this does NOT claim

This structure is small because the catalog is small (6 products) and
genuinely coherent (one life stage, two related needs) — not because a
larger, less coherent catalog would necessarily look the same. Compare
against `projects/demo-test-b-general/site_architecture/ia.md` for the
same engine's reasoning against a deliberately incoherent catalog.

Raw sitemap.json

{
  "artifact_type": "site_architecture",
  "sitemap": {
    "nodes": [
      {
        "handle": "baby-feeding",
        "type": "collection"
      },
      {
        "handle": "silicone-baby-feeding-spoon-set",
        "parent": "baby-feeding",
        "type": "product"
      },
      {
        "handle": "bpa-free-baby-bottle-240ml",
        "parent": "baby-feeding",
        "type": "product"
      },
      {
        "handle": "silicone-baby-bib-food-catcher",
        "parent": "baby-feeding",
        "type": "product"
      },
      {
        "handle": "silicone-baby-teether-ring",
        "parent": "baby-feeding",
        "type": "product"
      },
      {
        "handle": "baby-sleep-comfort",
        "type": "collection"
      },
      {
        "handle": "organic-cotton-swaddle-blanket",
        "parent": "baby-sleep-comfort",
        "type": "product"
      },
      {
        "handle": "baby-sleep-sound-machine",
        "parent": "baby-sleep-comfort",
        "type": "product"
      },
      {
        "handle": "about",
        "type": "page"
      },
      {
        "handle": "support",
        "type": "page"
      }
    ]
  },
  "status": "DRAFT"
}