backups: show that a check happened, not just that a change did
Some checks failed
CI / backend (push) Failing after 7s
CI / naming (push) Successful in 2s
CI / frontend (push) Successful in 9s
CI / migrations-mysql (push) Failing after 7s

lastseenat already recorded it and the API already returned it; nothing
displayed it, so from the UI a healthy machine still looked abandoned - one
revision from last spring and no sign anything had looked at it since.

The history page gains a Last verified column beside Captured, and the asset
panel a Verified field. Only the CURRENT revision carries one: an older
revision was superseded, so saying it was verified today would be false - what
was verified is the configuration the PC holds now.

A current revision with no check yet says "not yet checked" rather than showing
a blank or borrowing the captured date. That state is real and temporary: the
column is new, so every chain reports it until its PC next posts.
This commit is contained in:
cproudlock
2026-08-11 15:00:25 -04:00
parent e0e4cce8bd
commit 294ddbb38e
4 changed files with 51 additions and 0 deletions

View File

@@ -101,6 +101,12 @@ class BackupsPlugin(BasePlugin):
'title': 'label',
'meta': [
{'key': 'collectedat', 'label': 'Captured', 'format': 'date'},
# Captured is when this config was WRITTEN; verified is
# when a PC last posted it and the hash still matched.
# An unchanged config writes no revision, so without
# this a machine checked daily for a year shows one
# entry from last spring and reads as abandoned.
{'key': 'lastseenat', 'label': 'Verified', 'format': 'date'},
{'key': 'sourcehostname', 'label': 'From'},
{'key': 'shorthash', 'label': 'Hash', 'mono': True},
],