Files
settled-reach/docs/sprints/sprint-34/planning.md
T
jpmschweitzerandClaude Sonnet 4.6 9d9ea96be1 chore(meta): plan Sprint 34: Pulse
Close Phase 2 — wire econ-sim into game server tick loop, expose price
history and trade flows via implant insert panel, add economics debug
console commands for runtime event injection and parameter mutation.

New tickets: #821 (server tick integration), #822 (IPC bridge v21),
#823 (debug command handler), #824 (economics insert panel),
#825 (debug console econ commands). Existing: #810, #785, #811, #748,
#814, #695. 11 tickets total across server, client, copy, planning.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 16:20:29 +02:00

104 lines
5.7 KiB
Markdown

# Sprint 34: Pulse — Planning Tasks
**Goal:** Close Phase 2 — wire the economics simulation into the live game, expose price history and trade flows in the implant, and make the economy observable and tweakable at runtime.
**Branch:** `sprint-34/planning`
**Agents:** Gestalt (systems), Burnelli-Sheldon (economics), Tyre (technical), Miri (worldbuilding), Qatux (documenter), SI (project manager)
## Tickets
| # | Title | Blocked by |
|---|-------|------------|
| #748 | Phase 3: Planetary/moon maps and station layouts — Atlas of the Reach | #747 (in progress → closes this sprint) |
| #811 | Brand layer design | — |
## Context to Read Before Discussion
For **#811 (Brand layer design):**
- `decisions/economics.md` — D-185 (Brands Are Not Commodities), D-184 (Commodity Catalog — what exists), D-173 (Commodity Taxonomy — three-tier structure)
- `decisions/scope.md` — D-131 (broad economic verb vocabulary), D-118 (small business owner starting state — brands are the Phase 3 player layer)
- `wiki/economics/commodities.toml`, `wiki/economics/production_chains.toml`
For **#748 (Phase 3 breakdown):**
- `CLAUDE.md` — Development cascade table (Phase 3 = Planetary/moon maps, deliverable = Atlas of the Reach)
- `decisions/architecture.md` — D-093 (Sova Transit District spatial layout), D-094 (district spatial hierarchy), D-095 (Horizon stations and gate infrastructure)
- Sprint 33 deliverable: `server/data/systems.db` populated with 300+ systems, gate links, currency zones
- `docs/atlas/` — existing atlas content
---
## #811 — Brand Layer Design
**Type:** Planning discussion — produces a D-record in `decisions/economics.md`
**What this is:** The brand/luxury goods system sits on top of the commodity layer (D-185 confirms brands are NOT commodities). Brands consume commodities as inputs. Brand pricing is driven by cultural/emotional/want mechanics, not tâtonnement. This design work answers the Phase 3 question: how does a player engage with the economy as a participant (producer/trader/brand-builder) rather than an observer?
**Discussion rounds:**
**Round 1 — Inventory (what exists, what is missing)**
- What is the full design space of "brand" in the Reach? (Gestalt, Miri)
- What D-records already constrain brand design? (Tyre reads economics.md, scope.md)
- What is the player's economic verb set when brands exist? (Burnelli-Sheldon, Gestalt)
**Round 2 — Proposals**
- Brand representation: is a brand a DB entity, a modifier on a commodity, or a separate production chain layer? (Tyre, Burnelli-Sheldon)
- Cultural pricing model: how does a brand's cultural origin affect demand across currency zones? (Miri, Gestalt)
- Player access: what verbs does a player have toward an existing brand vs. founding one? (Gestalt)
**Round 3 — Convergence**
- Draft one D-record covering: brand representation in the data model, cultural demand pricing, player access verbs, and the boundary with Phase 2 commodity tâtonnement
- SI creates follow-up implementation tickets for Phase 3 sprint
**Output:** D-NNN in `decisions/economics.md` (claim ID via `tooling/db/decision claim D economics "Brand layer architecture"`). Qatux files the record. SI creates 2-4 Phase 3 implementation tickets from the decision.
**CONSTRAINT:** This design session covers brand layer architecture only. No character creation, no tycoon states, no apartment generators. Phase 4 work is out of scope until Phase 3 delivers.
---
## #748 — Phase 3 Planetary Maps Breakdown Workshop
**Type:** Planning discussion — produces a sprint-ready ticket breakdown for Phase 3
**What this is:** Phase 3 deliverable is the Atlas of the Reach (implant app) — region-level maps at hundreds-of-km scale. Cities, rivers, mountains, rail lines, gate/portal locations, road hierarchy, named areas. This workshop answers: what is the minimal scope for a shippable Phase 3, and what tickets does it generate?
**Timing:** This discussion runs AFTER the server team confirms Phase 2 is closing (economics in-game, IPC bridge live). Do not start this discussion until Sprint 34 server tickets are at least in_progress.
**Discussion rounds:**
**Round 1 — Inventory**
- What does Phase 3 require that does not exist? Read `docs/atlas/`, existing world data in `server/data/systems.db`. (Miri, Tyre)
- What systems from Phase 2 does Phase 3 build on (gate network, system data, planet_class)? (Gestalt, Tyre)
- What is the rendering target? (Implant app panel — same component library as economics panel?) (Tyre)
**Round 2 — Scope definition**
- Define the MVP Atlas: which systems get maps first? (Miri — Sova/Krenn as canonical first-system per D-036)
- Data authoring pipeline: how are planetary maps authored? Hand-drawn overlays on procedural heightmaps? Pure procedural? (Miri, Gestalt)
- Implant app design: what does the Atlas panel look like? Click-through from the star map? (Tyre)
**Round 3 — Ticket breakdown**
- Break Phase 3 into 4-8 implementation tickets across server, client, copy, visual teams
- Assign team and priority to each
- SI creates the tickets and blocks them appropriately under #748
**Output:** 4-8 new tickets (server + client + copy + visual) with team assignments, priorities, and explicit dependencies. SI creates them immediately at round end.
---
## Dependency Chain
```
#811 (brand layer design) — run early in sprint, unblocks Phase 3 planning
#748 (Phase 3 breakdown) — run after server Sprint 34 tickets are in_progress
```
## PR Workflow
Planning branch produces decisions and ticket updates only — no code. Commit decisions and close tickets:
```bash
tea pr create --repo jpmschweitzer/settled-reach --login schweitz \
--title "planning(economics): brand layer design and Phase 3 breakdown" \
--description "Sprint 34 planning work" \
--base main --head sprint-34/planning
```