Missions now carries the selected header workflow through feature and slice triage so created tasks land in the intended lane. - Add a reusable header workflow switcher slot and share it between Planning and Missions. - Thread the selected workflow through mission triage UI, API client calls, routes, and MissionStore task creation. - Cover mission workflow triage behavior with core, dashboard UI, and route tests. - Document Missions workflow behavior and add a patch changeset. Files changed: .changeset/fn-6942-mission-workflow-selection.md | 7 + docs/dashboard-guide.md | 11 ++ packages/core/src/__tests__/mission-store.test.ts | 114 ++++++++++++ packages/core/src/mission-store.ts | 8 + packages/dashboard/app/api/legacy.ts | 10 +- .../app/components/HeaderWorkflowSwitcherSlot.tsx | 99 +++++++++++ .../dashboard/app/components/MissionManager.tsx | 23 ++- .../components/PlanningWorkflowSwitcherSlot.tsx | 81 +-------- .../__tests__/HeaderWorkflowSwitcherSlot.test.tsx | 124 +++++++++++++ .../MissionManager.workflow-triage.test.tsx | 191 +++++++++++++++++++++ .../app/components/dashboard/MainContent.tsx | 15 +- packages/dashboard/src/mission-routes.ts | 21 ++- .../mission-workflow-triage-route.test.ts | 149 ++++++++++++++++ 13 files changed, 765 insertions(+), 88 deletions(-) Fusion-Task-Id: FN-6942 Fusion-Task-Lineage: 53d7b2ea-01cc-4eb6-bdda-988fb684602c
17 lines
689 B
TypeScript
17 lines
689 B
TypeScript
import { HeaderWorkflowSwitcherSlot } from "./HeaderWorkflowSwitcherSlot";
|
|
|
|
/*
|
|
FNXC:PlanningWorkflowSwitcher 2026-06-25-00:00:
|
|
Planning keeps this compatibility wrapper while the neutral HeaderWorkflowSwitcherSlot owns the shared header portal behavior. Missions uses the same slot so task-creating views share one workflow-selection affordance without duplicating polling or WorkflowSwitcher markup.
|
|
*/
|
|
|
|
interface PlanningWorkflowSwitcherSlotProps {
|
|
projectId?: string;
|
|
onOpenWorkflowEditor?: () => void;
|
|
onCreateWorkflow?: () => void;
|
|
}
|
|
|
|
export function PlanningWorkflowSwitcherSlot(props: PlanningWorkflowSwitcherSlotProps) {
|
|
return <HeaderWorkflowSwitcherSlot {...props} />;
|
|
}
|