MetaGrid Pro 1.7.7 for Mac crashes 2–3 s after connecting to MetaServer

MetaGrid Pro 1.7.7 (35840) for Mac crashes every time, a few seconds after it connects to MetaServer 6.1.6 (4346) running on the same Mac. macOS 26.7.1, Mac mini M4 Pro. It happens on every launch, whether the connection is restored automatically or made by hand from the connection screen. With MetaServer quit, the app runs indefinitely.

What I could establish:

  • Crash type: EXC_BREAKPOINT (Swift trap) on the main thread, always at the same address (MetaGrid Pro + 0x356d4), reached by a nil check right after the log message “State changed → dashboard” (DashboardVC.swift). So the dashboard state transition after the connection unwraps an object that is nil on Mac.
  • Timing: MetaServer logs “Marking as connected”, then “[app-sync] enqueued 326/326 app states”; the crash lands about 2–3 s after the connection, while the app states are still arriving. The client is then evicted after 8 missed heartbeats.
  • Not data-related: reproduced with a brand-new container (fresh preferences) as soon as the saved host is restored, and with my full data as well. The iPad client works normally against the same MetaServer.
  • The Mac app had worked earlier this year (last backup from the Mac in June 2026).

Hi vinc,

Thank you for the detailed investigation. The comparison with a fresh container, the timing after connection, and the fact that the iPad works with the same MetaServer are particularly useful.

Could you send us the complete macOS crash report (.ips), together with the MetaGrid Pro and MetaServer logs from the same occurrence? Please include the approximate crash time so we can line up the reports. You can send these privately to help@metagrid.app and mention forum topic 1669.

The complete crash report will let us map the address to the code in build 35840 and check the dashboard transition you identified. The missed heartbeats after the app exits may be a consequence of the crash rather than its cause.

There’s no need to delete your container or repeat the fresh-data test—you’ve already provided that comparison. Please keep your existing data and backups intact.

Thanks again for narrowing this down so carefully.