feat(FN-4070): add workflow revision forking for task retries

Implements workflow revision forking with a new per-project setting, allowing follow-up tasks to inherit a fork of the calling task's workflow rather than the original revision. The feature adds classification logic, fork execution, and the settings UI, with docs and tests covering the full flow.

Fusion-Task-Id: FN-4070
This commit is contained in:
Fusion
2026-05-12 01:28:36 -07:00
committed by gsxdsm
parent 0b6795e96f
commit 1a1f60c748
11 changed files with 663 additions and 35 deletions

View File

@@ -208,6 +208,7 @@ export const DEFAULT_PROJECT_SETTINGS = {
worktreeRebaseLocalBase: true,
mergeConflictStrategy: "smart-prefer-main",
workflowStepTimeoutMs: 360_000,
workflowRevisionForkOnScopeMismatch: true,
strictScopeEnforcement: false,
buildRetryCount: 0,
verificationFixRetries: 3,

View File

@@ -2173,6 +2173,11 @@ export interface ProjectSettings {
* given one shot to retry with the configured fallback model before the
* step is reported as failed. Default: 360_000 (6 minutes). */
workflowStepTimeoutMs?: number;
/** When true (default), workflow revision feedback that explicitly names files
* outside the task's declared File Scope is forked into a dependent follow-up
* task instead of being appended to the original PROMPT.md. Set to false to
* preserve the legacy append-and-rerun behavior. */
workflowRevisionForkOnScopeMismatch?: boolean;
/** When true, out-of-scope file changes block merge instead of just logging warnings.
* Useful for teams that want strict enforcement of declared File Scope.
* Default: false (soft guardrail — warnings only). */