Repository navigation
Conversation
Fixes pingdotgg#31767 Co-Authored-By: Codex <noreply@openai.com>
|
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
|
Thanks @EtanHey for tracking this down: running speech requests through the connection runtime is the right fix, and your regression test shows it clearly. We're closing this in favour of https://git.cafe/pingdotgg/t3code/pulls/31778, which fixes the same issue (https://git.cafe/pingdotgg/t3code/issues/31767) the same way and also moves the Voice settings panel's own requests (status, model list, download/select/remove) off the generic runtime. On main those still call |
Problem
Fixes #31767. Selecting a relay-connected environment for microphone audio fails immediately with “No relay authorization service is available for the environment request.” Speech requests run on the generic HTTP runtime, which lacks the connection session's remote authorizer.
Change
Run web/desktop speech effects through the existing connection atom runtime and application registry. This shares the session authorizer and token renewal across status probes, model management, streaming tickets, uploads, and transcript cleanup. Existing abort signals are forwarded to the effect runner.
Scope and approval
Small, focused fix for an obvious bug in the existing remote dictation capability; no new feature, setting, permission, contract, or visual behavior. The issue above records the desktop trace evidence. Mobile already uses connection-runtime speech atoms and is unchanged.
Verification
vp test run apps/web/src/speech/runtime.browser.test.ts apps/web/src/speech/useEnvironmentSpeechInput.browser.test.tsx: 21 passed.vp run check:changed: format, lint, affected-package typecheck, both knip checks, focused tests, and React compiler checks passed; typecheck emitted existing schema-brand suggestions.Implementer: Codex. Inner review: Codex approved at d859363, 1 completed round, no blocking findings (user explicitly selected Codex after Claude hit its API rate limit). All latest-head CI checks passed or skipped. Signed-in live audio remains unverified. Regression guard: relay speech request browser test.
🤖 gpt-6.1-sol via T3 Code / Codex harness