Planning is search under constraints
A plan is not a pretty numbered list. It is a search strategy with constraints: tools available, budget, risk, acceptance criteria, and known unknowns. Good agents use planning to change execution, not to decorate the transcript.
Use branches when the first route is not obviously best
Tree-of-thought style planning is useful when several plausible routes exist and the cost of a bad route is high. Generate alternatives, score them against explicit criteria, then execute the selected route. Do not branch for trivial tasks. That is just latency cosplay.
Reflection must be tied to requirements
Reflection without criteria becomes wordy self-praise. A reviewer pass should check named requirements, evidence, tests, safety boundaries, and stop reasons. If the review fails, the next run must change something.