gsxdsm
4fee2c1324
FN-5671: add branch-strategy selection to new task creation
Add branch-strategy based task branch handling from modal through task creation routes.
- add branch strategy dropdown + validation in New Task modal and TaskForm, including required branch-name handling for existing/custom-new modes
- send structured branchSelection payload from dashboard API client and cover UI/API behavior with new tests
- add server-side branch selection mode parsing, auto-new branch derivation (fusion/<task-id>-<slug>), and response updates when auto branch is generated
- update engine/worktree and dashboard route tests plus dashboard guide documentation
- add a changeset for @runfusion/fusion patch release
Files changed:
.changeset/fn-5671-branch-strategy-dropdown.md | 7 ++
docs/dashboard-guide.md | 16 +++++
packages/dashboard/app/__tests__/api-tasks.test.ts | 21 ++++++
packages/dashboard/app/api/legacy.ts | 9 +++
packages/dashboard/app/components/NewTaskModal.css | 8 +++
packages/dashboard/app/components/NewTaskModal.tsx | 41 +++++++++---
packages/dashboard/app/components/TaskForm.tsx | 30 ++++++++-
.../app/components/__tests__/NewTaskModal.test.tsx | 77 +++++++++++++++++++---
.../src/__tests__/branch-selection.test.ts | 13 ++++
.../dashboard/src/__tests__/routes-tasks.test.ts | 72 ++++++++++++++++++++
packages/dashboard/src/routes/branch-selection.ts | 45 ++++++++-----
.../src/routes/register-task-workflow-routes.ts | 22 +++++--
.../engine/src/__tests__/worktree-pool.test.ts | 41 ++++++++++++
packages/engine/src/worktree-pool.ts | 2 +-
14 files changed, 361 insertions(+), 43 deletions(-)
Fusion-Task-Id: FN-5671
Fusion-Task-Lineage: 7f2e7b68-050d-4a2c-af0b-cb895de35576
2026-05-29 09:44:17 -07:00
..
2026-04-24 19:39:20 -07:00
2026-05-22 20:20:42 -07:00
2026-05-19 20:29:59 -07:00
2026-05-09 17:05:43 -07:00
2026-05-08 17:17:59 -07:00
2026-05-25 16:32:57 -07:00
2026-05-15 16:19:42 -07:00
2026-05-12 07:47:10 -07:00
2026-05-07 18:47:08 -07:00
2026-05-09 10:31:04 -07:00
2026-04-24 19:39:20 -07:00
2026-05-29 09:44:17 -07:00
2026-05-16 12:49:57 -07:00
2026-05-07 18:35:45 -07:00
2026-05-07 23:21:05 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:24:18 -07:00
2026-05-18 05:35:14 -07:00
2026-04-23 13:29:23 -07:00
2026-05-17 10:37:54 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:24:18 -07:00
2026-05-20 14:28:45 -07:00
2026-05-11 10:54:26 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-04-24 19:39:20 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-04-24 19:39:20 -07:00
2026-05-22 10:37:21 -07:00
2026-05-07 14:09:39 -07:00
2026-05-19 01:59:22 -07:00
2026-05-10 23:36:10 -07:00
2026-05-29 09:32:22 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:24:18 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:24:18 -07:00
2026-04-07 23:25:34 -07:00
2026-05-23 20:24:18 -07:00
2026-03-28 16:30:23 -04:00
2026-04-24 22:25:57 -07:00
2026-05-22 10:37:21 -07:00
2026-05-22 20:20:42 -07:00
2026-05-15 10:05:46 -07:00
2026-05-22 20:20:42 -07:00
2026-05-02 02:54:26 -07:00
2026-05-29 08:20:28 -07:00
2026-04-24 19:39:20 -07:00
2026-05-07 23:21:05 -07:00
2026-05-08 01:57:55 -07:00
2026-05-06 05:29:56 -07:00
2026-05-17 19:11:59 -07:00
2026-05-17 03:28:21 -07:00
2026-05-08 07:38:50 -07:00
2026-05-17 15:11:48 -07:00
2026-05-28 19:45:27 -07:00
2026-04-24 19:39:20 -07:00
2026-04-30 21:26:54 -07:00
2026-05-23 20:24:18 -07:00
2026-05-13 10:00:00 -07:00
2026-05-17 19:11:59 -07:00