Archived
An IpcHandler deregisters itself from its destructor, but re-resolved its registry by walking to its engine generation first — a walk that needs a QML context that is already gone when the handler is destroyed along with a reloading bar, a swapped plugin, or the shell root. The deregistration was skipped and the registry kept a pointer to freed memory, so the next `qs ipc call` into that target segfaulted the shell. Omarchy hits this through omarchy.indicators refresh, which fires on every reminder, tmux alert, and silencing toggle. Carried on the fix-ipc-handler-lifetime branch of https://github.com/omacom-io/quickshell Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>