FN-5828: route shared mission triage to per-task working branches
Ensure mission shared-branch triage creates unique task branches while preserving a single shared merge target. - Compute branch assignment during mission feature triage with resolveEntryPointBranchAssignment and persist per-task working branches in shared mode. - Keep shared branch-group initialization tied to the mission merge-target branch for shared assignment flows. - Update core and dashboard mission triage tests to assert distinct per-task branches under shared strategy and verify branch-group behavior. - Refresh mission docs to clarify shared vs per-task-derived branch strategy semantics. Files changed: docs/missions.md | 8 +-- packages/core/src/__tests__/mission-store.test.ts | 42 +++++++++++++-- packages/core/src/mission-store.ts | 19 ++++--- packages/dashboard/src/__tests__/mission-e2e.test.ts | 63 ++++++++++++++++++++-- 4 files changed, 115 insertions(+), 17 deletions(-) Fusion-Task-Id: FN-5828 Fusion-Task-Lineage: 9854ea25-6926-4883-92ae-36a5c0a817c5
This commit is contained in:
@@ -40,10 +40,10 @@ Missions can also persist a `branchStrategy` used whenever triage is triggered w
|
||||
|
||||
Supported modes:
|
||||
|
||||
- `project-default` (or absent): shared branch behavior; no per-task derivation
|
||||
- `auto-per-task`: sets `branchAssignment.mode = "per-task-derived"` (task branches auto-derived from task details)
|
||||
- `existing`: shared branch using `branchSelection.mode = "existing"` with `branchName`
|
||||
- `custom-new`: shared branch using `branchSelection.mode = "custom-new"` with `branchName`
|
||||
- `project-default` (or absent): shared mode; each triaged feature gets a distinct per-task working branch (for example `<shared-branch>/<feature-id>`) while the shared branch remains the mission group merge target
|
||||
- `auto-per-task`: sets `branchAssignment.mode = "per-task-derived"` (distinct per-task working branches with no shared mission group merge target)
|
||||
- `existing`: shared mode using `branchSelection.mode = "existing"` with `branchName` as the shared merge-target branch
|
||||
- `custom-new`: shared mode using `branchSelection.mode = "custom-new"` with `branchName` as the shared merge-target branch
|
||||
|
||||
The Mission Manager create/edit form exposes this as **Branch strategy** plus a conditional **Branch name** field for `existing` and `custom-new`.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user