fix(student-space): stabilize onboarding and voice capture#68
Merged
Conversation
added 5 commits
May 24, 2026 20:49
Restore the signed-out onboarding entry, keep the current GLB companion path, and make capture voice sessions English-only with guarded Realtime replies.
Render the listening state as a white You bubble with typing dots and pin the live dialogue log to the latest turn while recording.
Guide the live companion to ask for school or after-school moments when the student gives only a short or vague opening, instead of assuming a story already exists.
Remove the mood framing from the bird hover card and keep the recording chat log scrollable inside a stable capture panel.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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.
Summary
Signed-out students now land on the working sign-in world instead of a blank onboarding state, while the companion stays out of that sign-in scene. The island companion consistently uses the latest finch model, shows clearer hover copy, and keeps its face framed while students open the capture flow.
Voice capture now feels more immediate: tapping record moves straight into the live chat stream, keeps the recording panel stable while the log scrolls, shows a listening indicator in the student's bubble, and pushes OpenAI realtime toward English-only transcription/replies with stricter filtering for noisy background fragments. Short vague turns now invite students to share something from school or after school instead of looping on generic confirmations.
Verification
./node_modules/.bin/biome check src/agents/mirror.prompt.md src/agents/openai-realtime/mirror-payloads.ts src/agents/openai-realtime/mirror-prompt.ts src/agents/openai-realtime/mirror-realtime-live.prompt.md src/components/student-space/EngineHost.tsx src/components/student-space/capture/AskSheet.tsx src/components/student-space/hud/StudentSpaceHud.tsx src/components/student-space/onboarding/EggHatcher.tsx src/components/student-space/world/WorldInteractions.tsx src/components/ui/drawer.tsx src/routes/_app.tsx test/agents/openai-realtime-mirror.test.ts test/components/student-space/EngineHost.test.tsx test/components/student-space/capture/capture-stack.test.tsx test/lib/student-space/realtime-mirror-client.test.ts./node_modules/.bin/vitest run test/agents/openai-realtime-mirror.test.ts test/components/student-space/EngineHost.test.tsx test/components/student-space/capture/capture-stack.test.tsx test/lib/student-space/realtime-mirror-client.test.ts./node_modules/.bin/tsc --noEmitgit diff --check origin/main...HEAD127.0.0.1:3010