← Documentation indexdocs/superpowers/plans/2026-10-14-v3-issue-241.md

V3 Issue #241 — Working Plans and Task Lifecycle

Issue-specific plan for #241, based on the reviewed #264 migration branch. #242 will add richer atomic edit, ordering, and dependency operations.

Goal: Keep simple work unplanned, allow optional plans for medium work, and require an explicit, mutable, durable Working Plan before substantial complex work. The model proposes strategy; runtime state owns plan and task identity and validates lifecycle transitions.

Scope boundary: Reuse TaskManager, the existing tasks repository, ToolRegistry, and the new ordered SQLite migrations. Add only the persisted plan identity/state and the typed update_plan entry needed by this contract. Full revision history, atomic multi-operation edits, dependency validation, parallel scheduling, and AgentEngine loop replacement remain later issues. Keep textual TaskList/TaskDone confined to legacy compatibility paths while the native structured path adopts the typed plan contract.

Caller and persistence map

Task 1 — Add failing plan and lifecycle regressions

Task 2 — Persist the minimal Working Plan contract

Task 3 — Enforce plan ownership and typed update behavior

Task 4 — Verify and deliver #241

Risks and acceptance

PASS requires simple and medium work to retain low-friction behavior, complex execution to have a durable plan first, stable IDs and legal lifecycle transitions to survive recovery, and no plan/task status to substitute for verified effect or acceptance evidence. Existing textual callers remain on the compatibility path until native AgentEngine migration. No paid provider calls or new dependency are in scope.