Generate a plan as a valid JSON object using the provided schema.
Rules:
- Return only JSON.
- Do not include markdown.
- Break the work into phases, tasks, and subtasks.
- Every phase, task, subtask, risk, milestone, question, and action must have a stable ID.
- Tasks should be small enough to be assigned or tracked individually.
- Subtasks should describe concrete actions, not vague goals.
- Include dependencies using IDs from earlier tasks or subtasks when possible.
