feat(FN-3979): validate overlap coverage for FN-3834 and keep tests type-sa

FN-3979 adds test coverage validating the FN-3834 overlap detection fix: Step 1 introduces overlap validation tests in the merger and self-healing test suites, and Step 2 cleans up a type-safety issue in the overlap test.

Fusion-Task-Id: FN-3979
This commit is contained in:
Fusion
2026-05-11 04:20:49 -07:00
committed by gsxdsm
parent d6da4ebf8d
commit 91a855e705
2 changed files with 5 additions and 2 deletions

View File

@@ -1085,10 +1085,11 @@ describe("aiMergeTask — merge-target branch resolution", () => {
});
describe("aiMergeTask — no-op short-circuit", () => {
it("finalizes to done when branch has zero commits ahead of base", async () => {
it("finalizes to done when branch has zero commits ahead of base (including review-level-0 coordination tasks)", async () => {
const store = createMockStore({
id: "FN-3834-NOOP",
branch: "fusion/fn-3834-noop",
reviewLevel: 0,
mergeDetails: { mergeTargetBranch: "main" },
worktree: "/tmp/root/.worktrees/FN-3834-NOOP",
});

View File

@@ -2360,7 +2360,7 @@ describe("SelfHealingManager", () => {
managerWithRecovery.stop();
});
it("finalizes no-op in-review tasks with zero commits ahead", async () => {
it("finalizes no-op in-review tasks with zero commits ahead (including review-level-0 coordination tasks)", async () => {
const enqueueMerge = vi.fn();
const managerWithRecovery = new SelfHealingManager(store, {
rootDir: "/tmp/test-project",
@@ -2386,6 +2386,7 @@ describe("SelfHealingManager", () => {
paused: false,
status: null,
worktree: "/tmp/test-project/.worktrees/fn-500",
reviewLevel: 0,
steps: [{ name: "Ship it", status: "done" }],
workflowStepResults: [{ id: "ws-1", status: "passed", phase: "pre-merge" }],
mergeDetails: undefined,
@@ -2400,6 +2401,7 @@ describe("SelfHealingManager", () => {
status: null,
mergeRetries: 0,
worktree: "/tmp/test-project/.worktrees/fn-500",
reviewLevel: 0,
steps: [{ name: "Ship it", status: "done" }],
workflowStepResults: [{ id: "ws-1", status: "passed", phase: "pre-merge" }],
mergeDetails: { mergeConfirmed: true, noOpMerge: true },