0f032e39d9
The headless harness runs wnd with WHITENOISE_MOCK_KEYRING=1, but the mock keyring is in-memory only — it starts empty on every wnd restart. Meanwhile the SQLite databases under $data_dir persist across runs and reference keys that no longer exist, so the second run onward fails at startup with KeyringEntryMissingForExistingDatabase before wnd can even open its control socket. Wipe everything under the daemon's data dir (except logs and pid) before each start so wnd always comes up cold and consistent with its ephemeral keyring. Also surface failure diagnostics inline instead of burying them in a log file path: print the last 40 lines of stderr and 20 of stdout, report whether wnd is still alive or already exited, and break out of the 30s wait loop the moment the daemon dies.