Files
settled-reach/docs/sprints/sprint-35/copy.md
T
jpmschweitzerandClaude Sonnet 4.6 521c682175 chore(meta): plan Sprint 35: Atlas
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>
2026-04-11 22:01:42 +02:00

11 KiB
Raw Blame History

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_spirits as 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_textiles as primary commodity input
  • Bífröst Marmor: terroir, north_reach / Compact affiliation, bloc_affiliation = compact, geological_material as 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_inputs with quantity ranges
  • premium_range
  • scarcity_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 patterns
    • west_reach → German/Dutch/Nordic patterns
    • south_reach → Portuguese/Swahili patterns
    • inner_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