Files
settled-reach/docs/sprints/sprint-26/client.md
T
jpmschweitzerandClaude Opus 4.6 bccdcfcdcb docs(docs): add frontmatter to all sprint briefings
Standardized YAML frontmatter on all 115 sprint briefing files across
sprints 1-26 with title, description, type, status, sprint number, and
team fields.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 00:15:45 +01:00

2.4 KiB

title, description, type, status, sprint, team
title description type status sprint team
Sprint 26 — Client Briefing AI-Enhanced Dialogue toggle, hardware detection UX sprint archived 26 client

Sprint 26: Clean House — Client Tasks

Goal: Ship the voice pipeline to production by integrating observer, removing v0.1 dead weight, and stabilizing the codebase.

Branch: client Agents: Stig (dev), Tyre (arch), Hoshe (QA)

New Tickets

# Title Blocked by
#646 UX: AI-Enhanced Dialogue toggle + hardware detection #627 (server: SQLite settings storage)

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

Key Decisions

  • decisions/content.md — D-138 (LLM re-voicing pipeline: pre-voicing modes, base-text fallback model, hardware detection requirement)
  • decisions/architecture.md — D-088 (3-state pause system, server-authoritative)

Notes

  • #646 AI-Enhanced Dialogue toggle + hardware detection: The voice pipeline (server-side, server/src/voice/) is wiring up this sprint via #652. The client needs layered hardware detection and player-facing controls so the feature degrades gracefully. Three detection layers in sequence: (1) CPU/RAM check — can the model even load? (2) time-per-token benchmark on first load — is it fast enough to be useful? (3) player-facing toggle — opt out even on capable hardware. The toggle state must persist via #627 (SQLite settings storage, server team, same sprint). Block on #627 landing before implementing the toggle — the client sends a ChangeSettings command over IPC and the server persists it in SQLite. The UI for this is in the options/settings panel. Coordinate with server team: the client toggle must communicate to the server process whether voicing is requested (the server queue drains but does not requeue when disabled). Key integration point: client/scripts/ settings panel and the existing SR_LIVE / subprocess launch flow. Check docs/workshops/llm-voice-pipeline/ for hardware thresholds decided in the workshop.

Dependency Chain

#627 (server: SQLite settings) → #646 (UX toggle + hardware detection)

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(ui): description" --description "body" --base main --head client