Skip to content

fix(web): voice input start compiles with the React Compiler again - #31267

Open
flamboh wants to merge 157 commits into
pingdotgg:maria/redesign/5-voicefrom
flamboh:t3/redesign-fix-speech-compiler-finally
Open

flamboh wants to merge 157 commits into
pingdotgg:maria/redesign/5-voicefrom
flamboh:t3/redesign-fix-speech-compiler-finally

Conversation

@flamboh

@flamboh flamboh commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Note

🤖 Claude Opus 5.5 on behalf of Oliver

Fix for the redesign stack, targets layer 5 (#28844).

Problem

#30437 added a try … finally to start in useEnvironmentSpeechInput.ts. The React Compiler can't compile a finally clause, so it skips the whole hook and reactCompilerCoverage.test.ts fails Test Web on this layer and every PR stacked above it.

Change

The awaited status check (and the wait while a previous stream is still transcribing) moves into a small waitForStatus helper inside start. It returns null when the start is no longer current, which covers the early returns that used to sit in the try. start now clears pendingStartRef once in the catch and once right after the try, so every exit path still clears it. No behavior change.

Scope and approval

A small fix to a CI failure that #30437 introduced on Maria's redesign stack. It touches one function and changes no behavior.

Verification

  • vp test run apps/web/src/reactCompilerCoverage.test.ts -t useEnvironmentSpeechInput: failed on the layer with the finally bailout, passes now.
  • vp test run apps/web/src/speech/: 7 files, 30 tests pass, including "cancels a start that is still checking the environment".
  • vp run check:changed origin/maria/redesign/5-voice: format, lint, knip, typecheck, tests and React compiler all pass.

Made with Claude Opus 5.5 in Claude Code (via T3 Code).

maria-rcks and others added 30 commits November 4, 2026 01:32
…s drop "Until" (pingdotgg#29134)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…dotgg#29980)

* fix(web): project location keeps its machine name when the path truncates
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S 10-29 changed lines (additions + deletions). labels Nov 5, 2026
@macroscopeapp

macroscopeapp Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 0e95102

Macroscope's review found this PR approvable — This refactors voice-input startup for React Compiler compatibility while retaining existing polling, cancellation checks, and pending-request cleanup. It introduces no product-default changes or broader recording or data access.

You can add or adjust custom eligibility rules. Learn more.

@maria-rcks

Copy link
Copy Markdown
Collaborator

Note

Written by claude-opus-5-5 on behalf of Maria

Merged the rebased maria/redesign/5-voice into this branch (70bd268, no rebase). All 36 conflicts were the rebased stack's own files, so the merge takes the base's tree and keeps only this PR's change to useEnvironmentSpeechInput.ts. The diff against the base is still that one file.

Checked on a testbox: reactCompilerCoverage.test.ts -t useEnvironmentSpeechInput passes, apps/web/src/speech/ passes (7 files, 30 tests), and check:changed against the base passes (format, lint, knip, typecheck, tests, React compiler).

Agent context budget stays red, and this PR doesn't cause it. The redesign stack forks from main before #30257, which cut 20/20/40 bytes from the agent context. The stack's budget file still has the old numbers, and this PR changes no agent text. It clears when the stack picks up main.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S 10-29 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants