Move wiki from docs/wiki/ to root wiki/. Add 14 category templates with YAML frontmatter, governance model, hierarchical spatial structure (system > station > district > location). Populate Krenn System entry as first concrete star system. Update cross-references in workshop and sprint docs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
18 KiB
Wiki Review Workshop — Ticket Changes
Author: SI (Project Manager) Date: 2026-02-12 Source: Round 2 outputs from Tyre, Gestalt, Nigel, Gore, Paula, Miri, Ozzie, Mellanie + Round 2 tracking doc
Existing Ticket Updates
| ID | Title | Action | Rationale |
|---|---|---|---|
| #301 | Wiki taxonomy and structure — full future-ready schema | Update description — workshop produced concrete taxonomy rules (Tyre R2 §5, Miri canonical_id). Assign to copy team. | Workshop directly addresses this ticket's scope. |
| #319 | Krenn System wiki entry — first star system | Update description — Miri delivered Krenn System brief in workshop (Round 1+2). Assign to copy team. Will be fulfilled by new ticket for cultural-groups file. | Miri's brief supersedes the original scope. |
| #368 | Knowledge vocabulary for v0.1 content (#309) | Mark done — the wiki at wiki/ is the output. Currently in_progress. |
Workshop is the review of #368's output. |
| #261 | Dual Lens Authoring Guide | No change — still blocking. Workshop confirms its importance. Assign to copy team when ready. | Workshop style guide work complements but doesn't replace #261. |
New Epic: Wiki Review Workshop Outputs
Parent epic for all workshop-produced tickets.
Epic: Wiki Review Workshop Outputs
- Type: epic
- Priority: high
- Team: copy
- Description: Tickets created from the Wiki Review & Content Standards workshop (2026-02-12). Covers style guides, wiki updates, content directory design, PC-as-NPC spec, smuggler content parity, and regional brief adoption.
New Tickets (Grouped by Domain)
A. Wiki Content Updates (copy team)
A1. Apply canonical full names to all NPC wiki pages
- Type: task
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Apply Miri's full name table from Round 2 to all NPC wiki pages. 12 NPCs need surnames added to Core Identity blocks. Full names also surface in environmental text (manifests, shift rosters, Commission kiosk). Source: Miri R2 §1, Paula R2 §3.
- Names: Voss→Arvo Voss, Devra→Devra Talsen, Resha→Resha Neven, Harek→Harek Valde, Renn→Renn Harsk, Pell→Pell Torssen, Drin→Drin Rosta, Sess→Sess Kolvur, Olin→Olin Tavren, Sabel→Sabel Hersk, Tav→Tav Merik, Hael→renamed (see A2).
A2. Rename Hael → Naia Tamm across all wiki files
- Type: task
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Phonetic collision fix (Kael/Hael). Rename to Naia Tamm per Miri R2 §2. Find-and-replace across ~8 wiki files. Triangle 4 becomes Naia-Kael-Sera. Source: Paula R1, Miri R2.
A3. Create wiki/cultural-groups/krenn-system.md
- Type: task
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Compile Miri's Round 1 + Round 2 Krenn System cultural brief into canonical wiki page. Includes: heritage analysis (Finnish-Estonian-Latvian-Norwegian blend), naming conventions, substrate vocabulary (10+ heritage words), social norms, food/drink, greeting conventions, access tier cultural profile. YAML frontmatter with canonical_id. Source: Miri R1+R2.
A4. Create wiki/cultural-groups/_template.md — regional style guide pattern
- Type: task
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Template for any region's style guide. Sections: dominant heritage, naming conventions (first/family/place/business), language echoes, corporate naming influence, 180yr drift patterns, aesthetic markers, access tier cultural profile (Miri R2 §4 addition). Source: workshop brief Topic 3, Miri R1+R2, Gore R2 §2.
A5. Add Cultural Groups section to wiki/index.md
- Type: task
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Add Cultural Groups section to wiki index between Factions and NPCs. Link to krenn-system.md and _template.md. Source: Miri R2 §5, Tyre R2 §5.
A6. Add smuggler-perspective FactId progression text to fact-catalog.md
- Type: task
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: The fact catalog currently has detective-biased progression text. Add smuggler-perspective text for all FactIds where the smuggler starts at KnowsDetails or has a different knowledge path. Source: Paula R1, Gore R2 §3.
A7. Add 5 smuggler-specific entity attributes to entity-attributes.md
- Type: task
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Add to wiki/knowledge/entity-attributes.md: operational_status (reliable/shaky/compromised/burned), exposure_risk (contained/escalating/critical), loyalty_read (solid/conditional/wavering/turning), leverage_known (freeform), social_debt (owes_me/i_owe_them/mutual/none). Brings total from 14 to 19+ canonical keys. Source: Paula R1+R2 §1, Gore R2 endorsement, Tyre R2 §7 validation.
A8. Standardize location shortcodes in monologue-guide.md
- Type: task
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Fix hub_m_ → terminal_m_ inconsistency. Canonical shortcodes: terminal, bar, corridor. Add shortcode reference table to the guide. Add situation overlap rules and mood exclusivity rules (Mellanie R1). Source: Tyre R2 §1, Mellanie R2 §2.
A9. Add Thematic Question field to Tier 1 NPC profiles
- Type: task
- Priority: low
- Team: copy
- Parent: workshop epic
- Description: Add "## Thematic Question" section to Kael and Sera profiles — each character's answer to "Is this enough?" Authoring guidance, not mechanical. Required for Tier 1 and MIRROR/1.5. Recommended for Tier 2. Source: Gore R1+R2, Mellanie R2 endorsement.
A10. Stub NPC profile for Nils Davan (off-stage)
- Type: task
- Priority: low
- Team: copy
- Parent: workshop epic
- Description: Nils Davan is referenced in 5+ NPC profiles but has no wiki page. Create minimal off-stage profile: Core Identity, relationship to Kael (siblings), role in ring (upstream pressure), known attributes by other NPCs. Source: Tyre R2 §8.
A11. Fix Triangle 1 (Hub Power) — add Volume Escalation decision node
- Type: story
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: T1 is the weakest triangle (Gestalt R1, Paula R1). Fix: add a Volume Escalation decision where Nils (via Renn) demands double volume, Voss refuses. Smuggler chooses: side with Nils (louder signal), side with Voss (internal tension), or split the route (new exposure surface). Each option cascades into T2 and T5 with different detective observability. Source: Gestalt R2 §4 (full YAML spec provided). Includes Nils partial presence via lattice message (~5-8 lines).
A12. Create environmental text examples file
- Type: task
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Create wiki/authoring/environmental-text-examples.md with Krenn-voiced examples for 4 text types: bar menu, safety notice, news ticker cycle, corridor graffiti. Include cultural notes and monologue pairings (smuggler + detective). Source: Miri R2 §3 (4 examples), Mellanie R2 §1 (4 examples). Merge both sets.
B. Style Guides & Spec Documents (copy team)
B1. NPC Authoring Style Guide — combined document
- Type: story
- Priority: critical
- Team: copy
- Parent: workshop epic
- Description: Assemble the unified NPC Authoring Style Guide. Structure per Mellanie R2 §2 TOC: Part 1 (tier templates — Paula), Part 2 (authoring rules — Mellanie conventions, Gestalt constraints, Ozzie anchor line), Part 3 (regional culture — Miri), Part 4 (content pipeline — Tyre). Includes per-tier validation checklists, tag usage rules, mechanical constraints, voice discipline. This is the repeatable "if someone new joins, they can produce consistent content" deliverable. Source: all Round 2 agents.
B2. THE MIRROR pattern spec / Hael elevation
- Type: story
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Define the honest-character NPC archetype. Gore proposes THE MIRROR (new pattern, 50-70 lines, no secret/tell/contradiction). Paula proposes Tier 1.5 (Production Emotional NPC — same depth, different name). Ozzie proposes enhanced Tier 2 (+15-20 lines). All agree: no contradiction arc, Tier 1 emotional depth, Hael (now Naia) is first instance. Project lead to decide formal pattern vs enhanced Tier 2. Output: template spec + Naia elevation to chosen depth. Source: Gore R2 §4, Paula R2 §4, Ozzie R2 §1. Blocks: Naia content authoring.
B3. PC-as-NPC unified spec
- Type: story
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Unified spec for NPC-to-PC upgrade. Sections: B1 (starting knowledge graph), B2 (starting relationship map), B3 (reverse knowledge — bidirectional, Gestalt's critical insight), B4 (orientation monologue — Ozzie's first 60 seconds), B5 (agency boundaries), B6 (authored relationship stubs — Gore's requirement), B7 (tell inversion). Includes 9-step conversion checklist for content authors and bidirectional validation rules. v0.1 scope: 2 PC briefs (smuggler, detective). Source: Gestalt R2 §2, Paula R2 §2, Nigel R2 §4, Ozzie R2.
B4. Smuggler voice card + moral arc spec
- Type: story
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: Two deliverables: (1) Smuggler voice card — paired examples with detective showing dual-lens register differences (Mellanie R2 §3). Thinks in people vs data, first names vs surnames, fragments vs complete sentences, Krenn substrate vocabulary. (2) Smuggler moral arc — 4 phases (Comfort→Doubt→Reckoning→Compromise), smuggler-specific FactIds (operations.cover_integrity, operations.personnel_stability, operations.institutional_pressure, operations.moral_weight, operations.exit_cost), monologue triggers (sense_atmosphere_shift, witness_exposure_risk, observe_loyalty_fracture, feel_complicity_deepen, recognize_no_exit, read_the_room). Source: Gore R2 §3, Paula R2 §1, Mellanie R2 §3.
B5. NPC-format briefs for both PCs — Concept A v0.1
- Type: story
- Priority: high
- Team: copy
- Parent: workshop epic
- Description: When you play the smuggler, the detective exists as an NPC. When you play the detective, the smuggler exists as an NPC. Create NPC-mode behavior scripts for both PCs (5-7 routine entries each), reverse dual-lens notes (how each NPC sees the other PC), observation monologue for PC seeing other-PC-as-NPC (3-5 lines per character, ~20-30 authored items total). The second-playthrough wow moment depends on this. Source: Nigel R2 §4, Ozzie R2.
C. Content Directory & Schema (split: copy for spec, server for implementation)
C1. Content directory structure design doc
- Type: story
- Priority: high
- Team: copy
- Description: Document the converged content directory structure from Tyre R2 §1 + Gestalt R2 §1. Key conventions: _meta/ + _schema/ (infrastructure, underscore prefix), global/ + districts/ (game content, no underscore). Includes mod overlay mechanics (ADD/REPLACE/MERGE), canonical_id format ({system}.{station}.{district}.{type}.{slug}), district as atomic pack unit. Source: Tyre R2, Gestalt R2, Nigel R2. Informs all implementation tickets.
C2. Create content/ directory skeleton
- Type: task
- Priority: high
- Team: server
- Description: Create the content/ directory tree matching the workshop-converged structure. _meta/, _schema/, global/ (factions, technology, contraband, knowledge, enums, regions), districts/sova-transit/ (district.yaml, npcs/, locations/, templates/, triangles/, lines/). Empty YAML stubs with comments. Source: Tyre R2 §1.
- Blocked by: C1
C3. Content schema definitions (YAML Schema files)
- Type: story
- Priority: high
- Team: server
- Description: Create _schema/ directory with validation schemas: npc.schema.yaml (with tier-conditional rules), location.schema.yaml, faction.schema.yaml, template.schema.yaml, fact.schema.yaml, dialogue.schema.yaml, monologue.schema.yaml, district.schema.yaml, pool.schema.yaml. Map from Gestalt R1 hard/soft requirement tables. Source: Gestalt R1 tables, Tyre R2 §3.
- Blocked by: C1
C4. Create global/enums/ YAML files from D-035
- Type: task
- Priority: medium
- Team: server
- Description: Populate global/enums/ with canonical enum values from D-035: situations.yaml (13 values), topics.yaml (9), moods.yaml (8), triggers.yaml (9), access-tiers.yaml (5), activities.yaml (new — from Gestalt routine format + Miri cultural patterns). Source: Tyre R2 §1+§4, Gestalt R2 §5.
- Blocked by: C2
C5. Create global/knowledge/entity-attributes.yaml
- Type: task
- Priority: medium
- Team: server
- Description: Machine-readable entity attribute definitions. 14 existing detective-oriented keys + 5-6 smuggler-specific keys (Paula/Gore). Total: 19+ canonical keys. Source: Tyre R2 §7, Paula R2 §1.
- Blocked by: C2
C6. Create pools.yaml for v0.1 seed-time selection
- Type: task
- Priority: medium
- Team: server
- Description: Create districts/sova-transit/pools.yaml with v0.1 single-candidate pools: friend_smuggler (kael-davan), friend_detective (sera-venn), bar_regulars, compromised_inspector, primary_contraband. Architecture supports N candidates; v0.1 has 1 each. Source: Tyre R2 §2, Nigel R2 §1-2, Gestalt R2 §3.
- Blocked by: C2
C7. Create template YAML files with role slot definitions
- Type: task
- Priority: medium
- Team: server
- Description: Create districts/sova-transit/templates/ YAML for 3 social sites: logistics-hub.yaml, bar.yaml, smuggling-ring.yaml. Each declares named role slots with count ranges, required flags, pool references, and triangle constraints. Source: Tyre R2 §6, Nigel R2 §2.
- Blocked by: C2
C8. Create triangle YAML files for 5 v0.1 triangles
- Type: task
- Priority: medium
- Team: server
- Description: Create districts/sova-transit/triangles/ YAML for: hub-power.yaml (Nils-Voss-Smuggler), worried-knowledge.yaml (Maret-Voss-Kael), bar-tensions.yaml (Lera-Torek-Olin), worried-partner.yaml (Naia-Kael-Sera), informant-question.yaml (Pell-Renn-Devra). Includes updated T1 with volume escalation decision node. Source: Tyre R2 §1, Gestalt R2 §4.
- Blocked by: C2
C9. Implement make validate-content CLI
- Type: story
- Priority: high
- Team: server
- Description: Build structural + tier-conditional content validation. Reads _schema/ definitions, validates all YAML in content/. v0.1 scope: structural validation (required fields, type checks, enum matching) + tier-conditional rules (Tier 1 needs contradiction arc, Tier 2 needs all 10 axes). v0.2: cross-reference validation (FactId existence, NPC slug resolution). Source: Tyre R2 §3.
- Blocked by: C3
C10. Pre-commit FactId typo check
- Type: task
- Priority: medium
- Team: ci
- Description: Add grep-based pre-commit check that validates FactId references in YAML content files against the canonical facts.yaml. Catches typos like contraband.ring_exist vs contraband.ring_exists. Cheap v0.1 bridge until full cross-reference validation lands. Source: Tyre R2 §3, Mellanie R1.
D. Design Specs
D1. cultural_gate modifier for dialogue access — design doc
- Type: story
- Priority: medium
- Team: copy
- Parent: workshop epic
- Description: Design the cultural_gate modifier that adjusts dialogue disclosure based on cultural insider/outsider status, independent of relationship state. Krenn culture reduces disclosure to outsiders (detective) regardless of trust level. Not a new access tier — a modifier on existing tiers. Needs mechanical spec from Gestalt + feasibility from Tyre. Source: Gore R2 §2.
D2. Seed configuration schema design
- Type: story
- Priority: medium
- Team: server
- Description: Design the seed configuration schema — what the randomizer produces at game-start. Records: FRIEND selections, social site population, compromised NPC, contraband type, entanglement overrides. Saved with game state. Constrained by D-029 ratio (30/50/20). Location: runtime/ (not content/). Source: Nigel R2 §2+§4-6, Tyre R2 §2.
D3. Secondary contraband variant FactId text
- Type: task
- Priority: low
- Team: copy
- Parent: workshop epic
- Description: Write variant KnowsDetails text for contraband.secondary_cargo FactId: medical-grade replacements, severance equipment, enhanced capability mods. Primary contraband (lattice components) is fixed per district. Secondary varies per seed. Source: Nigel R2 §3.
D4. News ticker headline pool
- Type: task
- Priority: low
- Team: copy
- Parent: workshop epic
- Description: Write 40-50 news ticker headlines for the Meridian feed at Lera's. Mix of: freight/commodity data, Assembly politics, local infrastructure, sports, Commission advisories. Randomizer selects 15-20 per seed. Each headline should work as a dual-lens trigger. Source: Nigel R2 §4, Mellanie R2 §1 (7 examples delivered).
Dependency Map
Workshop Epic
├── A1 (full names) ── no deps
├── A2 (Hael→Naia rename) ── no deps
├── A3 (Krenn brief) ── no deps
├── A4 (regional template) ── no deps
├── A5 (wiki index update) ── blocked by A3, A4
├── A6 (smuggler FactId text) ── blocked by B4
├── A7 (smuggler attributes wiki) ── no deps
├── A8 (shortcode fix) ── no deps
├── A9 (thematic question) ── blocked by B2
├── A10 (Nils stub) ── no deps
├── A11 (Triangle 1 fix) ── no deps
├── A12 (env text examples) ── blocked by A3
├── B1 (NPC style guide) ── blocked by A3, A4, A7, B2, B4
├── B2 (MIRROR/Hael spec) ── no deps
├── B3 (PC-as-NPC spec) ── blocked by A7
├── B4 (smuggler voice + moral arc) ── blocked by A7
├── B5 (PC briefs v0.1) ── blocked by B3
├── C1 (content dir design doc) ── no deps
├── C2 (content skeleton) ── blocked by C1
├── C3 (schema definitions) ── blocked by C1
├── C4 (enum YAMLs) ── blocked by C2
├── C5 (entity-attributes YAML) ── blocked by C2
├── C6 (pools.yaml) ── blocked by C2
├── C7 (template YAMLs) ── blocked by C2
├── C8 (triangle YAMLs) ── blocked by C2
├── C9 (validate-content CLI) ── blocked by C3
├── C10 (FactId pre-commit) ── no deps
├── D1 (cultural_gate design) ── no deps
├── D2 (seed config schema) ── no deps
├── D3 (secondary contraband text) ── no deps
├── D4 (news ticker pool) ── no deps
Summary
- Existing tickets updated: 4 (#301, #319, #368, #261 noted)
- New epic: 1 (Wiki Review Workshop Outputs)
- New stories: 9 (A11, B1-B5, C1, C3, C9, D1, D2)
- New tasks: 19 (A1-A10, A12, C2, C4-C8, C10, D3, D4)
- Total new tickets: 29 (1 epic + 9 stories + 19 tasks)
- Teams: copy (21), server (7), ci (1)
Compiled by SI. Source: Wiki Review Workshop Round 2 outputs, all 7 agents + tracking doc.