# Voice S2S Second PoC Decision Memo Date: 2026-06-26 ## Decision Boundary The primary voice architecture remains cascade-first: ```text browser audio -> WSS -> STT transcript -> engine -> TTS audio -> browser ``` This memo does not approve or reject a second s2s PoC. It defines the evidence needed before that decision is made. The dashboard decision item remains a human decision, because choosing s2s affects auditability, dataset quality, latency, cost, and the user experience. ## Current Position - Cascade is the Phase 1/2 baseline because transcript is a first-class artifact for review, safety checks, audit, cost attribution, and recursive-learning export. - S2S is no longer rejected only because of transcript loss. Realtime stacks may expose transcription hooks, so the actual question is whether s2s can preserve the same evidence contract while improving immersion or latency. - A second s2s PoC is valid only as a bounded comparison against the cascade path, not as a replacement by assumption. ## Evidence Required To Keep S2S S2S stays on the roadmap only if a PoC can prove all of the following: | Area | Required proof | |---|---| | Transcript | Final transcript is persisted with timestamps and turn boundaries. | | Safety | Crisis/safety classifiers receive the same or stronger text signal as cascade. | | Review | Learner review and supervisor review can cite exact utterance text. | | Audit | Provider, model, token/audio cost, latency, and failure mode are logged per turn. | | Latency | Median user-perceived round trip is meaningfully better than cascade on the same network. | | Barge-in | Interruptions produce deterministic logs and do not corrupt transcript order. | | Failure | STT/TTS/model failures do not save partial learner-only turns as completed dialogue. | | Privacy | Browser receives no bearer token; any realtime credential is short-lived and session-scoped. | ## Evidence That Rejects S2S S2S should be dropped for this release if any of these hold after the PoC: - Transcript is missing, delayed beyond review usefulness, or cannot be aligned to turn boundaries. - Safety classifiers see weaker input than the cascade transcript path. - The provider path requires browser-visible long-lived credentials. - Cost or latency is worse without a clear user-experience gain. - Failure recovery creates ambiguous persisted turns. - The PoC requires special-case review/export logic that forks the data model. ## PoC Shape Minimum acceptable comparison: 1. Use the same P1 persona, same counselor prompt, and same scripted learner utterance set for cascade and s2s. 2. Record TTFT, full round-trip latency, transcript finalization time, cost, and failure events for at least 20 short turns. 3. Export a side-by-side report with transcript equality/coverage, safety input, and persisted turn metadata. 4. Keep cascade as production default until the report satisfies every required proof above. ## Dashboard Mapping - `s2s 2차 PoC 판단`: this memo satisfies the artifact requirement. - `s2s 2차 PoC 채택 여부`: remains `DECIDE` until the comparison report exists and the project owner chooses keep/drop.