Skip to content

fix(web): polish realtime voice switch - #2761

Merged
bobleer merged 2 commits into
GCWing:1.0.0-explorefrom
bobleer:bob/polish-realtime-voice-switch
Sep 3, 2026
Merged

fix(web): polish realtime voice switch#2761
bobleer merged 2 commits into
GCWing:1.0.0-explorefrom
bobleer:bob/polish-realtime-voice-switch

Conversation

@bobleer

@bobleer bobleer commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Simplify the realtime voice mode switch into a borderless ghost action so the floating panel no longer shows nested rounded borders.
  • Use a phone handset icon for realtime voice entry and active-call identity while keeping microphone icons for ASR and mute controls.
  • Add a regression assertion for the realtime voice phone icon.
  • Stabilize two settings Hook inputs introduced by merged PR refactor(ui): harden settings and interaction workflows #2760, clearing deterministic exhaustive-deps errors that blocked Frontend Build on the current base branch.

Type and Areas

Type: UI/UX, regression fix, CI unblock

Areas: web UI

Motivation / Impact

The previous switch duplicated the floating panel border and used the same microphone metaphor as ASR dictation. The updated control has a clearer visual hierarchy and distinguishes a realtime call from microphone input without changing behavior or copy.

The first CI run also exposed two lint errors already present in the latest 1.0.0-explore base. The follow-up keeps the latest projection request and settings draft registration in refs while preserving the existing structural rerun triggers, preventing request or registration churn.

Verification

  • pnpm --dir src/web-ui run test:run src/app/components/NavPanel/unifiedSessionCreation.test.ts (9 tests passed)
  • pnpm --dir src/web-ui run test:run src/infrastructure/config/components/ReasoningConfigPanel.test.tsx src/infrastructure/config/settingsDraftRegistry.test.ts (12 tests passed)
  • pnpm run lint:web (0 errors; 7 pre-existing Fast Refresh warnings)
  • pnpm run motion:audit (completed with no new findings; one pre-existing inventory item remains in PortForwardDialog.scss)
  • pnpm run check:web (appearance, theme, typography, and type checks passed)
  • Manual local Web preview: the idle switch has a transparent background and 0px border; hover and press feedback remain visible.

Reviewer Notes

The product change is presentation-only shared Web UI. Remote workspace, remote control, Peer Device Mode, and Detached Dispatch were not exercised separately because command, transport, persistence, and runtime behavior are unchanged. No user-facing strings or locale resources changed.

The settings Hook adjustment is isolated to preserving existing rerun semantics while satisfying the repository lint gate.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

@bobleer
bobleer merged commit 57b4f27 into GCWing:1.0.0-explore Sep 3, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant