Files
settled-reach/docs/sprints/sprint-26/joint.md
T
jpmschweitzer 23d9ff0a58 Merge remote-tracking branch 'origin/main' into planning
# Conflicts:
#	CHANGELOG.md
#	content/_meta/README.md
#	content/_meta/npc-authoring-style-guide.md
#	wiki/_templates/cultural-group.md
#	wiki/_templates/institution.md
#	wiki/_templates/star-system.md
#	wiki/characters/devra.md
#	wiki/characters/drin.md
#	wiki/characters/harek.md
#	wiki/characters/lera-sessik.md
#	wiki/characters/maret-korr.md
#	wiki/characters/naia-tamm.md
#	wiki/characters/nils-davan.md
#	wiki/characters/pell.md
#	wiki/characters/renn.md
#	wiki/characters/resha.md
#	wiki/characters/sabel.md
#	wiki/characters/sera-venn.md
#	wiki/characters/torek-lintar.md
#	wiki/characters/voss.md
#	wiki/star-systems/krenn/index.md
2026-03-14 00:24:53 +01:00

87 lines
4.5 KiB
Markdown

---
title: "Sprint 26 — Joint Briefing"
description: "Voice pipeline integration coordination, behavior primitive format agreement"
type: sprint
status: archived
sprint: 26
team: "joint"
---
# Sprint 26: Clean House — Joint
**Goal:** Ship the voice pipeline to production by integrating observer, removing v0.1 dead weight, and stabilizing the codebase.
## Pre-Sprint
No blocking decisions or schema work required before implementation starts. All design decisions for this sprint are locked (D-138, D-122, D-117).
One cross-team coordination point must happen at sprint start:
| Item | Owner | Needed by |
|------|-------|-----------|
| Behavior primitive format agreement | Server (#633) | Copy (#634) cannot start until format is specified |
Server team (#633) should document the behavior primitive data structure (as a Rust type or YAML schema) and share it with copy team before #634 begins. This is a 1-day coordination item, not a blocker on other tickets.
## Sprint Completion Proof
The sprint is done when all of the following are observable:
1. **Voice pipeline live end-to-end:** Start the game with a generated Van Maanen's Star NPC visible. Observable behaviors and dialogue lines for that NPC are voiced (culture-inflected, not raw base text). A `Factual`-type line (containing a number or denial) shows as base text, not LLM output.
2. **Client toggle functional:** Settings panel contains an AI-Enhanced Dialogue toggle. Disabling it causes the server to serve base text. Hardware detection runs at startup; if the system cannot run the model, the toggle is greyed out with an explanation.
3. **v0.1 content deleted:** `server/src/content/` does not exist. `content/campaigns/main/systems/van-maanens-star/stations/sova/districts/transit/dialogue/` and `monologue/` are gone. `content/global/knowledge/investigation.yaml` and `content/global/factions/lattice-commission.yaml` are gone. `cargo check` passes with no references to deleted modules.
4. **D-records filed:** `decisions/content.md` reflects the amended D-123 and the LLM voice pipeline workshop outputs. D-138 Spike 2 findings are formally in the record.
5. **Agent profiles updated:** At least 10 of 20 agent profiles and 10 of 18 briefings updated to reflect v0.2 framing. Zero references to Kael Davan, Sera Venn, or playable detective/smuggler archetypes in updated files.
## Test Plan
| Area | Method | Owner |
|------|--------|-------|
| Voice pipeline integration | Live test: generate NPC, inspect voiced output vs base text | Server |
| ContentType::Factual bypass | Unit test: inject Factual-tagged line, assert LLM not called | Server |
| Observer wiring | Integration test: `voice_pipeline.rs` test suite + live Gauntlet run | Server |
| Client toggle | Manual: toggle off, verify server serves base text | Client |
| Hardware detection | Manual: run on low-spec config, verify graceful degradation | Client |
| Content deletion | `cargo check` + `make test` full suite passing after deletion | Server |
| D-record accuracy | Qatux review of decisions/content.md for completeness | Copy/Planning |
## Cross-Team Dependencies
```
Server #650 (ContentType::Factual)
→ Server #652 (observer integration) — preferred ordering, not hard block
Server #633 (composable behavior engine) — format agreement
→ Copy #634 (decomposed behavior content)
Copy #656 (remove Van Maanen's Star hand-authored) — may require client test update
→ flag to Client if test_insert_off_behavior.gd needs edits
Client #646 (toggle) — depends on server #652 being wired
(parallel development OK; both can land independently, integrate at end)
```
## Ticket Summary
| Team | Ticket | Title |
|------|--------|-------|
| server | #650 | ContentType::Factual — LLM bypass |
| server | #652 | Voice pipeline: observer integration |
| server | #655 | Remove v0.1 content loading system |
| server | #633 | Composable behavior engine (carry-over) |
| server | #651 | Friendly/RoutineDeviation tells — iterate |
| copy | #647 | Docs: Amend D-123, supersede D-124, file workshop D-records |
| copy | #645 | Content: Base text elevation pass |
| copy | #656 | Remove handwritten Van Maanen's Star dialogue and monologue |
| copy | #657 | Remove detective mission system |
| copy | #634 | Author decomposed behavior content (carry-over) |
| copy | #653 | Culture persona authoring for non-Van Maanen's Star cultures |
| client | #646 | UX: AI-Enhanced Dialogue toggle + hardware detection |
| planning | #658 | Update agent profiles and briefings for v0.2 |
**Total: 13 tickets** — server (5), copy (6), client (1), planning (1)