Repository navigation
[Bug - macOS] π "Open folder" dialog freezes the whole app for ~50β60 seconds (UI thread blocked in NSOpenPanel)Β #4732
jjloneman-jetblue
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
π Summary
In the desktop app, Projects β + β Open folder hangs the entire app:
It happens on every subsequent Open folder action as well
π» Environment
brew install --cask github-copilot-appπ Steps to reproduce
GitHub.Copilot.Desktop.App.Bug.Reproduction.mp4
π What I found
renderer_freezewarnings in about 20 minutessampleof the frozen app shows the main thread blocked while creating the pickerNSOpenPanel openPanelβ_initBridgeAndStuffβHIRunLoopSemaphore waittauri_plugin_dialog::blocking_pick_foldersampleof the Open and Save Panel service at the same moment shows it idleβ Expected behavior
π‘ Suggestion
π Logs
π App log: freeze monitor warnings
What this is
~/.copilot/logs/github-app.<pid>.logrenderer_freezewarnings are includedmain renderer unresponsive: the UI missed heartbeats for 3,000 msmain renderer heartbeat restored:heartbeat_gap_msis the total time the UI was stuckAnalysis
51050,52045,53871,54075,59235ms)main_thread_gap_msis about 1,005 in every case andconfirmed=falseLog
2026-10-13T17:01:05.209791Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="other" interaction="pointer" threshold_ms=3000 2026-10-13T17:01:14.233658Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="other" interaction="pointer" heartbeat_gap_ms=12613 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:01:44.209703Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="other" interaction="pointer" threshold_ms=3000 2026-10-13T17:02:40.025086Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="other" interaction="pointer" heartbeat_gap_ms=59235 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:02:57.211298Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000 2026-10-13T17:03:48.157014Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="session" interaction="pointer" heartbeat_gap_ms=54075 main_thread_gap_ms=1006 confirmed=false 2026-10-13T17:04:41.211284Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000 2026-10-13T17:05:28.293007Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="session" interaction="pointer" heartbeat_gap_ms=51050 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:06:43.212990Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000 2026-10-13T17:07:33.154086Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="session" interaction="pointer" heartbeat_gap_ms=53871 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:11:35.211719Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000 2026-10-13T17:11:40.772906Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="session" interaction="pointer" heartbeat_gap_ms=9457 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:13:15.211799Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000 2026-10-13T17:14:03.392819Z WARN github_app_desktop_services::renderer_freeze: main renderer heartbeat restored route="session" interaction="pointer" heartbeat_gap_ms=52045 main_thread_gap_ms=1005 confirmed=false 2026-10-13T17:20:49.215570Z WARN task_spawn{task="renderer_freeze_monitor"}: github_app_desktop_services::renderer_freeze: main renderer unresponsive route="session" interaction="pointer" threshold_ms=3000π§΅ App stack sample:
sample-app-main-thread.txt(frozen app)What this is
/usr/bin/sampleon thegithubprocess (pid 4421): 12 seconds at 1 ms intervalsAnalysis
rfd β¦ pick_folder_asyncβPanel::build_pick_folderβNSOpenPanel openPanelNSSavePanel _initBridgeAndStuffβHIRunLoopSemaphore wait:NSOpenPanel, waiting for a reply from the system Open and Save Panel servicetauri_plugin_dialog::blocking_pick_folderAttachment
sample-app-main-thread.txt
ποΈ Panel service sample:
sample-panel-service.txt(macOS Open and Save Panel service)What this is
/usr/bin/sampleoncom.apple.appkit.xpc.openAndSavePanelService(pid 11146): 12 seconds at 1 ms intervals, captured at the same moment as the app sampleAnalysis
mach_msg~/Desktop(DesktopFolderNodeβFetchISIconβgetattrlist)Attachment
sample-panel-service.txt
All reactions