feat(maintenance): per-task run records, backward-compat migration, verify-objects default
Replace bare ISO-8601 last_run strings with structured _TaskRunRecord dicts {timestamp, status, duration_ms} so callers can distinguish ok vs error runs and measure task duration without parsing log output.
Add _migrate_last_run() to silently upgrade old single-string entries on first read — no manual migration step needed.
_cmd_run() now wraps each task in try/except, records per-task outcome, and updates maintenance.json atomically even when one task fails.
_cmd_status() human output gains icon (✅ ok / ❌ error / ? pending) and duration next to each task timestamp.
_cmd_schedule() validates --enable and --disable mutual exclusion with a clean error message instead of silently ignoring one flag.
_run_gc() wires in prune_stale_remote_refs() and surfaces the two new stale_remote_refs_* fields in the returned dict.
_DEFAULT_TASKS promoted from ["gc"] to ["gc", "verify-objects"] so every fresh repo automatically runs object-store integrity checks on schedule.
Update test_status_json_has_last_run_timestamp to assert the new record shape (dict with timestamp/status keys) instead of a bare ISO string.
0 comments
muse hub commit comment sha256:973bbb4bb0a19a4af937c377520a50656fe2f6a1b9dea6417400061fefb4484f --body "your comment"
No comments yet. Be the first to start the discussion.