# Step 2 — Structure: the object pass

Derive the object model and surface map using the UX-pattern decision layer (`references/ux-patterns/`). Load **one pass file at a time**, in this order, consulting only the passes the brief makes material:

1. `object-model` — the domain objects and their relationships
2. `attributes-lifecycle` — attributes, lifecycle states, history requirements
3. `verbs` — actions per object × state × role
4. `viewer-context` — how rendering changes by viewer
5. `modes` — modal contexts the product runs in
6. `promotion-demotion` — surface prominence by frequency × criticality
7. `page-archetype` — each surface's archetype from the pinned roster: **browse, queue, grid, record-detail, dashboard, creation-flow, settings**. View-types (table, board, cards, calendar) are projections of an archetype, never archetypes.
8. `container-choice` — container by workflow (duration, interruption, comparison need), never by size
9. `creation-paths` — form, import, conversion, clone, recurrence
10. `table-mechanics` — where tables project a surface
11. `state-matrix` — loading, the three empties (first-use, no-results, cleared), degraded, stale — per surface
12. `standard-pages` / `ai-layer` / `dashboards` / `settings` — when the brief has them

Each pass file carries its rule as prose plus its machine-readable decision table; **follow the table's answer**. Disagreement is legitimate craft only when recorded — one `record` line naming the pass, the table's answer, yours, and why. An unrecorded divergence is the violation.

When a pass fires a clarification code (an input the table needs that the brief doesn't give), resolve it: infer-and-mark when the answer doesn't change the design, ask when it does.

## Output: the structure document

A single document — entities, surfaces, archetype per surface, projections, container choices, creation paths, and the state matrix per surface. It is an **input** to composition, never a jail: no file it implies is ever marked do-not-edit, and step 4 may revise it with a one-line record.
