Overlay: never show the target visualizer over SYSTEM RESPONDING - #151
Merged
Merged
Conversation
Stack the overlay's parts in a column and hide the recording visualizer while the SYSTEM RESPONDING pill is up, so the two never overlap. Command and MCP pills are shown alongside the visualizer during recording. - The visualizer stays mounted while the whole overlay fades out, so its outro transition still plays (an earlier draft unmounted it the instant recording stopped). It is dropped once recording ends only when the overlay stays up for a command/MCP pill. - Overlay tests restore the config store after themselves, wait out the overlay's 25ms repaint delay explicitly, and fail the mocked get_config so the store keeps its defaults instead of a status-shaped object. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…pills in view - While recording, show the target visualizer and hide the SYSTEM RESPONDING pill. Starting to dictate interrupts playback, but the speaking flag can lag behind it, which briefly hid all recording feedback. - Let the visualizer box shrink (trimmed, not scaled) so a tall custom overlay can't push the command/MCP pills out of the 444px window. Built-in visualizers (at most ~152px) plus two pills fit with room left. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The status store polls get_status every second when no status-tick events arrive, which in tests is always. The mock replied with a fixed idle status, so whenever a run was slow enough for a poll to land inside a test's settle window (as on CI), speaking/recording were reset under it and 'hides target visualizer and displays SYSTEM RESPONDING' failed. The mock now returns the status store's current value, so a poll is a no-op. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of re-landing 1f13d62. This one is independent and based directly on
development.The overlay's parts now stack in a column: target visualizer, command pill, SYSTEM RESPONDING pill, MCP pill. The visualizer is hidden while SYSTEM RESPONDING shows, so they never overlap.
Fixes over the original commit
begin_recording), but the speaking flag can lag behind it. Until then, all recording feedback was hidden.commandTriggeredDuringRecordingand a duplicate condition.get_confignow fails, which keeps the store at its defaults; before, it replaced the store with a status object and the original tests passed by luck.Test plan
npx vitest run: 244 pass, including new fade-out and talk-over-reply tests. The fade-out test fails against the original commit'sOverlay.sveltesvelte-check: 0 errors🤖 Generated with Claude Code