Target: {{ backups.status.target_label }}
{% if notice %}
No cadence is configured, so this target is never reported as stale.
Set backup.expected_interval_hours to enable staleness
reporting.
Next backup due: {{ backups.status.cadence.next_due_at }}
{% endif %} {% if not backups.status.receipt_chain.ok %}Reads the database only; nothing is modified.
Storage: {{ backups.storage.uri }}
{% if not backups.backups %}No backups have been taken for this target.
{% else %}| Backup | Class | Created | Rows | Size | Actions |
|---|---|---|---|---|---|
{{ entry.backup_id }} |
{{ entry.backup_class }} | {{ entry.created_at or "-" }} | {{ entry.row_totals if entry.row_totals is not none else "-" }} | {{ entry.bytes }} | Stage restore |
No lifecycle operations have been recorded.
{% else %}| When | Operation | Status | Backup | By | Evidence |
|---|---|---|---|---|---|
| {{ receipt.created_at }} | {{ receipt.operation }} | {{ receipt.status }} | {{ receipt.backup_id or "-" }} |
{{ receipt.actor.username or receipt.actor.surface }} | {# An explicit column, not a link hidden on the operation name. The first person shown this page could not find the evidence at all, because nothing indicated the name was clickable. Naming the check count also says *why* the link is worth following. #}{% set checks = receipt.detail.get("checks") or [] %} {% if checks %}View {{ checks|length }} checks{% else %}View{% endif %} |