Files
settled-reach/docs/sprints/sprint-25/copy.md
T
jpmschweitzerandClaude Opus 4.6 a301fdab47 fix(content): purge all remaining Krenn references
Replace every occurrence of "Krenn" with "Van Maanen's Star" (or
contextual variants like VMS for locale codes, Van Maanen for proper
noun contexts). Covers CHANGELOG, briefings, workshop docs, sprint
briefings, environmental text examples, templates, ticker content,
and architecture docs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 01:24:04 +01:00

4.3 KiB

title, description, type, status, sprint, team
title description type status sprint team
Sprint 25 — Copy Briefing Zone identity spec, Van Maanen's Star culture profile sprint archived 25 copy

Sprint 25: Emerge — Copy Tasks

Goal: Prove the generator can extrapolate from minimal input — a rural Van Maanen's Star area AND an industrial Van Maanen's Star zone from zone type and culture profile alone, no per-location spec. Two zone types, one culture, side-by-side comparison.

Branch: copy Agents: Miri (worldbuilding lead), Mellanie (voice/dialogue review)

New Tickets

# Title Blocked by
#609 Zone identity spec #611 (server defines schema first)
#610 Van Maanen's Star culture profile #611 (server defines schema first)

Use tooling/db/ticket show <id> for full details.

Key Decisions

  • decisions/scope.md — D-114 (generator-first proof-of-life), D-119 (generator spike critical path)
  • decisions/content.md — D-121 (voice is culture-driven, job as modifier), D-122 (all NPCs generated), D-128 (culture implicit in starting location), D-129 (NPC personality: traits + behavior first)
  • decisions/architecture.md — D-012 (chunk-based map, borderless generation future)

Notes

How this sprint works for copy

Server starts first. Tyre (#611) defines ZoneSpec, CultureProfile, and NpcBlueprint as Rust structs and writes example RON files showing the expected format. The Rust structs ARE the schema — no separate schema file to maintain. Copy fills real content into that format.

Wait for #611 to deliver its example RON before writing the real files. Tyre also ships a RON validator CLI (tooling/validate-content <file.ron>) that deserializes into the actual Rust structs and prints errors. Use it to lint your files before submitting.

Coordinate with Tyre at sprint start to agree on file locations (content/global/zone-identity-spec.ron and content/global/culture-van-maanens-star.ron are the expected paths, but Tyre's struct design is authoritative).

#609 — Zone identity spec

  • Output: RON file the generator deserializes at runtime. Schema defined by Tyre's ZoneSpec struct from #611.
  • Minimum two zone types with real content: rural and industrial. These are the two the sprint proof runs. Remaining types can be stubs with plausible values.
  • The taxonomy must make the generator produce visibly different output per zone type — if rural and industrial look the same, it has failed.
  • Content scope: what varies between zone types (density, pace, social site mix, NPC role distribution). Not prose worldbuilding — structured parameters that the Rust generator can read.
  • Do not invent the schema. Read #611's example RON first.

#610 — Van Maanen's Star culture profile

  • Output: RON file the generator deserializes at runtime. Schema defined by Tyre's CultureProfile struct from #611.
  • Must provide enough cultural signal that generated NPCs feel Van Maanen's Star, not generic-space-village.
  • Sprint scope: name lists (not phoneme generation rules — Tyre's generator picks from lists), speech markers, economic values, social norms.
  • Phoneme-based name generation is explicitly out of scope for this sprint. A curated list of Van Maanen's Star-sounding names is sufficient.
  • Existing Van Maanen's Star atmosphere and naming examples in decisions/content.md D-036 (amended post-workshop) are a starting point. Go deeper on concrete values (specific speech markers, actual name examples) not broader on atmospheric description.
  • Do not invent the schema. Read #611's example RON first.

Dependency Chain

server #611 (schema + validator) ──> #609 (zone spec RON)  ──┐
                                                              ├──> server #612 (generator)
                                ──> #610 (culture RON) ──────┘

Server defines the shape. Copy fills it. Both #609 and #610 can be written in parallel once #611 delivers its example RON.

PR Workflow

When ready to submit, create a PR with tea CLI. All flags are required to avoid TTY prompts (see CLAUDE.md "Gitea access" section):

tea pr create --repo jpmschweitzer/settled-reach --login schweitz --title "feat(copy): zone identity spec and Van Maanen's Star culture profile" --description "body" --base main --head copy