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:
1 parent
ee289bfa56
commit
5c2ab7b187
20 files changed
+1680
-54
No files matched your search
@@ -110,8 +110,27 @@ def test_max_iterations_and_validation():
|
||||
raise AssertionError(f"应当失败: {tasks}, {kwargs}")
|
||||
|
||||
|
||||
def test_next_run_fn_controls_reschedule():
|
||||
clock = [1_000.0]
|
||||
calls = []
|
||||
task = ScheduledTask(
|
||||
"daily", 86400, lambda: calls.append(clock[0]),
|
||||
next_run_fn=lambda started: started + 123,
|
||||
)
|
||||
scheduler = Scheduler([task], clock=lambda: clock[0])
|
||||
scheduler.run_due()
|
||||
assert calls == [1_000.0]
|
||||
assert task.next_run == 1_123.0
|
||||
clock[0] = 1_122.0
|
||||
assert scheduler.run_due() == []
|
||||
clock[0] = 1_123.0
|
||||
scheduler.run_due()
|
||||
assert calls == [1_000.0, 1_123.0]
|
||||
|
||||
|
||||
def main():
|
||||
test_run_when_due_and_reschedule()
|
||||
test_next_run_fn_controls_reschedule()
|
||||
test_task_error_does_not_block_other_tasks()
|
||||
test_run_forever_with_stop_event()
|
||||
test_max_iterations_and_validation()
|
||||
|
||||
Reference in new issue
Block a user