Nine Stages, Three Cadences
Every artefact the player will ever touch has passed through nine stages, in order, at three cadences: three stages run once per world, five run per artefact and one runs per inspection.
Stages 1–3 run once, at world creation: they produce the chronology, the cultures, the geology and a simulated century of scholarship for the player to inherit. Stages 4–8 run every time the world needs a new artefact, building a physical object, dressing it and scoring it against the tag vocabulary. Only stage 9 repeats per inspection, because the player's beliefs and available registers shift between viewings; the same object can read differently on Tuesday than it did on Monday.
Structure first, meaning last
The grammar in stage 4 produces geometry with no idea what it's for; classification in stage 8 reads that geometry back and scores it against functional tags; the description in stage 9 hedges even those scores through registers and the player's interpretive lens. Nothing upstream ever branches on "make a sword".
Visibility levels
Every property the pipeline produces sits at one of four visibility levels, and the level is part of the type system's contract.
| Level | Meaning | Examples |
|---|---|---|
| Observable | Directly perceptible on inspection | Component structure, decoration layers, material identity |
| Inferable | Recoverable by reasoning from observables | Material provenance, motif significance |
| Occluded | Ground truth the player can only infer | Chronology, culture profiles, true tag scores |
| Engine-internal | Not a world fact at all | The seed, plausibility checking, corpus simulation |
The interpretive lens (the game's core mechanic) operates on observable and inferable properties only. It can reorder, reframe and de-emphasise; it cannot reveal occluded properties and it cannot hide observable ones. Every wrong belief the player forms traces back to their own filtering.
What exists today
The implementation restarted from scratch for launch and is being rebuilt against a 377-task MVP roadmap; 120 tasks were done at the time of writing. Milestone 1 (runtime, the full type system, the seeded PRNG, the developer workbench) is complete. Milestone 2 is the generation pipeline itself, at 80 of 158 tasks.
- Stages 4–8 are shipped as pure TypeScript engine modules: grammar expansion, normalisation, plausibility, materials, decoration, feature extraction and classification, each with its own test suite.
- Stage 9 is partial. The observational register's templates and a minimal renderer exist; the full description engine (variant selection, register filtering, lens integration) is a later roadmap task.
- Stage 1 shipped with Milestone 1: the seed machinery is real, tested and drives everything below; the determinism page covers it.
- Stages 2–3 are designed but not built. The engine currently runs against mock cultures and six fixture worlds. The world page covers them.
docs/05-generation-architecture.md · Engine: src/lib/engine/generation/ · Authored data: src/lib/data/ · Types: src/lib/types/