1a0affeba5
Resolves three content conflicts:
- service_tasks.go: main simplified runAsyncTaskCleanup to drop the
envCleanup parameter; our branch still needs it (we pass
taskEnvironmentCleanup with deleteRow to reset the env row alongside
worktrees). Keep our signature; add a comment about the extra
"taskEnv != nil" branch that keeps cleanup running when only the env
needs reclaiming.
- task-create-dialog-state.ts: main added pickExecutorDisabledReason
(no-repo disables worktree; multi-repo disables non-worktree). Our
branch had useExecutorProfileCompat wrapping useExecutorProfileOptions
with compat metadata (selectedExecutorProfile, noCompatibleAgent).
Keep our wrapper and feed it main's pickExecutorDisabledReason.
- task-create-dialog.tsx: rename collision — HEAD had
hasAllBranchesSelected, main introduced computeHasAllBranches (which
also short-circuits on fs.noRepository). Take main's name + logic;
drop the HEAD duplicate. Then the merged file went 7 effective lines
over the 600 max, so extract the DialogFormBodyProps interface
(62 lines) to task-create-dialog-types.ts where the rest of the
dialog types already live. Final file: 588 lines. Also compact a
handful of destructuring lines in TaskCreateDialog so the function
body stays at 100 lines.