feat(p1): add daily snapshots and fan tracking

Implement P1: seven-metric view snapshots, relation/stat fan snapshots, failure placeholders, resume by daily completion markers, Cookie login warnings, daily SQLite backups, Shanghai daily scheduling, and CLI snapshot/auth-check commands. Real read-only run captured 795/795 videos successfully over 1124s with a verified daily backup.
This commit is contained in:
kairee committed 2026-10-31 19:19:24 +08:00
1 parent ee289bfa56
commit 5c2ab7b187
20 files changed
+1680 -54

No files matched your search

+5 -1
View File
@@ -18,6 +18,7 @@ class ScheduledTask:
interval: float
fn: Callable[[], Any]
next_run: float = 0.0
next_run_fn: Callable[[float], float] | None = None
@dataclass
@@ -77,7 +78,10 @@ class Scheduler:
else:
self._log("info", "scheduler.task_ok", task=task.name)
finished = self._clock()
task.next_run = started + task.interval
if task.next_run_fn is not None:
task.next_run = task.next_run_fn(started)
else:
task.next_run = started + task.interval
result = TaskResult(
name=task.name,
started_at=started,