16. Plan and todo
16.1 Plan
Under plan mode the assistant typically produces a structured plan:
- Overall goal
- Phases
- Per-phase inputs / outputs / risks
The plan shows on a floating card and supports:
- ✓ Accept (enter execute)
- ✏ Edit (edit inline and hand back)
- ✗ Reject (have the assistant redo)
16.2 Todo
During execution the assistant maintains a live todo list, marking progress:
- Todo
- In progress
- Done
- Skipped / failed
Live on the right-side float; you can add / edit / delete items at any time.
16.3 Preserved across compaction
When history compaction happens (Chapter 17), plan and todo structured state is preserved verbatim in the new summary — never compressed into something fuzzy. So even in long conversations the AI knows exactly "what I'm doing, where I am".
16.4 End-of-turn todo nudge
When a turn wraps up (isGoalTurnFinalRecord) and the todo list still has open items, AVL Code auto-injects a hidden user message (source = auto_todo_nudge) prompting the agent to verify progress: mark completed ones as completed, continue on the unfinished, and explicitly stop on blocked ones.
- Prevents the "half-done work, dangling todos with no follow-up" pattern.
- Same family as goal auto-continuation and the compact nudge — another end-of-turn hook member.
- Hidden user message: doesn't show in the visible conversation stream, but the agent reads and responds to it.
