# SPEC: Enforce Task-Driven Development via Framework Rules ## Overview The automaton framework has a task-driven workflow (SPEC → Design → Implementation → Verification → Resolution) but nothing tells the AI agent to follow it. The agent makes ad-hoc edits instead of creating proper tasks first. ## Root Cause The agent reads `system-prompt.md`, `.agent.md`, and `.rules.md` at startup, but none instruct it to use the task-driven process. The agent treats framework modifications as "normal coding." ## Framework Audit Context This task covers 4 gaps identified in `framework-audit/RESEARCH.md`: | Gap | Principle | Rule to Add | |-----|-----------|-------------| | G1 | Task-driven development | Create task before editing files | | G2 | VRAM-aware task sizing | Check config.md VRAM before scoping tasks | | G4 | No manual task creation | Never mkdir tasks/ — use Orchestrator | | G5 | Agent reads global rules | system-prompt.md must read global .rules.md | | G6 | Self-improving rules | Add rules per failure mode observed | ## Changes ### 1. `~/.automaton/.rules.md` Replace the template with concrete rules: ```markdown # .rules.md ## Task-Driven Development - All changes must go through a task in tasks/{name}/ with SPEC.md → phases → VERDICT.md - Never edit files directly without a corresponding task - Never create task directories manually (mkdir tasks/) — use the Orchestrator ## VRAM-Aware Task Sizing - Before creating or scoping a task, check ~/.automaton/config.md for VRAM limits - Verify the task fits within max peak context (default: 12k tokens) - If no config exists, default to 8k with 25% headroom ## Self-Improvement - Add one rule per observed failure mode with a concrete example - Consolidate contradictions monthly. Remove stale rules. - No rule without a real example of the problem it prevents ``` ### 2. `system-prompt.md` After existing instructions, add: ``` 4. Read ~/.automaton/.rules.md (global framework rules) ``` ## Acceptance Criteria - [ ] `~/.automaton/.rules.md` has Task-Driven Development, VRAM-Aware Sizing, and Self-Improvement sections - [ ] `system-prompt.md` instructs agent to read global `.rules.md` - [ ] Agent creates tasks before making changes - [ ] Agent checks VRAM limits before scoping tasks - [ ] Agent never creates task directories manually ## Out of Scope - Documentation/changelog process (separate task) - Project migration/cleanup (separate task) - Onboarding changes (separate task) - Dashboard task review UI (separate task)