Plan
The plan tool maintains a durable epic/task ledger in standing.plan.
Task-owned descendants read their top owner's ledger. Only that owner edits it.
Ownerless conversations maintain separate ledgers.
Edits and receipts commit together. Memo namespaces distinguish nested calls that share a task. The tool returns both JSON text and structured content. The compact prompt section excludes completed epics.
The root document standing.plan.tasks indexes linked child conversations.
A new link or task title change updates the child's metadata title.
Other edits preserve a title that the user supplied.
The first input of a new lineage branch clears its inherited plan atomically.
The hook preserves a branch's plan if the branch already answered.
The reader uses the existing lineage.branch document contract without requiring the lineage extension.
host/tests/plan_todos.rs verifies the port through the world extension loader.