run() wired the daemon twice and the lists drifted: seven workers started
untracked on the unlock path, a shadowed WaitGroup hid the voice server, and
nexus and getMCPServers were never set after a passkey unlock.
newDaemonAPI and startBackground in cmd/mavend/boot.go are the one place both
paths go through now. backgroundWorkers is the pure list behind the second, so
the set is assertable without a running daemon.