FN-6168: expose workflow routing in triage
Add workflow discovery, selection, and investigation-task routing guidance to triage. - document workflow routing guidance in standard and fast triage prompts - add workflow list/select tools to triage sessions for task specification - pass workflow_id and noCommitsExpected through fn_task_create for child tasks - cover prompt/tool availability and child-task routing in triage tests - add a changeset and workflow docs for triage workflow selection behavior Files changed: .changeset/fn-6168-triage-workflow-routing.md | 5 ++ docs/workflow-steps.md | 2 + packages/engine/src/__tests__/triage.test.ts | 93 +++++++++++++++++++++++++++ packages/engine/src/triage.ts | 27 ++++++++ 4 files changed, 127 insertions(+) Fusion-Task-Id: FN-6168 Fusion-Task-Lineage: acfcebd5-bb9c-42ba-90a0-e9bcb90216b3
This commit is contained in:
@@ -40,6 +40,8 @@ The default built-in catalog entry `builtin:coding` is backed by the canonical `
|
||||
|
||||
`builtin:stepwise-coding` is a separate graph variant backed by `BUILTIN_STEPWISE_CODING_WORKFLOW_IR`; it keeps the same lifecycle columns/traits while modeling per-step parse/execute/review/rework as authored graph structure.
|
||||
|
||||
During triage/planning sessions, agents can call `fn_workflow_list` to discover available built-in and custom workflows and read their descriptions before routing work. They can call `fn_workflow_select` to select a workflow for the task being specified, or pass `workflow_id` when creating child tasks with `fn_task_create`; decision-only or investigation tasks can also set `noCommitsExpected` / `**No commits expected:** true` when no code changes are expected.
|
||||
|
||||
#### Runtime invariant criterion
|
||||
|
||||
Workflow-driven coding runs must preserve observable task transitions and reliability invariants: file-scope guards including `FileScopeViolationError`, squash/merge contract, recovery expectations, `autoMerge:false` terminal-until-merged, and `moveTask(in-progress→todo)` hard-cancel semantics.
|
||||
|
||||
Reference in New Issue
Block a user