Archive completed tasks, add cleanup commands, self-documenting dashboard UI
CI / build (push) Has been cancelled

- Archive 79 completed framework-dev tasks from tasks/ -> tasks/complete/
- status.py: add --cleanup-done and --install-cleanup-schedule commands
- Add scripts/automaton-cleanup.sh for periodic task archiving
- Dashboard: rename 'Background' tab -> 'Agent', 'Cleanup' agent -> 'Completed Task Archiver', remove redundant group headers and pill badges, dim inactive agent placeholders
- .rules.md: add Self-Documenting UI Names rule
- New tests: test_cleanup_done.py, expanded test_app.py and test_task.py
This commit is contained in:
Lap Tran
2026-06-24 22:43:33 -04:00
parent e13513faaa
commit 4a2301b077
572 changed files with 856 additions and 101 deletions
@@ -0,0 +1,14 @@
# Spec: fix-stale-task-mtime-proxy
## Problem
`scripts/status.py:965,1072` uses the `.state` file's mtime as a proxy for "last edit activity." But every `--transition` rewrites `.state`, resetting its mtime. A task that was transitioned 29 minutes ago appears "fresh" even though no editing happened. The `--same-session` check also gives false positives after any transition.
## Fix
Use a separate `.state.lastedit` timestamp file that is updated only when `--can-edit` returns ALLOWED (actual edit activity). Check `.state.lastedit` mtime instead of `.state` mtime for stale-task detection. If `.state.lastedit` doesn't exist, fall back to `.state` mtime (backward compat).
## Acceptance Criteria
- Transitioning a task does NOT reset the stale-task timer
- Running `--can-edit` (and getting ALLOWED) DOES reset the timer
- If `.state.lastedit` doesn't exist, falls back to `.state` mtime
- Existing tests still pass
- Add test verifying transition doesn't reset timer but can-edit does