Skip to content

fix: Restore meeting state after page refresh#378

Merged
rjroy merged 1 commit intomainfrom
fix/377-fix-refresh
Jan 21, 2026
Merged

fix: Restore meeting state after page refresh#378
rjroy merged 1 commit intomainfrom
fix/377-fix-refresh

Conversation

@rjroy
Copy link
Copy Markdown
Owner

@rjroy rjroy commented Jan 20, 2026

Summary

  • Move meeting state restoration from NoteCapture to MainContent so it runs regardless of which tab is active
  • Previously, refreshing while on any tab except Capture would orphan an active meeting (server knew about it, client did not)
  • Now select_vault and get_meeting_state are sent from MainContent on mount and WebSocket reconnection

Fixes #377

Test plan

  • Start a meeting on Capture tab
  • Refresh the page (should land on Home tab by default)
  • Switch to Capture tab - meeting indicator should show active meeting
  • Verify you can stop the meeting normally

🤖 Generated with Claude Code

Move meeting state restoration from NoteCapture to MainContent so it
runs regardless of which tab is active. Previously, refreshing while
on any tab except Capture would orphan an active meeting because
get_meeting_state was never sent.

Changes:
- App.tsx: Send select_vault and get_meeting_state on mount and reconnect
- NoteCapture.tsx: Remove redundant vault/meeting restoration logic

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented Jan 20, 2026

Codecov Report

❌ Patch coverage is 94.28571% with 2 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
frontend/src/App.tsx 93.54% 2 Missing ⚠️

📢 Thoughts on this report? Let us know!

@rjroy rjroy merged commit d590f39 into main Jan 21, 2026
2 checks passed
@rjroy rjroy deleted the fix/377-fix-refresh branch January 21, 2026 01:05
rjroy added a commit that referenced this pull request Jan 21, 2026
Components using useWebSocket() each create separate connections with
independent server-side state. The previous refactor (d590f39) moved
vault selection to MainContent, but NoteCapture/MoveDialog/HealthPanel
still have their own connections that need vault context.

- NoteCapture: Add select_vault on connect, update meeting state locally
- MoveDialog: Add select_vault on connect for list_directory calls
- HealthPanel: Add select_vault on connect for dismiss_health_issue calls

Fixes capture and meeting mode being broken after #378.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
rjroy added a commit that referenced this pull request Jan 21, 2026
Components using useWebSocket() each create separate connections with
independent server-side state. The previous refactor (d590f39) moved
vault selection to MainContent, but NoteCapture/MoveDialog/HealthPanel
still have their own connections that need vault context.

- NoteCapture: Add select_vault on connect, update meeting state locally
- MoveDialog: Add select_vault on connect for list_directory calls
- HealthPanel: Add select_vault on connect for dismiss_health_issue calls

Fixes capture and meeting mode being broken after #378.

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
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.

refresh with active meeting orphans it

1 participant