Files
Alem Tuzlak 985bebf39c fix(showcase/voice): use real Whisper for mic transcription
The voice route's OpenAI client previously fell through to OPENAI_BASE_URL,
which docker-compose.local.yml sets to http://aimock:4010/v1. Aimock has a
catchall transcription fixture that returns "What is the weather in Tokyo?"
for every audio file, so the mic button always produced that phrase no
matter what the user actually said.

Pin baseURL to real OpenAI (overridable via OPENAI_TRANSCRIPTION_BASE_URL).
The sample-audio button stays as synchronous text injection — that's the
documented design, and what the e2e + d5 probe rely on.

Also:
- Tidy the sample button label ("Try a sample question" -> "Try a sample
  audio") so the affordance matches what it does.
- Realign tests/e2e/voice.spec.ts with the shipped component (the
  voice-sample-audio container testid and Sample: "..." caption it asserted
  on never existed on HEAD) and add cold-start timeout headroom for the
  mic-button render and the agent-flow test.
- Add "env": ".env" to langgraph.json so langgraph_cli dev picks up
  OPENAI_API_KEY locally. Docker/Railway paths inject env vars directly so
  this is a no-op there.
2026-05-11 14:45:10 +02:00

34 lines
1.8 KiB
JSON

{
"dependencies": ["."],
"env": ".env",
"graphs": {
"sample_agent": "./src/agents/main.py:graph",
"tool_rendering": "./src/agents/tool_rendering_agent.py:graph",
"tool_rendering_reasoning_chain": "./src/agents/tool_rendering_reasoning_chain_agent.py:graph",
"a2ui_dynamic": "./src/agents/a2ui_dynamic.py:graph",
"a2ui_fixed": "./src/agents/a2ui_fixed.py:graph",
"reasoning_agent": "./src/agents/reasoning_agent.py:graph",
"interrupt_agent": "./src/agents/interrupt_agent.py:graph",
"open_gen_ui": "./src/agents/open_gen_ui_agent.py:graph",
"open_gen_ui_advanced": "./src/agents/open_gen_ui_advanced_agent.py:graph",
"mcp_apps": "./src/agents/mcp_apps_agent.py:graph",
"hitl_in_chat": "./src/agents/hitl_in_chat_agent.py:graph",
"hitl_in_app": "./src/agents/hitl_in_app.py:graph",
"shared_state_read_write": "./src/agents/shared_state_read_write.py:graph",
"readonly_state_agent_context": "./src/agents/readonly_state_agent_context.py:graph",
"shared_state_streaming": "./src/agents/shared_state_streaming.py:graph",
"subagents": "./src/agents/subagents.py:graph",
"headless_complete": "./src/agents/headless_complete.py:graph",
"agentic_chat": "./src/agents/agentic_chat.py:graph",
"frontend_tools": "./src/agents/frontend_tools.py:graph",
"frontend_tools_async": "./src/agents/frontend_tools_async.py:graph",
"gen_ui_agent": "./src/agents/gen_ui_agent.py:graph",
"gen_ui_tool_based": "./src/agents/gen_ui_tool_based.py:graph",
"beautiful_chat": "./src/agents/beautiful_chat.py:graph",
"multimodal": "./src/agents/multimodal_agent.py:graph",
"agent_config_agent": "./src/agents/agent_config_agent.py:graph",
"byoc_hashbrown": "./src/agents/byoc_hashbrown_agent.py:graph",
"byoc_json_render": "./src/agents/byoc_json_render_agent.py:graph"
}
}