Recovering from a crash
Last updated: 2026-05-27
ADR Sentinel is designed so that a crash is never the end of your work. Every state change is captured to a Working Log as it happens, and each save creates a rolling backup that the app can restore from automatically.
What happens when the app crashes
If the renderer crashes mid-session:
- The window reloads itself automatically. You'll see your most recent state come back.
- You'll be shown a "Something went wrong" modal with a description field and a Send button. Sending the report attaches the app version, recent UI actions, and the error stack — never your case data — so the developer can diagnose and fix the cause.
- If you'd rather not send, click Cancel. The report queues locally and you can review it later from Settings → Diagnostics.
If the main app process crashed (the rare hard crash), the next launch detects the prior crash and surfaces a toast offering to send a report.
If a case file is unreadable
When the app loads a case and the file is corrupted, it automatically:
- Looks in the case's
.backups/folder for the most recent readable snapshot (the last 5 saves are kept). - Restores the case from that snapshot.
- Archives the broken file as
<filename>.corrupted-<timestamp>.baknext to the original so nothing is silently destroyed. - Shows a toast naming the recovered cases.
You don't have to do anything. If recovery fails, the toast tells you which file couldn't be read, and the archived .corrupted-*.bak is there if you want to inspect it.
If the UI feels stuck or wrong
If a button doesn't respond, a panel renders empty, or numbers look off, try these in order:
- Reload the window (
Cmd/Ctrl+R). This re-renders from your saved data without losing anything. - Open Settings → Diagnostics → Rebuild from log. The app replays every recorded event from the Working Log onto a fresh clone of the case and tells you how many events applied vs skipped before committing. This fixes "phantom state" where the in-memory model and the on-disk record have diverged.
- Open Settings → Diagnostics → Export raw state. This dumps a text version of everything the app knows about the current case (parties, offers, demands, sessions, blind rounds, working notes) so you have a recovery copy you can read or email yourself.
When to contact support
If recovery doesn't work, or if you see the same crash repeatedly:
- Use Settings → Diagnostics → Report a Bug to send a report with recent actions and the error context.
- From the help panel's "If stuck" section, click Contact support and describe what was happening.
- Mention any recovery steps you've already tried — it saves a round trip.