chore(meta): cascade refocus — supersede v0.2 cluster, re-home backlog tree, capture workshop WIP

Governance:
- D-166 amendment (2026-06-12): outside-in build order (geo → econ-on-world →
  building templates → door boundary contracts → NPC/interiors → gameplay);
  Phase 5 ramps in parallel once outsides are walkable (gate: T-962)
- D-114/D-115/D-117/D-118/D-120 marked superseded by D-166 (inbound anchors fixed)
- D-221 amended: milestones retired, cascade-hierarchy gating is canonical
- Q-077/Q-068/Q-036 resolved (answered by events); Q-110 (scale anchoring) and
  Q-111 (live-econ coupling) opened from cascade grounding

Ticket tree (147 stray backlog tickets dispositioned):
- New parents: T-1036 (post-cascade gameplay parking), T-1037 (maintenance initiative)
- Re-homed: 15 → Phase 4 (T-750), 30 → Phase 5 (T-749), 11 → Phase 6 (T-751),
  21 → gameplay parking, 28 → maintenance; children follow their epics
- Cancelled 12 administrative shells (mirror tickets, emptied pre-cascade umbrellas,
  v0.2 pivot shell T-603); T-9/T-28 closed done; T-745 in_progress
- New grounded tickets T-1038..T-1044: inter-settlement road/rail graph, L3→L4
  dispatch threading, river-channel-anchor bug, 64m landform-repeat bug,
  region seam blending, road-entry octants, drainage re-run fix

Docs:
- CLAUDE.md cascade paragraph updated to the amended rule
- 20 v0.1-era docs/design files marked superseded with pointers;
  content-structure-canonical retitled (v0.2 label dropped)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-06-12 12:26:32 +02:00
