feat(FN-5496): reconcile soft-deleted tasks with active blockers
Added soft-delete blocker recovery logic to the scheduler and self-healing systems, enabling reconciliation of stale blocker reasons when tasks are archived or restored. The changes include corresponding tests for the completion guard behavior, scheduler recovery paths, and self-healing integration, Fusion-Task-Id: FN-5496
This commit is contained in:
committed by
gsxdsm
parent
ba066c88a3
commit
c3890a9b43
@@ -423,6 +423,15 @@ describe("getTaskCompletionBlocker", () => {
|
||||
}, { resolveTask })).resolves.toBeUndefined();
|
||||
});
|
||||
|
||||
it("treats soft-deleted blockedBy as non-blocking when resolveTask returns null", async () => {
|
||||
const resolveTask = async (_taskId: string) => null;
|
||||
|
||||
await expect(getTaskCompletionBlocker({
|
||||
...baseCompletionTask,
|
||||
blockedBy: "FN-SOFT-DELETED",
|
||||
}, { resolveTask })).resolves.toBeUndefined();
|
||||
});
|
||||
|
||||
it.each(["done", "archived"] as const)("ignores blockedBy when resolveTask reports the blocker is %s", async (column) => {
|
||||
const resolveTask = async () => ({ id: "FN-4054", column });
|
||||
|
||||
|
||||
Reference in New Issue
Block a user