Stoned.AI — live-streamed human + AI conversation show, both sides voiced via local Kokoro TTS. Governance docs 00-09, README, .gitignore. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3.5 KiB
3.5 KiB
Risk Register
Risks
Risk 1
- Risk:
pykokorois installed in Arena's virtualenv only. Stoned.AI may not be able to import it without installing Arena as a dependency or duplicating the virtualenv. - Impact: High — TTS is a core feature. Without it the project cannot function.
- Likelihood: Medium — the Arena install script installs
pykokorointo a project-local venv, not system-wide. - Mitigation: Add
pykokoroas a direct dependency inpyproject.toml. Install into a fresh project-local venv. Verify the import works independently before proceeding with the TTS layer. - Owner: Implementation model (Phase 1).
- Trigger:
import pykokorofails in the Stoned.AI venv.
Risk 2
- Risk: OBS Studio browser source does not auto-play audio without user interaction, blocked by browser autoplay policy.
- Impact: High — audio playback in the broadcast view is a core feature.
- Likelihood: Medium — OBS uses Chromium internally and has its own audio handling. This is a known issue for some browser source setups.
- Mitigation: Test OBS audio capture during Phase 4 before marking the phase complete. If autoplay is blocked, investigate OBS browser source audio settings (
Enable JavaScript,Allow Plugins, global audio device assignment in OBS scene settings). - Owner: Jason (manual verification) with implementation support.
- Trigger: Audio does not play in OBS browser source during Phase 4 testing.
Risk 3
- Risk: Kokoro synthesis is slow on CPU (no GPU on
svc-ai), causing noticeable latency between turn submission and audio playback. - Impact: Medium — does not break functionality but degrades the live stream experience.
- Likelihood: Medium — Kokoro is rated CPU-viable but synthesis time varies by voice and text length.
- Mitigation: Gate the next card rendering until audio is ready (already the Arena pattern). Keep host messages and AI responses concise. If latency is unacceptable, investigate Piper TTS as a faster CPU fallback.
- Owner: Implementation model (Phase 2), Jason (evaluation).
- Trigger: Synthesis takes more than 5 seconds for a typical 2–3 sentence response.
Risk 4
- Risk: AI backend CLI output format changes (Codex or Gemini banner updates) causing the cleaning engine to miss noise or strip dialogue.
- Impact: Medium — visible noise in the conversation feed degrades the stream.
- Likelihood: Low — CLI tools update occasionally, but not frequently.
- Mitigation: Maintain a robust
clean.pybased on Arena's proven patterns. Add a debug mode flag that shows raw output for troubleshooting. - Owner: Implementation model.
- Trigger: Conversation feed shows CLI banner lines or token counts.
Risk 5
- Risk: The host and broadcast views share an SSE stream. If the broadcast view reconnects (e.g. OBS browser source refresh), it may miss turns that occurred during the gap.
- Impact: Low — the broadcast feed would fall behind but would recover on the next turn.
- Likelihood: Low — OBS browser sources are generally stable once connected.
- Mitigation: On SSE reconnect, replay the current session's conversation history as catch-up events before resuming the live stream. This is optional for the initial build.
- Owner: Implementation model (Phase 2, optional enhancement).
- Trigger: OBS browser source shows an incomplete conversation after a refresh.
Signature
- Document role: governing
- Created by: Claude (supervisor)
- Created at: 2026-04-12
- Revision status: initial
- Future revision rule: this document may be revised only by the user or by an explicitly authorized supervisor revision