Phase 3 launch sprint. 13 tickets across server, client, copy. Atlas generation pipeline (terrain_reference, generate_atlas.py, Gemma naming), brand layer DB schema, Atlas implant panel (3 levels + heightmap viewer + overlays), hand-authored templates for Lendel + 4 core systems, brand corp TOML, brand_templates.toml (120-130 archetypes), wiki glossary, world seed wiring. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
11 KiB
Sprint 35: Atlas — Copy Tasks
Goal: Launch Phase 3 — hand-author the atlas quality bar for Lendel and 4-5 core systems, seed the brand layer with canonical brand corp TOML entries and 120-130 archetype templates, and create the wiki glossary as a canonical noun reference for all future authoring.
Branch: sprint-35/copy
Agents: Mellanie (author), Miri (worldbuilding)
New Tickets
| # | Title | Blocked by |
|---|---|---|
| #840 | Wiki glossary — canonical proper nouns, factions, locations, terminology | — |
| #830 | Add Calloway, VGV, thrds, Bífröst Marmor to tier1.toml | — |
| #831 | Author brand_templates.toml — 120-130 archetypes with corridor naming patterns | — |
| #837 | Hand-author atlas templates — Lendel and 4-5 core systems | — |
| #838 | Review and hand-refine generated atlas content across all inhabited bodies | #832 (server), #833 (server) |
Key Decisions
decisions/economics.md— D-189 (brand layer architecture — section 4 naming patterns, section 1 taxonomy, section 11 named brand corps table), D-190 (brand volume calibration — population-relative scale; apply when writing wiki volume figures), D-185 (brands are not commodities — brand corps register as commodity demand nodes), D-175 (corp taxonomy — Tier 1 TOML record fields), D-182 (TOML pipeline — sync rule: wiki corp entries and TOML records must match)decisions/architecture.md— D-191 (Atlas Phase 3 — markers.json schema, settlement data model, Gemma naming patterns the hand-authored templates must match)decisions/content.md— D-036 (Sova/Krenn as canonical v0.1 setting), D-093 (Sova district spatial layout), D-095 (Horizon stations)
Notes
#840 — Wiki glossary
Start here. This ticket is the most urgent: it was triggered by a Sprint 34 copy review incident where "Gatebuilder" was used instead of the canonical "Founders." That kind of drift will recur in Phase 3 authoring at scale.
Create wiki/glossary.md. Canonical sections:
- Factions: Concord Assembly, Compact of Westphalia, Commission (full name: ?), Gate Corporation, Syndicate
- Precursor terms: Founders (canonical), NOT Gatebuilders (obsolete), NOT Builders, NOT Precursors without qualification
- Currencies: Tractus (Assembly), Mark (Compact), Sol (shadow/untracked)
- Corridors: inner_corridor, north_reach, east_reach, west_reach, south_reach, frontier — include canonical descriptions
- Key locations: Sirius (GJ 244A / S-067, Concord Assembly seat), Groombridge (GJ 380, financial clearing), Lendel (GJ 380c, inner core capital), Sova Transit District (Krenn System, canonical v0.1 setting)
- Economics terms: tâtonnement (not tatonnement or tâtonnement), Leontief (capitalized), tractus (currency lowercase when written in prose)
- Wiki terminology: planet_class (not biome_summary — D-188 rename), system_id format (GJ catalog strings)
Format: simple alphabetical list with the canonical form bolded and "NOT [wrong form]" notes where drift has been observed. Keep it practical — this is a quick-reference tool for authors, not an encyclopedia.
#830 — Add Calloway, VGV, thrds, Bífröst Marmor to tier1.toml
The 4 canonical brand corps exist in wiki pages but are missing from wiki/economics/corporations/tier1.toml. Add full TOML records for each, per the field schema at the top of that file.
Key fields to get right (cross-reference D-189 section 11 for confirmed details):
- Calloway Distillery:
terroir,north_reach,premium_spiritsas primary commodity input,shadow_connections = false,gate_energy_dependent = true - Vins de Grand Vide (VGV):
terroir,west_reach, requires F8V stellar spectrum per D-177 (terroir_locked = true in brand_products — note this constraint here),premium_spirits - thrds:
heritage_craft,north_reach,luxury_textilesas primary commodity input - Bífröst Marmor:
terroir,north_reach/ Compact affiliation,bloc_affiliation = compact,geological_materialas commodity input
The server team (#827) will author the brand_products TOML entries for these corps. Your task is the tier1.toml records (corporation identity, behavioral archetype, primary commodities as inputs). Coordinate with Dudley to avoid duplicating data: tier1.toml = corp identity; brands.toml (server creates) = product records.
The D-182 sync constraint requires wiki corp pages and TOML records to match. Check that each of the four corps has a wiki page; flag any discrepancy in the PR description.
#831 — Author brand_templates.toml
Create wiki/economics/archetypes/brand_templates.toml with approximately 35-40 archetypes × 3 sub-variants = 120-130 template definitions.
Each template defines (per D-189):
brand_category(one of 8: terroir, heritage_craft, tech_premium, cultural, service_premium, commodity_branded, design_heritage, platform_catalogue)commodity_inputswith quantity rangespremium_rangescarcity_class(capped / constrained / scalable / unlimited)value_trajectory(appreciating / depreciating / timeless)scale_tier(local / regional / reach-wide)naming_pattern— corridor-specific per D-189 section 4:north_reach→ British/Australian inflection (surnames, place names, compound nouns)east_reach→ Korean/Japanese patternswest_reach→ German/Dutch/Nordic patternssouth_reach→ Portuguese/Swahili patternsinner_corridor→ pan-corridor neutral (no strong cultural inflection)frontier→ founder surname + noun (e.g., "Vasquez Feeds", "Okafor Fabrication")
These templates feed the server's generate_brands pipeline (#829, Sprint 36). The templates are authored content — they define the cultural texture of 10,000 generated minor brands. Quality here directly affects world texture density.
Archetypes to cover: at minimum 4-5 per brand_category, distributed across corridors. Aim for balance: each corridor should have at least 10 templates that feel culturally native. Sub-variants within an archetype should vary on scale_tier and value_trajectory (e.g., a local terroir brand vs. a regional one vs. a reach-wide budget version of the same category).
Volume calibration: When specifying production volumes or market penetration in template descriptions, apply D-190 population-relative scale. "40M units" without a reference population is not meaningful at Reach scale. Annotate as "40M (west_reach corridor, ~10B addressable)" or similar.
#837 — Hand-author atlas templates: Lendel and 4-5 core systems
Hand-author complete markers.json content for Lendel (GJ 380c) and 4-5 other high-visibility systems. These are the quality bar templates — they define what the generator should produce, serve as few-shot examples for Gemma 2 naming prompts, and establish the authoring conventions for Phase 3.
markers.json schema (per D-191 section 8):
{
"cities": [
{
"name": "...",
"lat": ..., "lon": ...,
"population_tier": 1-6,
"primary_function": "capital|trade|industrial|port|...",
"gate_terminal": true|false,
"continent_id": "..."
}
],
"roads": [{"path": [[lat, lon], ...], "connects": ["city_a", "city_b"]}],
"railroads": [{"path": [[lat, lon], ...], "connects": ["city_a", "city_b"]}],
"pois": [{"name": "...", "kind": "...", "lat": ..., "lon": ...}],
"rivers": [...existing geometry..., "name": "..."],
"oceans": [...existing geometry..., "name": "..."],
"mountain_ranges": [...existing geometry..., "name": "..."]
}
The rivers, oceans, and mountain_ranges arrays already exist in markers.json from the planet-gen pipeline — they have geometry but name: null. Fill the names and add the cities/roads/rail/POIs.
Authoring rules:
- Validate city placements visually against the heightmap PNG — not in water, not on mountains, reasonable distribution across habitable terrain
- Roads/rail should follow terrain corridors (valleys, coastal plains), not cross water without reason
- Names must be culturally appropriate to the system's corridor (Lendel is inner_corridor/inner_core — pan-corridor neutral)
- Gate terminal: largest city unless lore suggests otherwise
- City count: use
floor(log10(pop / 1_000_000))as baseline; modify for narrative weight of the system
Priority systems to author (suggest Lendel plus 4 from): Sova (Krenn System — canonical setting, D-036), the Sirius system (Concord Assembly seat, D-144), one Compact system (Mark-zone texture), one frontier system (sparse/rough). Miri to select the remaining 4 based on wiki depth and lore importance.
These hand-authored files should be checked into wiki/star-systems/ alongside the heightmap PNGs before the sprint ends — they are consumed by the heightmap viewer (#835) and the Gemma 2 naming pipeline (#833) as few-shot examples.
#838 — Review and hand-refine generated atlas content
Blocked by #832 and #833 (server). Begin only after make atlas-generate has run and produced markers.json output for inhabited bodies.
Review pass across all 273 inhabited bodies. Focus areas:
- City placements: not in water, not on mountains, reasonable geographic distribution
- Names: culturally appropriate to corridor, no Earth-name leaks (blocklist should catch most, review the rest), no duplicates within a body
- Roads/rail: follow terrain, don't cross water without a logical reason (major trade route, bridge)
- Lore consistency: key systems should have city names that match wiki canon where specified
Refinements go directly into markers.json files. Track which bodies needed correction and what kind — this feedback informs generator tuning for Sprint 36.
Uninhabited bodies (no cities) get geographic feature names only; focus review effort on the 273 inhabited bodies.
This ticket may complete in sprint or carry to Sprint 36 depending on pipeline timing — #832 and #833 completing early in the sprint is the prerequisite.
Dependency Chain
#840 (glossary) — start here, standalone, unblocks all future authoring
#830 (brand corps in tier1.toml) — standalone, parallel
#831 (brand_templates.toml) — standalone, parallel
#837 (hand-author atlas templates) — standalone, unblocked; complete before #833 runs (few-shot examples)
#832 (server) + #833 (server) → #838 (review generated content)
#840, #830, #831, and #837 are all unblocked and can run in parallel. Complete #837 before the server team runs #833 (the Gemma naming pass uses the hand-authored templates as few-shot examples). #838 is the end-of-sprint pass once generation completes.
PR Workflow
tea pr create --repo jpmschweitzer/settled-reach --login schweitz \
--title "content(atlas): hand-authored templates, brand TOML, wiki glossary" \
--description "Sprint 35 copy work: Lendel atlas templates, brand corps tier1, brand_templates.toml, glossary" \
--base main --head sprint-35/copy