What Borela Verifies

The restore checks included in every current plan.

Backup freshness

The agent sends backup acknowledgements when Litestream advances. The cloud marks projects stale when the latest ack is older than the configured threshold.

Agent connection

Borela records the server time of each agent heartbeat. If a project stops reporting for more than five minutes, the dashboard marks the agent offline and Borela emails the account owner. Offline alerts work on every active plan, including grandfathered plans. The cloud checks once a minute and limits repeat emails to one per hour while the agent stays offline.

Notification settings

Signed-in customers can change the stale-backup threshold and notification email at /d/settings. Agent-offline alerts stay on even when stale-backup emails are turned off. Each save rotates the configuration etag so the agent refetches the threshold on its next heartbeat. An optional Slack incoming webhook receives cloud alerts for backup, agent, monitoring, and restore events; the URL is never sent to the agent.

Storage quota

When measured protected storage reaches your plan cap, the cloud alert worker emails your notification address once. If usage falls below the cap and later reaches it again, Borela sends a new alert. The dashboard records the event; eligible plans can also receive it through the cloud-side Slack webhook.

Restore drills

Borela restores the latest snapshot into an isolated temporary database, runs PRAGMA integrity_check, records restored size, table count, row count, and result, and alerts on failure.

Drill history and CSV

Business and Scale project pages show individual restore attempts, with the restored byte count, table count, row count, duration, and outcome when measured. Download CSV for a portable record with transaction IDs and recovery-window boundaries. Borela retains completed drill evidence for 400 days; an attempt with a pending notification is kept until that notification is delivered.

Eval corpus

The repo includes a restore-quality corpus that verifies schema, table counts, and content hashes across representative SQLite shapes before release.