showcase/integrations/langgraph-python/qa/voice.md
/demos/voiceshowcase-langgraph-python is healthy (/api/health returns 200)OPENAI_API_KEY is set on the Railway service (shared with other demos)MediaRecorder (Chromium, Firefox, Safari 14+)public/demo-audio/sample.wav is present (used for screenshot/preview generation; the in-app sample button no longer fetches it)/demos/voicedata-testid="voice-sample-audio") is visibleSample: "What is the weather in Tokyo?"data-testid="voice-sample-audio-button") is enabled<CopilotChat /> renders a message composer (data-testid="copilot-chat-input")data-testid="copilot-start-transcribe-button") — this is the authoritative signal that transcriptionService is mounted on /api/copilotkit-voicedata-testid="copilot-chat-textarea") contains the canned phrase "What is the weather in Tokyo?" (no async round-trip; no "Transcribing…" state)data-testid="copilot-send-button")data-testid="copilot-start-transcribe-button") in the composerdata-testid="copilot-finish-transcribe-button") to stop recordingOPENAI_API_KEY configured)