FN-7415: Delete stale executor pause quarantine

Delete the expired executor pause quarantine and its stale direct-dispatch coverage.

- Remove the obsolete executor-pause test suite after the graph runtime cutover.
- Clear the matching Vitest exclude and quarantine-ledger entry.
- Refresh test audit, timing, line-count, and planning references for the deleted suite.

Files changed:
 ...7-001-refactor-workflow-runtime-cutover-plan.md |    2 +-
 docs/test-value-audit.json                         |  102 -
 .../engine/src/__tests__/executor-pause.test.ts    | 3061 --------------------
 packages/engine/vitest.config.ts                   |    5 -
 scripts/__tests__/test-velocity-baseline.test.mjs  |    2 +-
 scripts/lib/test-quarantine.json                   |    8 +-
 scripts/line-count-baseline.json                   |    1 -
 scripts/test-timings.json                          |    1 -
 8 files changed, 3 insertions(+), 3179 deletions(-)

Fusion-Task-Id: FN-7415
Fusion-Task-Lineage: 3d1551c8-1353-47cb-a70f-d88e733a6652
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
This commit is contained in:
gsxdsm
2026-07-02 05:01:35 -07:00
parent 00ce5d6a27
commit 4178e7d325
8 changed files with 3 additions and 3179 deletions

View File

@@ -167,7 +167,7 @@ The runtime should have one mental model: resolve a workflow, execute graph node
- **Goal:** Route scheduler, task-moved, heartbeat resume, pause/unpause, and self-healing triggers through the workflow runtime.
- **Requirements:** R1, R3, R7, R9.
- **Dependencies:** U5.
- **Files:** `packages/engine/src/scheduler.ts`, `packages/engine/src/executor.ts`, `packages/engine/src/project-engine.ts`, `packages/engine/src/self-healing-manager.ts` or adjacent recovery modules, `packages/engine/src/__tests__/executor-abort-all-in-flight.test.ts`, `packages/engine/src/__tests__/executor-pause.test.ts`, `packages/engine/src/__tests__/reliability-interactions/engine-stop-aborts-execution.test.ts`, `packages/engine/src/__tests__/reliability-interactions/in-review-automerge-off.test.ts`, `packages/engine/src/__tests__/reliability-interactions/workflow-interpreter-dual-observe.test.ts`.
- **Files:** `packages/engine/src/scheduler.ts`, `packages/engine/src/executor.ts`, `packages/engine/src/project-engine.ts`, `packages/engine/src/self-healing-manager.ts` or adjacent recovery modules, `packages/engine/src/__tests__/executor-abort-all-in-flight.test.ts`, `packages/engine/src/__tests__/reliability-interactions/engine-stop-aborts-execution.test.ts`, `packages/engine/src/__tests__/reliability-interactions/in-review-automerge-off.test.ts`, `packages/engine/src/__tests__/reliability-interactions/workflow-interpreter-dual-observe.test.ts`.
- **Approach:** Make runtime run claims the authority for "currently executing". Existing `executingTaskLock`, active session registries, configured command controllers, and heartbeat gates should move behind runtime primitives or runtime ownership checks. Recovery sweeps should inspect workflow-run state before mutating active tasks.
- **Execution note:** Characterization-first for cancel/pause and auto-merge-off interactions.
- **Patterns to follow:** `executingTaskLock`, `maybeExecuteWorkflowGraph` duplicate guard, `ProjectEngine.requestInterpreterMerge`, reliability-interactions suites.

View File

