Skip to content

Fix meeting prompt dismissal crash#334

Merged
silverstein merged 1 commit into
silverstein:mainfrom
calebchongc:fix/meeting-prompt-native-destroy
Jun 15, 2026
Merged

Fix meeting prompt dismissal crash#334
silverstein merged 1 commit into
silverstein:mainfrom
calebchongc:fix/meeting-prompt-native-destroy

Conversation

@calebchongc

Copy link
Copy Markdown
Contributor

Summary

  • Close the meeting-prompt window through a native cmd_close_meeting_prompt command that destroys the webview window.
  • Make prompt dismissal idempotent so Dismiss, X, Escape, success auto-close, and auto-dismiss all share the same close path.
  • Add a regression test covering that the meeting prompt dismissal flow uses the native destroy path.

Fixes #333.

Scope

This branch is intentionally limited to the meeting-prompt crash fix and excludes the call-detection changes from #331.

Tests

  • cargo fmt --check
  • cargo clippy -p minutes-app --all-targets -- -D warnings
  • cargo test -p minutes-app (207 passed)
  • ./scripts/install-dev-app.sh --no-open
  • Manual: built/installed Minutes Dev.app, exercised meeting-prompt dismissal paths, and confirmed dismissing no longer crashes the app.

Manual test caveat

I could not fully exercise the Join & Record calendar URL path on this managed Mac. The bundled calendar-events helper continued to report write-only Calendar access even though System Settings showed Full Access, so direct helper reads failed with access not granted.

Manual verification: built and installed the dev app, exercised the meeting prompt dismissal paths, and confirmed dismissing no longer crashes the app. The Join & Record path could not be fully exercised on this managed Mac because the bundled calendar-events helper continued to report write-only Calendar access despite the Settings UI showing Full Access, so direct helper reads failed with access not granted.
@vercel

vercel Bot commented Jun 15, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the evil genius laboratory Team on Vercel.

A member of the Team first needs to authorize it.

@silverstein silverstein merged commit d63e541 into silverstein:main Jun 15, 2026
13 of 14 checks passed
@silverstein

Copy link
Copy Markdown
Owner

Merged. This is the cleaner version you promised when you closed #329, and it shows: routing every dismissal path through one native destroy, deferred out of the JS frame, with the closeScheduled guard on the JS side and a None-check on the native side, closes the WebKit self-close crash without the loose ends. I verified there are no orphaned getCurrentWebviewWindow references left, so no path can hit a missing symbol.

On your manual-test caveat: no worries about the Join & Record calendar path. The code that changed is the close path, which the dismiss/X/Escape/auto-close paths you did exercise all share, so it is well covered. The calendar write-only permission thing you hit is a separate known macOS quirk on this kind of managed Mac, not something your change touches.

That is three merged now (#328, #334) plus the engine direction on #332. Thanks Caleb.

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.

Dev app can crash when upcoming meeting prompt is dismissed

2 participants