Restore archived tasks, fix dashboard scroll-reset, bind ornith, add Playwright smoke test
- **Restore 82 completed tasks** from tasks/complete/ back to tasks/ top level (all <7 days old per the cleanup policy; premature bulk archive was fixed). - **Dashboard: fix scroll-reset on auto-refresh** — renderBoard rebuilds the board via innerHTML every 2s, destroying each column-body's scrollTop. Now snapshots column-body scrollTop + board.scrollLeft + view.scrollTop before rebuild and restores after (matched by PHASE_GROUPS index). - **Dashboard UI additions** (pre-existing unstaged work): approval section cards, transition buttons, inline artifact editor (textarea for writing missing SPEC/VERDICT/etc from the detail modal). - **Bind ornith as Implement model** — config.md: Model explicit to omlx/Ornith-1.0-35B-4bit-mlx, context window 32768. Interactive autopilot already used ornith via opencode default; now explicit. - **Fix cleanup stub** — automaton-cleanup.sh had a stale --project arg pointing at a pytest temp dir (test isolation leak). Rewired to point at ~/.automaton. - **Fix plist-isolation test** — test asserted host plist doesn't exist, but a real install creates it. Now snapshots mtime before run, asserts unchanged after (only a write during the test counts as bleed). - **New Playwright smoke test** (tests/test_dashboard_ui.py) — 2 tests: board renders tasks, column scroll survives auto-refresh tick. Verified the test fails without the scroll fix (scrollTop resets to 0). Skipped via importorskip when playwright is absent (main CI stays green). - **Clarify SI loop scope in README** — new-project onboarding section documents the framework-scoped self-improvement loop and options (leave/pause/create project loop). - **CHANGELOG** documents all changes including the known model-divergence gap (mde tasks marked complete but per-role model binding was never implemented).
This commit is contained in:
@@ -0,0 +1 @@
|
||||
complete
|
||||
@@ -0,0 +1 @@
|
||||
# ADVERSARIAL_BUG_REPORT\n\nNo adversarial issues found.
|
||||
@@ -0,0 +1 @@
|
||||
# BUG_REPORT\n\nNo bugs found.
|
||||
@@ -0,0 +1 @@
|
||||
# DOC_REVIEW\n\nChanges are minimal and well-understood.
|
||||
@@ -0,0 +1,12 @@
|
||||
# IMPLEMENTATION.md — Category 3 Audit
|
||||
|
||||
## Changes Made
|
||||
- `scripts/status.py:698-703`: Replaced "future work" stub with `_audit_category3()` function call
|
||||
- `scripts/status.py:605-660`: Added `_audit_category3()` function implementing git-based modification detection
|
||||
|
||||
## How It Works
|
||||
- Checks `git diff --name-only HEAD` and `git diff --cached --name-only HEAD` for uncommitted changes
|
||||
- Excludes files inside task folders (those are legitimate workflow artifacts)
|
||||
- If no task is in implement/doc_review phase, all uncommitted changes outside task folders are flagged as violations
|
||||
- If active edit tasks exist, changes outside task folders are reported as informational
|
||||
- Handles missing .git directory gracefully
|
||||
@@ -0,0 +1,4 @@
|
||||
# Review
|
||||
- **Status**: approved
|
||||
- **Timestamp**: 2026-06-15T17:33:41.262698
|
||||
- **Comment**:
|
||||
@@ -0,0 +1,16 @@
|
||||
# Implement Category 3 Audit (Git-Based Modification Detection)
|
||||
|
||||
## Problem
|
||||
Category 3 audit (status.py:698-702) is stubbed out with "future work". The framework cannot detect unauthorized modifications.
|
||||
|
||||
## Fix
|
||||
Implement git-based modification checking:
|
||||
1. Check git diff for uncommitted changes to files outside task folders
|
||||
2. Check `git log --diff-filter=M --name-only` for recent modifications not associated with open tasks
|
||||
3. Flag files modified when no task is in implement/doc_review phase
|
||||
4. Report violations with file paths and suggested action
|
||||
|
||||
## Verification
|
||||
- `status.py --audit` includes Category 3 findings
|
||||
- Detects unauthorized modifications
|
||||
- Separates false positives (framework files, config files)
|
||||
@@ -0,0 +1,3 @@
|
||||
VERDICT: PASS
|
||||
|
||||
All fixes verified. 206 tests pass.
|
||||
Reference in New Issue
Block a user