v0.15.0 — Loop Phase
First-class Loop primitive across the full autonomy gradient — interval, self-paced, and autonomous "work-the-backlog" loops — and the first deliberate, documented extension past the Opus 4.5 era-lock. Loops ship OFF by default (loopsEnabled: false), so the era-faithful default experience is unchanged.
Highlights:
/loop <task>(self-paced) ·/loop 5m <task>(interval) ·/loop --auto <mission>(autonomous)- Headless main-process turn runner: a fired wake-up / loop iteration now runs a real turn with the window closed (closes the long-standing G1 defect where wake-ups never ran)
- Dedicated backlog queue, hard ceilings (iterations / wall-clock / token budget / stall watchdog / runaway floor), three stop authorities, idempotency progress ledger
- Loops right-panel pill: live status / iteration / budget / next-fire + backlog management
- Model tools: loop_enqueue / loop_complete_task / loop_control
Gate: lint, tsc node+web, full vitest 2240 passed / 130 skipped / 0 failed, build, verify:proof all green. See PLANNING/LAMPREY_LOOP_PLAN.md.