Files
automaton/automaton/dashboard
gitea 21f16b7da2
CI / build (push) Has been cancelled
Fix verdict parsing + plug stale-task enforcement hole
- task.py: remove naive substring fallback from parse_verdict_status(),
  only parse ## Status: header; no header → ambiguous (REFEREE)
- status.py: add _auto_update_verdict_on_complete() — when transitioning
  human_intervention→complete, auto-update VERDICT.md to PASS
- status.py: add stale-task detection to --can-edit — deny edits if
  all edit tasks have .state mtime >30 min old (reason: stale_task)
- status.py: add --touch command to reset task activity clock
- guard plugin: handle stale_task reason with specific error message
- Update test to match new verdict parsing behavior
2026-06-15 21:55:17 -04:00
..
…

Automaton Dashboard

Interactive web dashboard for monitoring automaton framework task progress.

Installation

The dashboard is part of the automaton framework. No separate installation is needed.

# From your automaton installation directory
python -m automaton.dashboard

Usage

# Start from the current directory
python -m automaton.dashboard

# Start from a specific project directory
python -m automaton.dashboard /path/to/project

# Custom host/port
python -m automaton.dashboard --host 0.0.0.0 --port 3000

The dashboard opens in your browser at http://localhost:8080.

Scope-Aware

The dashboard automatically detects its scope based on the current working directory:

  • Framework mode: When run from ~/.automaton/, tracks framework development tasks
  • Project mode: When run from a project root (a project that has installed automaton), tracks that project's tasks

Views

Board View (Default)

The primary Kanban board view showing tasks organized by their current phase:

  Backlog (0)  │  Research (1)  │  Design (0)  │  Implement (0)  │  Done (1)  │  Blocked (1)
  ──────────────│────────────────│──────────────│─────────────────│──────────────│──────────────
  — empty —     │ ▸ research-   │              │                 │ ✅ implement │ ❌ bad-impl
                │   task        │              │                 │   task       │
                ────────────────│───────────────│─────────────────│──────────────│──────────────
                ─ empty —       │               ────────────────  │──────────────│──────────────

Statistics View

Shows task statistics including phase distribution, pass/fail rates, and sub-task statistics.

Timeline View

Shows task progress through phases as a timeline with wave visualization for decomposed tasks.

Task Detail Panel

Click any task card to open a detail panel showing:

  • Status badge with a status reason explaining why the task is in its current state
  • Artifacts checklist showing which phase artifacts exist
  • Review controls — approve, request changes, or revoke a previous review
  • Sub-task list with verdict indicators for decomposed tasks
  • Content sections for specification, decomposition, parent context, VRAM configuration, verdict, and bug reports

Keyboard Shortcuts

Key Action
Space Cycle views (Board → Stats → Timeline)
1 Board view
2 Statistics view
3 Timeline view
t Cycle themes (default → dark → light)
r Manual refresh
f Toggle filter bar
s Focus search
? Show help
Esc Close modals / clear search

Configuration

Create a dashboard-config.json file in your project's .automaton/ directory:

{
    "auto_refresh_interval": 2,
    "default_view": "board",
    "column_width": 30,
    "show_timelines": true,
    "theme": "default"
}

Configuration Options

Option Type Default Description
auto_refresh_interval int 2 Seconds between auto-refreshes (1-60)
default_view string "board" View to show on startup
column_width int 30 Minimum width of each column in characters
show_timelines bool true Show time elapsed on cards
theme string "default" Color theme ("default", "dark", "light")

Color Themes

  • Default: Bright colors on dark background
  • Dark: Dimmed colors for a darker appearance
  • Light: Softer colors for light displays

Phase Mapping

Kanban Column Automaton State Artifact
Backlog New No artifacts
Research Research SPEC.md
Decomposition Decomposition SPEC.md + DECOMPOSITION.md
Design Design DESIGN.md
Test Design Test Design TEST_PLAN.md
Implement Implement IMPLEMENTATION.md
Bug Find Bug Find BUG_REPORT.md
Adversarial Bug Find Adversarial Bug Find ADVERSARIAL_BUG_REPORT.md
Doc Review Doc Review DOC_REVIEW.md
Referee Referee VERDICT.md
Done Complete VERDICT.md (PASS)
Blocked Human Intervention VERDICT.md (FAIL/NEEDS_REVIEW)

Architecture

automaton/dashboard/
├── __init__.py          # Package marker
├── __main__.py          # Entry point (python -m automaton.dashboard)
├── config.py            # Configuration management
├── README.md            # This file
├── core/
│   ├── scope.py         # Scope detection (framework vs project mode)
│   ├── task.py          # Task model, state machine, artifact parsing
│   ├── board.py         # Kanban board logic
│   ├── stats.py         # Statistics calculations
│   └── timeline.py      # Timeline data
└── ui/
    ├── app.py           # Web server (HTTP + API endpoints)
    └── html/
        ├── index.html   # Dashboard UI
        ├── styles.css   # All styling (3 themes via CSS variables)
        └── dashboard.js # All UI logic (Kanban, stats, timeline, filtering)

Non-Goals

  • Real-time collaboration — single-user only
  • Task creation/editing — read-only view
  • Notification system — no push notifications
  • Calendar integration — no date-based scheduling
  • External PM tool integration — standalone only