co-authored by Claude Fable 5
parent 5adf2b8bd7
commit ca255dc16c
35 changed files with 2100 additions and 62 deletions
+10 -8
View File
@@ -180,13 +180,13 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [D-111: MobileChunk Idle State Covers Stationary Player Installations](decisions/architecture.md#d-111-mobilechunk-idle-state-covers-stationary-player-installations) — _architecture_
- [D-112: No Separate Location Instancing System](decisions/architecture.md#d-112-no-separate-location-instancing-system) — _architecture_
- [D-113: Tile data model — extensible per-tile properties](decisions/architecture.md#d-113-tile-data-model--extensible-per-tile-properties) — _architecture_
- [D-114: v0.2 proof-of-life — generator + graphics, not hand-built slice](decisions/scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) — _scope_
- [D-115: Character creation scoped to skills + bookmark for v0.2](decisions/scope.md#d-115-character-creation-scoped-to-skills--bookmark-for-v02) — _scope_
- [D-114: v0.2 proof-of-life — generator + graphics, not hand-built slice [SUPERSEDED]](decisions/scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) — _scope_
- [D-115: Character creation scoped to skills + bookmark for v0.2 [SUPERSEDED]](decisions/scope.md#d-115-character-creation-scoped-to-skills--bookmark-for-v02-superseded) — _scope_
- [D-116: Religion is not a game system](decisions/scope.md#d-116-religion-is-not-a-game-system) — _scope_
- [D-117: Tycoon is the v0.2 bookmark — zero investigation content](decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) — _scope_
- [D-118: Small business owner starting state — tycoon is aspiration, not starting position](decisions/scope.md#d-118-small-business-owner-starting-state--tycoon-is-aspiration-not-starting-position) — _scope_
- [D-117: Tycoon is the v0.2 bookmark — zero investigation content [SUPERSEDED]](decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) — _scope_
- [D-118: Small business owner starting state — tycoon is aspiration, not starting position [SUPERSEDED]](decisions/scope.md#d-118-small-business-owner-starting-state--tycoon-is-aspiration-not-starting-position-superseded) — _scope_
- [D-119: Generator spike confirmed for Sprint 25 — critical path](decisions/scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path) — _scope_
- [D-120: No skill ceiling in v0.2 — transhumanist ladder deferred](decisions/scope.md#d-120-no-skill-ceiling-in-v02--transhumanist-ladder-deferred) — _scope_
- [D-120: No skill ceiling in v0.2 — transhumanist ladder deferred [SUPERSEDED]](decisions/scope.md#d-120-no-skill-ceiling-in-v02--transhumanist-ladder-deferred-superseded) — _scope_
- [D-121: Voice is culture-driven — job as modifier](decisions/content.md#d-121-voice-is-culture-driven--job-as-modifier) — _content_
- [D-122: All NPCs generated — no named hand-authored characters](decisions/content.md#d-122-all-npcs-generated--no-named-hand-authored-characters) — _content_
- [D-123: Generative AI for NPC content — build-time authoring tool and runtime voice pipeline](decisions/content.md#d-123-generative-ai-for-npc-content--build-time-authoring-tool-and-runtime-voice-pipeline) — _content_
@@ -327,7 +327,6 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-033: Three-system NPC architecture](questions/content.md#q-033-three-system-npc-architecture) — _content_
- [Q-034: PC archetypes](questions/scope.md#q-034-pc-archetypes) — _scope_
- [Q-035: Sacred/Profane/Middle Kingdom framework](questions/scope.md#q-035-sacredprofanemiddle-kingdom-framework) — _scope_
- [Q-036: District skeleton as generator output](questions/scope.md#q-036-district-skeleton-as-generator-output) — _scope_
- [Q-037: Generator development pipeline](questions/scope.md#q-037-generator-development-pipeline) — _scope_
- [Q-038: Authored content estimate at 300-world scale](questions/scope.md#q-038-authored-content-estimate-at-300-world-scale) — _scope_
- [Q-042: Intra-system transport networks — passenger vs. freight, vehicles and modes](questions/content.md#q-042-intra-system-transport-networks--passenger-vs-freight-vehicles-and-modes) — _content_
@@ -349,7 +348,6 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-065: Shooting mechanics — Deep RayCast 3D vs Ballistic Penetration System vs server-side](questions/architecture.md#q-065-shooting-mechanics--deep-raycast-3d-vs-ballistic-penetration-system-vs-server-side) — _architecture_
- [Q-066: PathMesh3D for procedural environment geometry](questions/architecture.md#q-066-pathmesh3d-for-procedural-environment-geometry) — _architecture_
- [Q-067: Vehicle physics for in-world transport](questions/architecture.md#q-067-vehicle-physics-for-in-world-transport) — _architecture_
- [Q-068: Procedural terrain generation patterns — chunk loading and noise](questions/architecture.md#q-068-procedural-terrain-generation-patterns--chunk-loading-and-noise) — _architecture_
- [Q-069: GPU cloth simulation for dynamic clothing](questions/architecture.md#q-069-gpu-cloth-simulation-for-dynamic-clothing) — _architecture_
- [Q-070: NobodyWho LLM patterns vs our Rust voice pipeline](questions/architecture.md#q-070-nobodywho-llm-patterns-vs-our-rust-voice-pipeline) — _architecture_
- [Q-071: Steam integration template for multiplayer lobbies](questions/architecture.md#q-071-steam-integration-template-for-multiplayer-lobbies) — _architecture_
@@ -358,7 +356,6 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-074: Screenshot manager for in-game captures and bug reports](questions/architecture.md#q-074-screenshot-manager-for-in-game-captures-and-bug-reports) — _architecture_
- [Q-075: RichText3D for in-world text rendering](questions/architecture.md#q-075-richtext3d-for-in-world-text-rendering) — _architecture_
- [Q-076: DeformableMesh for runtime environment and damage variation](questions/architecture.md#q-076-deformablemesh-for-runtime-environment-and-damage-variation) — _architecture_
- [Q-077: World generation architecture → PROMOTED TO WORKSHOP](questions/architecture.md#q-077-world-generation-architecture--promoted-to-workshop) — _architecture_
- [Q-078: God rays for atmospheric lighting](questions/architecture.md#q-078-god-rays-for-atmospheric-lighting) — _architecture_
- [Q-079: GridMapLayer — 2D tile logic driving 3D grid rendering](questions/architecture.md#q-079-gridmaplayer--2d-tile-logic-driving-3d-grid-rendering) — _architecture_
- [Q-080: Mod loader architecture reference](questions/architecture.md#q-080-mod-loader-architecture-reference) — _architecture_
@@ -383,6 +380,8 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-107: Wiki → Atlas content-set consolidation](questions/architecture.md#q-107-wiki--atlas-content-set-consolidation) — _architecture_
- [Q-108: Subterranean / domed / sealed-habitat settlement morphology — does the built-world fill model need a surface-vs-enclosed branch](questions/architecture.md#q-108-subterranean--domed--sealed-habitat-settlement-morphology--does-the-built-world-fill-model-need-a-surface-vs-enclosed-branch) — _architecture_
- [Q-109: Cascade generation-source dispatch — planetary / station / mod-DLC-forked / save-only](questions/architecture.md#q-109-cascade-generation-source-dispatch--planetary--station--mod-dlc-forked--save-only) — _architecture_
- [Q-110: Region/chunk physical-scale anchoring — what is a region in metres, and what anchors a heightmap pixel?](questions/architecture.md#q-110-regionchunk-physical-scale-anchoring--what-is-a-region-in-metres-and-what-anchors-a-heightmap-pixel) — _architecture_
- [Q-111: Live-econ coupling of generation inputs — which inputs refresh from the rolling sim vs stay static-authored?](questions/architecture.md#q-111-live-econ-coupling-of-generation-inputs--which-inputs-refresh-from-the-rolling-sim-vs-stay-static-authored) — _architecture_
## Resolved questions
@@ -403,6 +402,7 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-025: Knowledge graph cap and eviction strategy](questions/perception.md#q-025-knowledge-graph-cap-and-eviction-strategy) — _perception_
- [Q-026: Contradiction detection algorithm](questions/perception.md#q-026-contradiction-detection-algorithm) — _perception_
- [Q-028: Collision-resistant line IDs for auto-generated NPCs](questions/content.md#q-028-collision-resistant-line-ids-for-auto-generated-npcs) — _content_
- [Q-036: District skeleton as generator output](questions/scope.md#q-036-district-skeleton-as-generator-output) — _scope_
- [Q-039: Gate topology generation](questions/scope.md#q-039-gate-topology-generation) — _scope_
- [Q-040: Gate dual-use topology — freight and commuter on shared span gate infrastructure](questions/content.md#q-040-gate-dual-use-topology--freight-and-commuter-on-shared-span-gate-infrastructure) — _content_
- [Q-041: Interstellar travel mechanics — horizon stations and gate architecture](questions/content.md#q-041-interstellar-travel-mechanics--horizon-stations-and-gate-architecture) — _content_
@@ -412,6 +412,8 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-057: Composable behavior generation — decompose culture × role × context into assembled behaviors](questions/content.md#q-057-composable-behavior-generation--decompose-culture--role--context-into-assembled-behaviors) — _content_
- [Q-059: PlatformInfo full interface scope](questions/architecture.md#q-059-platforminfo-full-interface-scope) — _architecture_
- [Q-064: 3D planet generator for wiki system screenshots](questions/architecture.md#q-064-3d-planet-generator-for-wiki-system-screenshots) — _architecture_
- [Q-068: Procedural terrain generation patterns — chunk loading and noise](questions/architecture.md#q-068-procedural-terrain-generation-patterns--chunk-loading-and-noise) — _architecture_
- [Q-077: World generation architecture → PROMOTED TO WORKSHOP](questions/architecture.md#q-077-world-generation-architecture--promoted-to-workshop) — _architecture_
- [Q-094: Chart widgets for economy/market insert UI](questions/architecture.md#q-094-chart-widgets-for-economymarket-insert-ui) — _architecture_
- [Q-095: Commission formal name — authoritative designation](questions/content.md#q-095-commission-formal-name--authoritative-designation) — _content_
- [Q-096: Replace sprint workflow with kanban + milestones](questions/process.md#q-096-replace-sprint-workflow-with-kanban--milestones) — _process_
+3 -2
View File
@@ -451,7 +451,7 @@ Technical foundation decisions that constrain implementation: engine, client-ser
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 5
- **Raised by:** Team Leader (Jeroen) — outcome model (option C)
- **Dissent:** None
- **Cross-reference:** [D-120](scope.md#d-120-no-skill-ceiling-in-v02--transhumanist-ladder-deferred) (no skill ceiling in v0.2)
- **Cross-reference:** [D-120](scope.md#d-120-no-skill-ceiling-in-v02--transhumanist-ladder-deferred-superseded) (no skill ceiling in v0.2)
### D-134: Full character customization — hair, clothing, colors at tile scale
- **Date:** 2026-03-05
@@ -486,7 +486,7 @@ Technical foundation decisions that constrain implementation: engine, client-ser
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 23
- **Raised by:** Team Leader (Jeroen)
- **Dissent:** None
- **Cross-reference:** [D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator proof-of-life), [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path) (Sprint 25 generator spike)
- **Cross-reference:** [D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) (generator proof-of-life), [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path) (Sprint 25 generator spike)
### D-141: PlatformInfo — client-side OS abstraction autoload
- **Date:** 2026-03-13
@@ -597,6 +597,7 @@ Technical foundation decisions that constrain implementation: engine, client-ser
| 6 | Detail coloring — room-level content, cultural architecture | Only when the world is walkable |
- **Amendment (2026-05-22):** Phases 4 and 5 swapped — **world generation now precedes player control**. The rule: no player-control or in-world rendering work begins until the generator can deterministically seed-generate every tile of every world via the full multilayer cascade. The original Phase 4 "2-floor test map" is **dropped** — test layers are produced by the generator itself once layer-drawing begins; we start drawing the world only when generation knows what to draw. Generation progress is viewed as **per-layer maps in the implant Atlas** (the Phase 3 deliverable, already built), not via an in-world renderer. The existing in-world rendering code is **left as-is until Phase 5** — neither built upon nor removed before then. Rationale: building player systems against a throwaway test substrate means rebuilding them against real generated tiles later; gating player work on deterministic generation avoids that waste. Epics T-749 (now Phase 5) and T-750 (now Phase 4) and the CLAUDE.md cascade table are updated to match.
- **Amendment (2026-06-12):** Build order **within and after** the cascade clarified (Jeroen). The world is built **outside-in**: (1) geo layer; (2) the economic layer drawn onto the world — cities, buildings, streets, blocks, and the inter-settlement road/rail network; (3) building templates; (4) **door boundary contracts** defining the seam between exteriors and building interiors. Only then (5) the background NPC layer and building interiors (Phase 6), and only after that does gameplay/scenario design resume ("making it a game again" — tracked in the post-cascade gameplay parking epic, outside any phase). **Player control and visual rendering (Phase 5) ramp in parallel once outside generation produces walkable exteriors** — the Phase-5 trigger is "outsides generate deterministically and are walkable", not "all Phase-4 polish complete"; T-962 holds the gate and is updated to this trigger. Guiding statement: *"Before this is a game I want it to be a Reach a character can travel through."* NPCs, scenarios, and gameplay systems are conceived, designed, and built only after the traversable world exists. This amendment absorbs the v0.2 scope cluster — D-114, D-115, D-117, D-118, D-120 are marked superseded by this record, with each one's surviving design substance noted on the record itself.
- **Rationale:** The pattern of negotiating pragmatic v0.2 cuts while discussing room-level detail repeatedly produced superseded decisions, confused agents, and distracted from building the actual product. The cascade enforces a first-things-first discipline: each layer of the game is grounded in the layer below it before detail is added.
- **Raised by:** Jeroen, established 2026-03-24 during world generation workshop.
- **Dissent:** None.
+4 -4
View File
@@ -10,7 +10,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
- **Rationale:** A galaxy-spanning game needs content architecture that scales without hand-crafting everything. The life-sim substrate creates attachment that gives conspiracies emotional weight. Pool-based Tier 1 modules enable replayability and DLC expansion.
- **Raised by:** Team Leader (Jeroen), with full team endorsement across 3 rounds
- **Dissent:** None
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Tier 1 "authored drama modules" concept is deferred for v0.2. [D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator-first proof-of-life) and [D-127](#d-127-player-choices-are-the-content--rimworld-model-job-as-rails) (player choices are the content) establish that v0.2 ships zero authored drama modules. The three-tier architecture remains valid for the full game, but the Tier 1 pool is empty by design in v0.2 — generator-first validates Tier 2 and Tier 3 before Tier 1 modules are authored. Tier 1 will be authored after the generator spike (D-119) proves legible characters and readable relationships.
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Tier 1 "authored drama modules" concept is deferred for v0.2. [D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) (generator-first proof-of-life) and [D-127](#d-127-player-choices-are-the-content--rimworld-model-job-as-rails) (player choices are the content) establish that v0.2 ships zero authored drama modules. The three-tier architecture remains valid for the full game, but the Tier 1 pool is empty by design in v0.2 — generator-first validates Tier 2 and Tier 3 before Tier 1 modules are authored. Tier 1 will be authored after the generator spike (D-119) proves legible characters and readable relationships.
### D-024: NPC generation model — 10 axes + combat component
- **Date:** 2026-02-10
@@ -42,7 +42,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
- **Rationale:** If every NPC is suspicious, investigation collapses. The mundane triangles ARE the life-sim game — hours of play that never touch conspiracy. Variable entanglement rate defeats metagaming across playthroughs. Quiet life must feel genuinely good, not empty.
- **Raised by:** Gore (thematic), Paula (30/50/20 split), Nigel (anti-metagaming), Team Leader (majority unentangled)
- **Dissent:** None
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The 30/50/20 population split rationale survives but implementation context changes. [D-122](#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated) means no NPC is hand-authored. The "entangled 20%" are generated NPCs whose triangles happen to be flagged for intrigue content. For the tycoon v0.2 bookmark ([D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content)), the split applies to economic, social, and mundane triangles rather than investigation-intrigue triangles. The specific ratios will be revisited after the generator spike ([D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) proves what population density the generator can sustain.
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The 30/50/20 population split rationale survives but implementation context changes. [D-122](#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated) means no NPC is hand-authored. The "entangled 20%" are generated NPCs whose triangles happen to be flagged for intrigue content. For the tycoon v0.2 bookmark ([D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded)), the split applies to economic, social, and mundane triangles rather than investigation-intrigue triangles. The specific ratios will be revisited after the generator spike ([D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) proves what population density the generator can sustain.
### D-032: Separate monologue pools per character [SUPERSEDED — deferred to Phase 6]
- **Date:** 2026-02-11
@@ -106,7 +106,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
- **Cross-reference:** Vertical slice ([D-027](scope.md#d-027-vertical-slice--smuggler--detective-two-character-proof)), contraband ([D-037](#d-037-contraband-specification))
- **Raised by:** Miri (Sova setting brief, Round 1; Van Maanen's Star profile, Round 2), project lead (confirmed as worldbuilding milestone, directive T-6)
- **Dissent:** None
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Station Sova / Van Maanen's Star confirmed as the v0.2 setting. [D-128](#d-128-culture-implicit-in-starting-location--van-maanens-star-system-equals-van-maanens-star-culture) makes Van Maanen's Star culture the cultural context for the tycoon bookmark — Van Maanen's Star IS Van Maanen's Star culture by default. The setting details (naming conventions, atmosphere, sensory palette) survive as generator inputs and culture profile content. However, the Sova Transit District spatial layout (D-093) was designed for the v0.1 hand-built slice. v0.2 generates the location via the generator ([D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice)); the Van Maanen's Star culture profile (Miri prerequisite for [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) captures the setting identity as generator inputs. Sova remains the canonical example system and the first culture profile to author.
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Station Sova / Van Maanen's Star confirmed as the v0.2 setting. [D-128](#d-128-culture-implicit-in-starting-location--van-maanens-star-system-equals-van-maanens-star-culture) makes Van Maanen's Star culture the cultural context for the tycoon bookmark — Van Maanen's Star IS Van Maanen's Star culture by default. The setting details (naming conventions, atmosphere, sensory palette) survive as generator inputs and culture profile content. However, the Sova Transit District spatial layout (D-093) was designed for the v0.1 hand-built slice. v0.2 generates the location via the generator ([D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded)); the Van Maanen's Star culture profile (Miri prerequisite for [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) captures the setting identity as generator inputs. Sova remains the canonical example system and the first culture profile to author.
### D-037: Contraband specification — unlicensed lattice components
- **Date:** 2026-02-11
@@ -216,7 +216,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
### D-090: PC voice registers — smuggler and detective speech patterns `[SUPERSEDED]`
- **Date:** 2026-02-12
- **Superseded by:** [D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (2026-03-05). The smuggler/detective dual-lens frame is eliminated for v0.2. The tycoon is the single playable character. Voice register design for v0.2 follows culture-driven voice (D-121) applied to the player character, not the smuggler/detective partition below.
- **Superseded by:** [D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) (2026-03-05). The smuggler/detective dual-lens frame is eliminated for v0.2. The tycoon is the single playable character. Voice register design for v0.2 follows culture-driven voice (D-121) applied to the player character, not the smuggler/detective partition below.
- **Decision:** Each playable character has a defined voice register for monologue and dialogue:
- **Smuggler:** Feeling-first. Sentence fragments. Concrete/physical vocabulary. Notices bodies, spaces, exits. Emotional baseline: wary comfort. Lies by omission. Relationship to authority: avoidance.
- **Detective:** Analysis-first. Complete sentences. Institutional vocabulary. Notices patterns, inconsistencies, procedural gaps. Emotional baseline: professional detachment. Lies by reframing. Relationship to authority: representative.
+1 -1
View File
@@ -398,7 +398,7 @@ This domain covers: currency system, commodity taxonomy, shadow economy, corpora
- **Rationale:** Administered pricing is the correct model because brands violate all three tâtonnement assumptions: heterogeneity (Calloway ≠ VGV ≠ generic spirits), supply inelasticity (terroir production cannot respond to price signals per D-177), and Veblen demand effects (prestige goods can have upward-sloping demand). The one-way interface (commodity prices → brand input costs; brand output prices do NOT feed back into tâtonnement) is architecturally clean and matches the D-178 layer model. The identity/exotic split in cultural premium is the minimal structural addition needed to produce all three observed pricing curves (Scarcity-Distance, Dual-Peak, Aspirational Gradient). Population asymmetry (~80B total Reach population, systems ranging from 10B to <50k) makes the halo/volume tier pattern structurally necessary — brands from tiny worlds are astronomically exclusive and need volume derivatives to be economically relevant.
- **Raised by:** Full planning team workshop, Sprint 34 (T-811).
- **Dissent:** None.
- **Cross-reference:** [D-185](#d-185-brands-are-not-commodities) (brands are not commodities), [D-184](#d-184-commodity-catalog-36-types) (commodity catalog), [D-177](#d-177-productivity-constraints-lore-derived) (productivity constraints), [D-175](#d-175-corporation-taxonomy-and-prerequisite) (corporation taxonomy), [D-178](#d-178-economic-model-architecture) (economic model architecture), [D-180](#d-180-event-input-port) (event input port), [D-181](#d-181-signal-vocabulary) (signal vocabulary), [D-173](#d-173-commodity-taxonomy) (commodity taxonomy), [D-171](#d-171-three-currency-system) (three-currency system), [D-131](content.md#d-131-broad-economic-verb-vocabulary--life-verbs-not-tycoon-specific) (economic verb vocabulary), [D-118](scope.md#d-118-small-business-owner-starting-state--tycoon-is-aspiration-not-starting-position) (small business owner starting state)
- **Cross-reference:** [D-185](#d-185-brands-are-not-commodities) (brands are not commodities), [D-184](#d-184-commodity-catalog-36-types) (commodity catalog), [D-177](#d-177-productivity-constraints-lore-derived) (productivity constraints), [D-175](#d-175-corporation-taxonomy-and-prerequisite) (corporation taxonomy), [D-178](#d-178-economic-model-architecture) (economic model architecture), [D-180](#d-180-event-input-port) (event input port), [D-181](#d-181-signal-vocabulary) (signal vocabulary), [D-173](#d-173-commodity-taxonomy) (commodity taxonomy), [D-171](#d-171-three-currency-system) (three-currency system), [D-131](content.md#d-131-broad-economic-verb-vocabulary--life-verbs-not-tycoon-specific) (economic verb vocabulary), [D-118](scope.md#d-118-small-business-owner-starting-state--tycoon-is-aspiration-not-starting-position-superseded) (small business owner starting state)
---
+1 -1
View File
@@ -476,7 +476,7 @@ How the player observes and interacts with the world: camera, fog, line-of-sight
- **Cross-reference:** Insert overlay ([D-048](#d-048-neural-insert-overlay--visual-design)), insert HUD wireframe (`docs/design/insert-hud-wireframe-v01.md`), visual grammar (`docs/design/visual-grammar-v01.md` §7), cursor states ([D-056](#d-056-cursor-states--insert-styled-geometric))
- **Raised by:** Araminta (analysis and recommendation), project lead (confirmed).
- **Dissent:** None.
- **Amendment (2026-04-05):** "Smuggler only per D-065" scope on inventory item silhouettes is obsolete. [D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) eliminates the smuggler/detective frame; [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters) removes named characters. Inventory icons are no longer character-specific. D-065 cross-reference removed.
- **Amendment (2026-04-05):** "Smuggler only per D-065" scope on inventory item silhouettes is obsolete. [D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) eliminates the smuggler/detective frame; [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters) removes named characters. Inventory icons are no longer character-specific. D-065 cross-reference removed.
---
+2 -1
View File
@@ -84,7 +84,8 @@ How the team works: composition, naming, workflow.
- **Source:** Q-096 (raised 2026-04-20, expanded 2026-05-01)
- **Raised by:** Jeroen
- **Dissent:** None
- **Amendment (2026-06-12):** **Milestones are retired.** pql has no milestone entity; phase gating is the **cascade ticket hierarchy** — initiative T-745 holds the six phase epics, a ticket is in a phase by being parented under that phase epic, and the active phase is the `in_progress` phase epic (currently T-750, Phase 4). The two milestone bullets above ("Sprint boundaries → milestones tied to concrete deliverables" and "Milestones are many-to-many with tickets, can run in parallel, can block other milestones") are superseded by this mechanism; kanban, topic branches, and the rest of the record stand. Phase-independent maintenance and test-debt work lives under a dedicated maintenance initiative rather than a phase epic. See CLAUDE.md "Work Modes" and `.claude/rules/ticket-cli.md`, which already describe the hierarchy model.
---
*5 decisions. Last updated: 2026-05-03*
*5 decisions. Last updated: 2026-06-12*
+17 -12
View File
@@ -73,7 +73,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
### D-014: v0.1 map specification [SUPERSEDED]
- **Date:** 2026-02-09
- **Superseded by:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator-first proof-of-life replaces hand-built map spec; auto-generated locations at scale replace the hand-crafted tile map approach)
- **Superseded by:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) (generator-first proof-of-life replaces hand-built map spec; auto-generated locations at scale replace the hand-crafted tile map approach)
- **Decision:** First playable tech demo map spec:
| Layer | Spec |
@@ -96,7 +96,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
### D-027: Vertical slice — smuggler + detective, two-character proof [SUPERSEDED]
- **Date:** 2026-02-10
- **Superseded by:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator-first proof-of-life) and [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (tycoon bookmark replaces smuggler + detective; zero investigation content for v0.2)
- **Superseded by:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) (generator-first proof-of-life) and [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) (tycoon bookmark replaces smuggler + detective; zero investigation content for v0.2)
- **Decision:** The proof-of-concept vertical slice is one station district containing: 1 workplace social site, 1 social venue (bar), 1 smuggling ring template, shared NPCs. Two playable characters: smuggler (logistics worker, insider access to criminal templates, social camouflage) and detective (institutional investigator, authority access, analytical). Success criteria: (1) 30 minutes of daily-life breathing room before contamination activates, (2) both playthroughs feel like fundamentally different games, (3) after each playthrough player names an NPC they felt conflicted about, (4) the observe→notice→follow→discover sequence emerges from systems not scripts.
- **Supersedes:** [D-006](#d-006-prototype-scenario--institutearmstrongguardians-superseded)
- **Rationale:** Smuggler + detective creates adversarial divergence — the detective's target IS the smuggler's daily life. Same templates, same NPCs, inverted relationships. Proves character-as-lens, contamination, life-sim attachment, and replayability simultaneously. Tyre confirms: ~20% more effort than single-character, no new architecture.
@@ -168,7 +168,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
### D-065: Smuggler inventory — knowledge-primary with physical evidence [SUPERSEDED]
- **Date:** 2026-02-13
- **Superseded by:** [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (no smuggler character in v0.2). The knowledge-primary inventory concept and physical evidence design survive as patterns for future character implementation.
- **Superseded by:** [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) (no smuggler character in v0.2). The knowledge-primary inventory concept and physical evidence design survive as patterns for future character implementation.
- **Decision:** Knowledge is the primary "inventory" for all characters (you SAW the manifest, not you HAVE it). The smuggler additionally gets a minimal physical inventory for v0.1: 3 specific items (manifest copy, corridor access token, personal comm log). Capacity per archetype: smuggler 3-4 slots, detective 2 slots. Carried items are PRIVATE — they exist behind the information boundary ([D-010](architecture.md#d-010-multiplayer-ready-architectural-baseline) principle 2) and are not visible to other entities unless revealed via search, scan, or confrontation. Server implementation: world entities with CarriedBy component. Verbs: Take, Place.
- **Evidence presentation differs by archetype:** Detective sees case-file-style entries (structured: what/where/when/source/confidence, insert suggests links). Smuggler sees personal notebook (organized by person, informal voice, no contradiction flags). Same underlying knowledge graph, different presentation layer.
- **v0.1 items (Paula):**
@@ -184,7 +184,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
### D-087: v0.1 triangle configuration — 3 active forks, 2 passive tensions [SUPERSEDED]
- **Date:** 2026-02-12
- **Superseded by:** [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated; no named triangles with hand-authored characters) and [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (no investigation-specific triangle configuration for v0.2). Triangle generation follows the generator-first model (D-114).
- **Superseded by:** [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated; no named triangles with hand-authored characters) and [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) (no investigation-specific triangle configuration for v0.2). Triangle generation follows the generator-first model (D-114).
- **Decision:** v0.1 vertical slice uses 5 relationship triangles. Three are active forks (T1: Kael-Smuggler-Ring, T2: Sera-Detective-Commission, T4: Drin-System-Ring) with branching outcomes driven by player observation. Two are passive tensions (T3: Naia-Kael-Hael, T5: Worried Partner background) that provide atmosphere and secondary discovery paths. Active forks require authored content per branch. Passive tensions are system-driven.
- **Rationale:** Three active forks are within v0.1 content authoring capacity. Passive tensions require no branching content — they enrich discovery space without multiplying authored lines.
- **Raised by:** Gestalt, Paula
@@ -194,7 +194,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
### D-089: Self-contained triangle forks for v0.1, no cross-triangle cascade [SUPERSEDED]
- **Date:** 2026-02-12
- **Superseded by:** [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) and [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters). No hand-authored triangle forks in v0.2; triangle generation follows the generator-first model. Cross-triangle cascade design is preserved as a future consideration once the generator proves relationships are readable.
- **Superseded by:** [D-117](#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) and [D-122](content.md#d-122-all-npcs-generated--no-named-hand-authored-characters). No hand-authored triangle forks in v0.2; triangle generation follows the generator-first model. Cross-triangle cascade design is preserved as a future consideration once the generator proves relationships are readable.
- **Decision:** In v0.1, each triangle fork resolves independently. No triangle outcome triggers escalation in another triangle. Cross-triangle cascade (storyteller-managed, where resolving T1 affects T2 pressure) is deferred to v0.2+. This keeps v0.1 content authoring manageable — each triangle is a self-contained narrative unit.
- **Rationale:** Cross-triangle cascade requires the storyteller to track inter-triangle state and authors to write contingent branches. Both are out of scope for v0.1. Self-contained triangles can be authored, tested, and validated independently.
- **Raised by:** Paula, Gestalt
@@ -214,8 +214,9 @@ What we're building: game concept, design pillars, prototype definition, map spe
---
### D-114: v0.2 proof-of-life — generator + graphics, not hand-built slice
### D-114: v0.2 proof-of-life — generator + graphics, not hand-built slice [SUPERSEDED]
- **Date:** 2026-03-05
- **Superseded by:** [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (the v0.2 target and its proof-of-life milestone are dropped; the cascade's Phase-4 generator deliverable replaces it — D-166 amendment 2026-06-12)
- **Decision:** The v0.2 proof-of-life milestone is defined as: the generator producing usable output (auto-generated locations at scale with legible characters) plus better graphics. A hand-built vertical slice is explicitly NOT the proof-of-life. The v0.1 lesson: descoping toward a hand-built approach produced the wrong game. v0.2 must first prove the foundational generator can produce usable output, then build the game on top of that foundation.
- **Rationale:** v0.1 was built as a detective puzzle game with hand-placed NPCs and dots for characters. The designer's vision is a single-character life sim. The generator-first approach prevents the same mistake — we prove the generative foundation works before committing to content on top of it.
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 1
@@ -223,8 +224,9 @@ What we're building: game concept, design pillars, prototype definition, map spe
- **Dissent:** None
- **Supersedes:** [D-027](#d-027-vertical-slice--smuggler--detective-two-character-proof-superseded) (hand-built vertical slice), [D-014](#d-014-v01-map-specification-superseded) (hand-built map spec)
### D-115: Character creation scoped to skills + bookmark for v0.2
### D-115: Character creation scoped to skills + bookmark for v0.2 [SUPERSEDED]
- **Date:** 2026-03-05
- **Superseded by:** [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (v0.2 character-creation scope fell with the v0.2 target; character creation is post-cascade gameplay work — the skills+bookmark minimalism survives as design input when that work resumes)
- **Decision:** v0.2 character creation is limited to two elements: skills (what the character is good at) and bookmark (which starting scenario/location the character inhabits). Family, culture, and religion are deferred from character creation. Culture is available in the game through the starting location (see [D-128](content.md#d-128-culture-implicit-in-starting-location--van-maanens-star-system-equals-van-maanens-star-culture)), not as a creation slider.
- **Rationale:** Skills and bookmark are the minimum needed to differentiate playthroughs. Adding family/culture/religion at creation gates content that is better delivered through gameplay. Religion in particular is NOT a game system (D-116).
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 2
@@ -240,8 +242,9 @@ What we're building: game concept, design pillars, prototype definition, map spe
- **Raised by:** Team Leader (Jeroen)
- **Dissent:** None
### D-117: Tycoon is the v0.2 bookmark — zero investigation content
### D-117: Tycoon is the v0.2 bookmark — zero investigation content [SUPERSEDED]
- **Date:** 2026-03-05
- **Superseded by:** [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (the v0.2 bookmark frame is dropped; the tycoon concept is parked as post-cascade gameplay under the gameplay parking epic. The investigation-content abandonment and the career-blend insight survive as design input)
- **Decision:** The v0.2 bookmark is the tycoon — a small business owner in Van Maanen's Star. v0.2 ships zero investigation content. The detective and smuggler framing from v0.1 is explicitly abandoned for v0.2. The tycoon naturally blends career models: active management, remote investment via insert (WFH model), and one-off deals (gig model). Investigation content will be revisited when the life-sim foundation is proven stable.
- **Rationale:** v0.1's detective/smuggler frame produced the wrong game. The tycoon bookmark is thematically and mechanically richer: economic complicity, life-sim attachment loops, and narrative emergence from everyday decisions. Clean break from investigation content removes the frame that distorted v0.1.
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 4
@@ -249,8 +252,9 @@ What we're building: game concept, design pillars, prototype definition, map spe
- **Dissent:** None
- **Supersedes:** [D-027](#d-027-vertical-slice--smuggler--detective-two-character-proof-superseded)
### D-118: Small business owner starting state — tycoon is aspiration, not starting position
### D-118: Small business owner starting state — tycoon is aspiration, not starting position [SUPERSEDED]
- **Date:** 2026-03-05
- **Superseded by:** [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (v0.2 frame dropped; the small-business-owner starting-state design survives with the parked tycoon bookmark — T-615)
- **Decision:** The tycoon bookmark begins as an existing small business owner, not a mogul. The player starts with a small operation (bar, logistics contract, storage franchise) and grows into a tycoon over time — or sells out and pivots to exploration. The bookmark name "tycoon" describes the aspiration and growth trajectory, not the starting state. A true tycoon starting position would be overpowered and would skip the interesting growth phase.
- **Rationale:** Economic complicity and life-sim attachment require a character with something to lose and room to grow. Starting as a mogul eliminates the growth arc and removes economic stakes. The small business owner start grounds the player in a human-scale economic reality before scaling up.
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 20
@@ -264,11 +268,12 @@ What we're building: game concept, design pillars, prototype definition, map spe
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 22
- **Raised by:** Tyre (proposal), Team Leader (confirmed)
- **Dissent:** None
- **Cross-reference:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator-first proof-of-life)
- **Cross-reference:** [D-114](#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice-superseded) (generator-first proof-of-life)
- **Amendment (2026-04-05):** The sequencing described here (Sprint 25 as first deliverable, generator proof-of-life gates all subsequent work) is superseded by [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (2026-03-24), which establishes a strict 6-phase development cascade. The generator spike falls in Phase 5 (World Generation), not Phase 1. The cascade is the authoritative build order.
### D-120: No skill ceiling in v0.2 — transhumanist ladder deferred
### D-120: No skill ceiling in v0.2 — transhumanist ladder deferred [SUPERSEDED]
- **Date:** 2026-03-05
- **Superseded by:** [D-166](architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) (v0.2 frame dropped; the surviving substance — no hard skill cap until the base loop is proven, transhumanist ladder deferred, `skill_ceiling` field preserved in the implementation — carries into post-cascade gameplay design)
- **Decision:** Skills have no hard cap in v0.2. The transhumanist ladder (baseline human → Higher → ANA-connected) is a later design layer. v0.2 proves the life-sim loop without skill constraints. The `skill_ceiling` architectural field is preserved in the implementation but not enforced in gameplay until the base game loop is proven.
- **Rationale:** Skill ceilings add complexity that is not load-bearing for the v0.2 proof-of-life. The life-sim loop must prove itself first. The transhumanist ladder is a rich design space but belongs in a later iteration when the foundational systems are stable.
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 24
@@ -296,7 +301,7 @@ What we're building: game concept, design pillars, prototype definition, map spe
- **Source:** Sprint 27 planning pass — Q-WTF-039 resolution
- **Raised by:** Tyre (architecture), Paula (narrative), Gestalt (systems), confirmed by project lead
- **Dissent:** Ozzie argued for portrait render (emotional attachment). Overruled: tile-scale at heavy zoom provides sufficient character identity without a second rendering pipeline.
- **Cross-reference:** [D-115](#d-115-character-creation-scoped-to-skills--bookmark-for-v02) (creation scope), [D-134](architecture.md#d-134-full-character-customisation--hair-clothing-colors-at-tile-scale) (full character customisation), [D-136](architecture.md#d-136-first-settled-reach-moment-auto-generated-apartment--insert-activation) (first game moment), ticket T-618 (CK3-style character creation screen)
- **Cross-reference:** [D-115](#d-115-character-creation-scoped-to-skills--bookmark-for-v02-superseded) (creation scope), [D-134](architecture.md#d-134-full-character-customisation--hair-clothing-colors-at-tile-scale) (full character customisation), [D-136](architecture.md#d-136-first-settled-reach-moment-auto-generated-apartment--insert-activation) (first game moment), ticket T-618 (CK3-style character creation screen)
- **Resolves:** Q-WTF-039
---
+22 -3
View File
@@ -138,7 +138,7 @@ Technical foundation questions: engine, protocols, data structures, performance,
---
### Q-068: Procedural terrain generation patterns — chunk loading and noise
- **Status:** Open (reference/inspiration)
- **Status:** Resolved (2026-06-12) — the seed-deterministic chunked-terrain question this reference was held for shipped in the Phase-4 cascade: T-963 (Layer 0 canonical heightmap), T-953 (Layer 1 topography/drainage/sub-biome), T-955 (Layer 3 settlement placement), all done; chunk streaming follows the D-225/D-227 derive-on-demand model rather than this demo's pattern.
- **Question:** Block-based 3D Procedural Map Generation Demo (https://godotengine.org/asset-library/asset/2698) — Perlin noise terrain with chunk-based loading/unloading. Not directly usable (block-based, Godot 4.2) but the patterns are relevant: seed-deterministic generation for consistent worlds across sessions, chunk loading within player proximity for memory/performance, terrain type placement from noise values. Reference for when the world generator produces location terrain and the client needs to stream it. The chunk load/unload pattern maps to our simulation tier system (Active → Background → State-saved).
- **Cross-reference:** Generator architecture, D-097 (simulation tiers), D-096 (chunk loading)
@@ -201,7 +201,7 @@ Technical foundation questions: engine, protocols, data structures, performance,
---
### Q-077: World generation architecture → PROMOTED TO WORKSHOP
- **Status:** Promoted — see `docs/workshops/world-generation/BRIEF.md`
- **Status:** Resolved → [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order) — the promoted workshop ran 2026-03-24 and produced the development cascade (`docs/workshops/world-generation/workshop-outcomes.md`); the asset-library references were consolidated into the brief and remain available there. Loop closed 2026-06-12.
- **Question:** Outgrew Q-record format. All references (CityCrafter3D, Chunk Manager, Retro Terrain, Spatial Gardener, GridMapLayer, PathMesh3D, DeformableMesh, Poly Haven) consolidated into the workshop brief.
- **Cross-reference:** `docs/workshops/world-generation/BRIEF.md`
@@ -428,4 +428,23 @@ Technical foundation questions: engine, protocols, data structures, performance,
---
*58 questions (11 resolved, 1 partially resolved, 46 open). Last updated: 2026-06-05.*
### Q-110: Region/chunk physical-scale anchoring — what is a region in metres, and what anchors a heightmap pixel?
- **Status:** Open — surfaced 2026-06-12 during cascade-work grounding (post-D-239 implementation)
- **Question:** The refinement chain's nominal physical anchors (workshop brief: 78 km L1 cell → ~1 km region → 64 m chunk → 1 m voxel, `docs/workshops/tile-derivation-contract/tile-derivation-contract-workshop-brief.md:19-22`) are mutually inconsistent in the implementation, and no record fixes metres-per-heightmap-pixel. Evidence: (1) `region_profile.rs:3-4` documents ~1 km² regions, ~6,000/body (80×75); (2) `derive_all_regions` (`region_profile.rs:1014-1044`) actually tiles the 512×256 L1 working grid at 8 cells/region spanning ±90° latitude — for a planet-scale equirect map an L1 cell is body-relative (~78 km on an Earth-like body), making such a region ~624 km, not 1 km; (3) `cascade.rs:235-237` claims "8 cells per region on a 128×64 working grid → ~80×32 = ~2,560 regions" — internally inconsistent and inconsistent with `heightmap.rs` GRID 512×256; (4) `chunk_context.rs:137-141` assumes a region is 16 chunks ≈ 1.024 km; (5) D-239 §10 asserts "D8 ≈ 152 m/cell" — true only if the whole 512-cell grid spans ~78 km, i.e. one nominal L1 cell, not a planet; (6) D-201's tier-4 "Region" is the 50500 km Province, colliding with the D-239 ~1 km RegionProfile vocabulary. Voxel/chunk scales are absolute (D-222: 1 m / 64 m) but the heightmap pixel is body-relative — the cascade currently glues them with three contradictory assumptions. **Which anchoring model is canonical?**
- **(a) Full-planet anchoring:** fix metres/pixel per body from `body_radius_km` (D-204): `px_m = 2πR/1024`. Regions become fixed ~1 km cells whose count varies per body (millions for a planet) — requires lazy region derivation (already the D-225/D-227 model) plus an explicit L1→region resampling stage; the 8-cells-per-region shortcut and the ~6,000/body budget die.
- **(b) Working-window anchoring:** L1L3 stay planet-equirect; the voxel cascade (region→chunk→voxel) operates on bounded windows (~one 78 km L1 cell) anchored at points of interest (settlements), with fixed metres/pixel inside the window. Matches the brief's chain literally and keeps ~6,000 regions/window; needs a window-addressing scheme in BodyWorldState and a rule for inter-window terrain.
- **(c) Body-relative everything:** keep pure grid-ratio anchoring (region = L1cell/8, chunk = region/16) and let metre meanings float per body — rejected-shaped: breaks the D-222/D-227 absolute 1 m tile vocabulary, D-239 §9 chokepoint widths, and the budget math.
- **Context:** Blocks metre-precise tuning of the cross-region blend and the landform region-anchoring fix; needed for Atlas scale bars (T-960) and the D-239 §10 ~45 ms/body budget accounting (assumes ~6,000 regions/body). A D-201 amendment is likely required to disambiguate Region-vs-Province vocabulary.
- **Cross-reference:** D-201, D-202, D-204, D-222, D-225, D-227, D-239 §9/§10, Q-105
---
### Q-111: Live-econ coupling of generation inputs — which inputs refresh from the rolling sim vs stay static-authored?
- **Status:** Open — surfaced 2026-06-12 during cascade-work grounding
- **Question:** The generation cascade reads every economic input from static systems.db at build/dispatch time (D-199 read-set via `city_context_reader.rs`; D-200 tier-1), while the live economy independently rebuilds `EconStateResource` — all 7 D-181 signals per (system_id, commodity_id) — every ECON_TICK_RATE (`economy.rs:107-120`). `EconStateResource` has NO generation consumer (only the IPC bridge + debug command read it). D-227 already names the coupling mechanism — the derived economic base is "recomputed on expiry, and force-evicted on an event (e.g. the player tanks a system's economy)" — but no record fixes the policy. For each generation input, which bucket: **(a) static-authored forever** (economic_role, founding_age_years, D-237 specializations — authored identity); **(b) epoch-refreshed** (re-read at save/load or world-epoch boundaries: prosperity_baseline_bps? world_tier? dominant commodity/BulkClass?); **(c) live-coupled via D-227 force-eviction + re-derivation** (settlement active/ghost flips per D-196, building condition/occupancy per D-217/T-999, road MaintenanceAuthority degradation)? And what is the eviction contract: who emits the event (an EconEvent threshold? storyteller?), which cache tiers evict (BodyWorldState regions/quarters vs chunk/voxel caches), and at what granularity (per-settlement, per-body, per-system)?
- **Context:** T-1007 defers economic_tier derivation "until it earns a use case in the rolling sim" and T-982's dominant-commodity lookup is static build-time — both park fields whose home depends on this answer. T-999 is the only ticketed live-econ→world consumer. D-198 fixed the reverse direction (econ sim never reads spatial layers); this is the forward direction. Per the cascade-first direction (2026-06-12 D-166 amendment: geo → econ-on-world → templates → door contracts → NPC/interiors → gameplay), default-static is acceptable through Phase 4; the answer gates Phase 5+ (a Reach a character travels through must show economic life without invalidating walked terrain) and the save model (D-227).
- **Cross-reference:** D-181, D-196, D-197, D-198, D-199, D-200, D-217, D-227, D-237; T-999, T-1007, T-982; Q-103 (mutator schema), Q-105 (region clock state)
---
*60 questions (13 resolved, 1 partially resolved, 46 open). Last updated: 2026-06-12.*
+8 -7
View File
@@ -5,19 +5,19 @@ Game concept, prototype boundaries, production pipeline, and feature decisions.
---
### Q-002: Scope of v0.1 playable prototype
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Resolution:** The v0.1 prototype framing is superseded. D-117 establishes the tycoon as the v0.2 bookmark; D-166 defines the 6-phase development cascade as the authoritative build order. Prototype scope is determined by the cascade phases, not a standalone v0.1 spec.
- **Date resolved:** 2026-03-24 (D-166 development cascade)
- **Assigned to:** Full team
### Q-004: One campaign spanning all eras or separate era scenarios?
- **Status:** Resolved (implicitly) → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Status:** Resolved (implicitly) → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Resolution:** v0.2 is single-era (contemporary Settled Reach). The development cascade (D-166) defers all multi-era considerations well beyond current scope. The question remains interesting for the full game but is not load-bearing for any active phase.
- **Date resolved:** 2026-04-05 (closed as implicitly resolved)
- **Assigned to:** Gore, Miri to lead discussion
### Q-005: Scale for prototype - locations, characters, factions
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content), [D-118](../decisions/scope.md#d-118-small-business-owner-starting-state--3-configurations), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded), [D-118](../decisions/scope.md#d-118-small-business-owner-starting-state--3-configurations), [D-166](../decisions/architecture.md#d-166-development-cascade--6-phase-first-things-first-build-order)
- **Resolution:** Scale is determined by the development cascade (D-166), not pre-scoped. 301 systems in the star map. All NPCs generated (D-122). Single character type (tycoon, D-117). Starting configurations defined in D-118. The "~10-20 characters" estimate is obsolete — NPC count is a generator output, not a hand-authored target.
- **Date resolved:** 2026-03-24 (D-166 development cascade)
- **Assigned to:** Gestalt, Tyre, Miri
@@ -34,7 +34,7 @@ Game concept, prototype boundaries, production pipeline, and feature decisions.
- **Assigned to:** Team Leader
### Q-011: Character selection and playable characters
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content), [D-115](../decisions/scope.md#d-115-character-creation-scoped-to-skills--bookmark-for-v02), [D-122](../decisions/content.md#d-122-all-npcs-generated--no-named-hand-authored-characters)
- **Status:** Resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded), [D-115](../decisions/scope.md#d-115-character-creation-scoped-to-skills--bookmark-for-v02-superseded), [D-122](../decisions/content.md#d-122-all-npcs-generated--no-named-hand-authored-characters)
- **Resolution:** v0.2 has one playable character type: the tycoon (small business owner starting state, D-118). One bookmark. All NPCs are generated — no canon named characters. Character creation is skills + bookmark only. The "how different are their starting positions?" question is answered by the small business owner economic variation (D-118: bar, logistics contract, storage franchise as starting configurations). The "canon characters vs original" question is answered by D-122: all NPCs generated, no canon characters exist in v0.2.
- **Date resolved:** 2026-03-05 (Where's the Fun? Workshop)
- **Question:** Which characters are playable in the prototype? How different are their starting positions? Can you play canon characters or only original ones?
@@ -58,7 +58,7 @@ Game concept, prototype boundaries, production pipeline, and feature decisions.
- **Source:** Wiki Review Workshop R4, lead interview
### Q-034: PC archetypes
- **Status:** Partially resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (v0.2 scope only: tycoon bookmark, zero investigation)
- **Status:** Partially resolved → [D-117](../decisions/scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content-superseded) (v0.2 scope only: tycoon bookmark, zero investigation)
- **Partial resolution:** v0.2 scope is settled — one bookmark (tycoon, small business owner start per D-118). Smuggler and detective are abandoned for v0.2. The full 8-archetype model, fluid archetype transitions, and "vulnerable window" mechanics remain undesigned for the full game. The "detective, smuggler, tycoon are jobs you can have, not the game's identity" framing (Where's the Fun? Workshop) is the guiding principle for future archetype design.
- **Question:** Should the full game support 8 fluid PC archetypes (Smuggler, Detective, Engineer, Diplomat, Medic, Scholar, Soldier, Merchant) with transition mechanics where archetype shifts during play based on player behavior? The lead approved 8 archetypes with fluid transitions as a game mechanic. v0.1 ships smuggler + detective only (D-027). Full archetype spec, transition triggers, and "vulnerable window" mechanics are undesigned. NOTE: The character-creation-game-setup workshop (Q-011) will address this — coordinate.
- **Assigned to:** Nigel, Gestalt
@@ -71,8 +71,9 @@ Game concept, prototype boundaries, production pipeline, and feature decisions.
- **Source:** Wiki Review Workshop R4, lead interview
### Q-036: District skeleton as generator output
- **Status:** Open
- **Status:** Resolved → [D-222](../decisions/architecture.md#d-222) (spatial hierarchy: Quarter as the skeleton unit), T-957/T-985 (Layer-4 quarter skeleton, done)
- **Question:** For the 300-world model, should the district skeleton (social sites, NPC slots, triangle templates, economic function, access topology) be the atomic output unit of the world generator? D-025 defines social sites as the atomic template unit for hand-authoring. The generator model reframes the district as a composed output from ingredient inputs. How does this interact with D-025?
- **Resolution (2026-06-12):** Answered by events: the generator's atomic output unit shipped as the **QuarterSkeleton** (D-222 naming; T-957 Layer-4 skeleton + T-985 QuarterWorldState, both done) — zoned blocks, reservations, access topology, and building footprints as a composed output. Social-site templates (D-025) remain the authoring unit for the Phase-6 interior/NPC layer that colonizes the skeleton; NPC slots and triangle templates deliberately stay out of the generator output per the cascade order.
- **Assigned to:** Tyre, Gestalt
- **Source:** Wiki Review Workshop R4
@@ -118,4 +119,4 @@ Game concept, prototype boundaries, production pipeline, and feature decisions.
---
*17 questions (6 resolved, 3 partially resolved, 8 open). Last updated: 2026-04-05 (Q-002, Q-004, Q-005, Q-007 closed as resolved)*
*17 questions (7 resolved, 3 partially resolved, 7 open). Last updated: 2026-06-12 (Q-036 closed as resolved — quarter skeleton shipped)*