@@ -16822,108 +16822,6 @@
}
]
},
{
"file": "packages/engine/src/__tests__/executor-pause.test.ts",
"package": "packages/engine",
"valueScore": -1,
"positiveCount": 8,
"negativeCount": 6,
"neutralCount": 1,
"timesTouched": 15,
"testOnlyCount": 5,
"testOnlyRatio": 0.333,
"signalTally": {
"added": 1,
"test-only-churn": 5,
"churn-keyword": 5,
"test+source": 6,
"fix+source": 3
},
"durationMs": 300,
"testCount": 86,
"quarantined": false,
"recommendation": "delete",
"safeDelete": false,
"deletionPriority": 315,
"ageDays": 49,
"lastTouched": "2026-06-25",
"evidence": [
{
"sha": "f240683fc",
"time": 1778221265000,
"subject": "feat(FN-3720): split executor.test.ts into eight focused suites and add she",
"status": "A",
"touchedSource": false,
"category": "positive",
"weight": 1,
"signals": [
"added"
]
},
{
"sha": "234c2a594",
"time": 1778481370000,
"subject": "feat(FN-3968): add tests for task env inheritance and isolation in spawn/ch",
"status": "M",
"touchedSource": false,
"category": "negative",
"weight": -1,
"signals": [
"test-only-churn"
]
},
{
"sha": "7298c9607",
"time": 1778597230000,
"subject": "feat(FN-4087): replace sleep() with deterministic waits in tests",
"status": "M",
"touchedSource": false,
"category": "negative",
"weight": -4,
"signals": [
"churn-keyword",
"test-only-churn"
]
},
{
"sha": "4e6440a12",
"time": 1778735018000,
"subject": "feat(FN-4389): complete Step 8 — run verification and fix regressions",
"status": "M",
"touchedSource": true,
"category": "positive",
"weight": 1.5,
"signals": [
"test+source"
]
},
{
"sha": "af1660881",
"time": 1779232524000,
"subject": "feat(FN-5168): complete Step 2 — executor feeds ignored step-update churn",
"status": "M",
"touchedSource": true,
"category": "positive",
"weight": 1.5,
"signals": [
"test+source"
]
},
{
"sha": "cf0101be7",
"time": 1779379583000,
"subject": "fix(FN-5256): keep live task worktrees through pause/resume races",
"status": "M",
"touchedSource": true,
"category": "neutral",
"weight": 0,
"signals": [
"churn-keyword",
"fix+source"
]
}
]
},
{
"file": "packages/engine/src/__tests__/reliability-interactions/todo-inprogress-flapping.test.ts",
"package": "packages/engine",

File diff suppressed because it is too large Load Diff

View File

@@ -149,11 +149,6 @@ export default defineConfig({
FNXC:EngineTests 2026-06-14-02:11:
FN-6433 rescued the AI-merge suites by replacing broad activeSessionRegistry cleanup with path-scoped cleanup, so the default engine lane should execute them again. The soft-delete blocker residue suite was deleted under the ratchet because deterministic soft-delete deadlock coverage already owns that invariant.
*/
/*
FNXC:EngineTests 2026-06-29-13:55:
FN-7239 quarantines executor-pause.test.ts under the deletion ratchet because it still asserts obsolete direct-dispatch StepSessionExecutor and legacy pause paths after builtin:coding moved to graph execution. Keep graph-path equivalents active in step-session-executor, executor-paused-abort-todo-benign, and workflow-graph-step-rerun before rescuing or deleting this file.
*/
"src/__tests__/executor-pause.test.ts",
],
},
},

View File

@@ -287,7 +287,7 @@ describe("main", () => {
writeJson(rootDir, "scripts/lib/test-quarantine.json", {
entries: [
{
file: "packages/engine/src/__tests__/executor-pause.test.ts",
file: "packages/engine/src/__tests__/hypothetical-quarantined.test.ts",
reason: "FN-7239: stale post-cutover direct-dispatch StepSessionExecutor/legacy pause assertions fail after builtin:coding graph cutover.",
quarantinedAt: "2026-06-29",
},

View File

@@ -1,10 +1,4 @@
{
"$comment": "Flaky-test quarantine ledger (deletion ratchet — see AGENTS.md 'Flaky tests: quarantine on sight' and docs/testing.md 'Quarantine ledger and the deletion ratchet'). A test observed failing without a corresponding real bug is quarantined ON SIGHT: add an entry here AND a matching one-line `exclude` entry in that package's vitest config, in the same commit. Every entry needs a non-empty `reason` (link the failing run) and a `quarantinedAt` date — the entry expires 14 days later, at which point the test file is DELETED unless someone rescues it with evidence it catches real regressions plus a root-cause fix (never appeasement). There is deliberately no loader module and no automation around this file: it is a dated record, the vitest config exclude is the mechanism, and the sweep is policy executed by whoever touches the suite.",
"entries": [
{
"file": "packages/engine/src/__tests__/executor-pause.test.ts",
"reason": "FN-7239: stale post-cutover direct-dispatch StepSessionExecutor/legacy pause assertions fail after builtin:coding graph cutover; equivalent direct step-session, pause-abort graph, and graph rerun coverage remains active. Local targeted run: pnpm --filter @fusion/engine exec vitest run --project engine-default src/__tests__/workflow-graph-executor-retry-coding-workflow.test.ts src/__tests__/executor-pause.test.ts --silent=passed-only --reporter=dot (2026-06-29).",
"quarantinedAt": "2026-06-29"
}
]
"entries": []
}

View File

@@ -76,7 +76,6 @@
"packages/dashboard/src/routes/register-settings-memory-routes.ts": 2382,
"packages/dashboard/src/routes/register-task-workflow-routes.ts": 3902,
"packages/dashboard/src/server.ts": 2467,
"packages/engine/src/__tests__/executor-pause.test.ts": 3019,
"packages/engine/src/__tests__/executor-prompt.test.ts": 2573,
"packages/engine/src/__tests__/executor-step-session.test.ts": 3779,
"packages/engine/src/__tests__/executor-worktree.test.ts": 2536,

View File

@@ -1402,7 +1402,6 @@
"packages/engine/src/__tests__/executor-implicit-task-done-revise-guard.test.ts": 100,
"packages/engine/src/__tests__/executor-lease-renewal.test.ts": 100,
"packages/engine/src/__tests__/executor-missing-task-json-transient.test.ts": 100,
"packages/engine/src/__tests__/executor-pause.test.ts": 300,
"packages/engine/src/__tests__/executor-paused-abort-todo-benign.test.ts": 100,
"packages/engine/src/__tests__/executor-plan-only-scope-leak.test.ts": 100,
"packages/engine/src/__tests__/executor-prompt.test.ts": 500,