# Planning Anti-patterns

Failure modes to avoid when generating the F2 phase plan and milestones.

- **Structure without estimation.** Producing phases and milestones but no hours estimate. The estimation is the point of this step (it feeds the commercial offer and SOW). Every milestone needs hours.
- **No buffer.** Estimating effort with no contingency buffer. Always add an explicit buffer.
- **Fabricated hours or dates.** Inventing hours or calendar dates with no basis. Mark them `NEEDS INPUT` instead.
- **Missing team profile.** Omitting roles and counts, or a team that contradicts the HLA stack.
- **No total duration.** Failing to derive a total F2 duration from effort + team.
- **Value-blind ordering.** Milestones ordered arbitrarily instead of putting the highest-value/criticality RFs first.
- **Untraceable phases.** Phases that do not list the RF IDs they cover, or RNFs not assigned to a gate.
- **Running ahead.** Auto-chaining into `draft-prds`. Only suggest the next command.
- **Hand-written Markdown.** Writing `phase-plan.md` directly instead of assembling it from `.blocks` + template via `assemble-doc.sh`.
