Triage
The child SIGBUS dumps are fallout, not the crash. A type-2 AppImage unmounts /tmp/.mount_t3code* when the main process goes away, and every child still mapped from that mount then dies with BUS_ADRERR. No windowAllClosed / beforeQuit / requestShutdownAndWait span, no main-process coredump, and no Crashpad minidump means the main process left through exit / _exit / app.exit or SIGKILL, not through our quit path and not through a signal that core-dumps.
That is not the auto-updater install path. On 0.0.42, desktop.updates.configure sets autoDownload and autoInstallOnAppQuit to false before the 4-minute poll, and checkForUpdates only hits the feed. The only app.exit in the desktop main process is desktop.lifecycle.relaunch, and that runs requestShutdownAndWait first, which would show up in the trace. quitAndInstall is user-driven and emits before-quit-for-update before app.quit().
The poll timing is a weak lead. Completed spans are written to desktop.trace.ndjson in 1-second batches, and a span is not written until it ends, so a death inside an open checkForUpdates can look like "no span". The 18:21 exit is the one that really happened mid-check: handleCheckingForUpdate finished, the parent span never closed, and the mount was gone about 0.7s later. The 17:25 exit is different. handleUpdateNotAvailable had already completed, and the mount disappeared 4.7s later, which is long enough that a finished shutdown span would have been flushed. Nothing in our poller or in electron-updater's check path calls exit.
The signature matches Electron's Linux ozone shutdown when the Wayland or X connection drops (electron/electron#52603, which is in 44.1.0). That calls Browser::ExitWithCode / app.exit(0), which skips before-quit and will-quit and writes no minidump. A protocol error on this client alone would do it without the rest of the session dying. Not confirmed.
Nothing on main adds process exit / child-process-gone logging, and the Electron bump there (44.1.0 to 44.4.2) has no note that it stops this exit. The useful next capture is the one you already planned, from a terminal:
ELECTRON_ENABLE_LOGGING=1 <appimage> --no-sandbox --ozone-platform=wayland ; echo exit:$?
On the next silent exit, the exit code plus any libwayland: / wl_display / wayland_event_watcher line distinguishes app.exit(0) from a signal. Also note whether any other Wayland client died at the same moment.