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
20 lines
1.0 KiB
Markdown
20 lines
1.0 KiB
Markdown
# IMPLEMENTATION.md — Autopilot Runtime
|
|
|
|
## Changes Made
|
|
- Created `scripts/autopilot.py` — a real Python implementation replacing the pseudocode `drive_all()` loop
|
|
- Added stuck-task detection to `status.py --audit` as Category 5
|
|
|
|
## autopilot.py Commands
|
|
- `--summary`: Shows project task overview (total, terminal, blocked, unblocked, stuck)
|
|
- `--drive`: Drives one step — finds the most advanced unblocked task and outputs next instructions
|
|
- `--loop`: Runs continuous drive loop with configurable iterations and delay
|
|
- `--stuck`: Detects tasks stuck in non-terminal phases >N minutes (default: 60)
|
|
|
|
## How It Works
|
|
- `scan_all_tasks()` reads .state files from all task directories
|
|
- `is_terminal()` checks for complete/human_intervention phases
|
|
- `needs_user_input()` detects approval gates and VERDICT.md with FAIL/NEEDS_REVIEW
|
|
- `sort_by_advancement()` prioritizes tasks closest to completion
|
|
- `detect_stuck_tasks()` finds tasks unchanged >60 minutes in non-terminal phases
|
|
- Empty queue outputs actionable instructions to create new tasks
|