Ports TS orchestrator.ts:486-547 to Rust (Task B3 of S3b-3).
- Add `generated_root_id: Option<String>` field (#[serde(skip)]) to
`Subtask` so run.rs can record the top-level node id post-generation.
- Implement `get_dashboard_placeholder_height` — estimates dashboard
main-column height from first 2-3 rows' tallest subtasks + sidebar,
clamped to [560, 680].
- Implement `reorder_dashboard_main_children` — emits sequential
`EditorCommand::MoveNode` commands to re-sort the main column's
children back to plan order after sub-agent generation.
- Both functions live in the new split module
`dashboard_columns/height_reorder.rs` (207 lines).
- 9 new tests in `dashboard_columns_tests_b3.rs`; suite grows from
298 → 307 passing.