diff --git a/scripts/__tests__/reconcile-task-state-consistency.test.mjs b/scripts/__tests__/reconcile-task-state-consistency.test.mjs index 96ed2dfd9b..d6278afd1e 100644 --- a/scripts/__tests__/reconcile-task-state-consistency.test.mjs +++ b/scripts/__tests__/reconcile-task-state-consistency.test.mjs @@ -106,7 +106,7 @@ test("apply reconciles done task and emits exactly one note", async () => { }); /* -FNXC:OperatorScriptLaneAssumptions 2026-07-30-23:10: +FNXC:OperatorScriptLaneAssumptions 2026-07-31-02:10: THE INVARIANT: both consistency checks ask the task's OWN lanes, and they failed in OPPOSITE directions. Keyed on the literals, `hasDoneTransient` (`column === "done"`) NEVER fires on a renamed board, so a diff --git a/scripts/lib/backend-db.mjs b/scripts/lib/backend-db.mjs index 6e60d47dba..8d4fda2ae5 100644 --- a/scripts/lib/backend-db.mjs +++ b/scripts/lib/backend-db.mjs @@ -38,7 +38,7 @@ function ensureMigrationsStaged() { } } -/* FNXC:OperatorScriptLaneAssumptions 2026-07-30-23:10: exported so operator scripts can reach core +/* FNXC:OperatorScriptLaneAssumptions 2026-07-31-02:10: exported so operator scripts can reach core helpers (lane resolution) through the SAME staged-dist seam `openBackend` already uses, rather than each growing its own dist path — `@fusion/core` is not resolvable from the repo-root `scripts/`. */ export async function importCore() { diff --git a/scripts/reconcile-task-state-consistency.mjs b/scripts/reconcile-task-state-consistency.mjs index 6763a69177..38365190a0 100644 --- a/scripts/reconcile-task-state-consistency.mjs +++ b/scripts/reconcile-task-state-consistency.mjs @@ -5,7 +5,7 @@ import { openBackend, importCore } from "./lib/backend-db.mjs"; const DEFAULT_NOTE = "FN-4000 reconciliation: cleared stale transient failure state using TaskStore done-normalization so database and task JSON remain synchronized."; /* -FNXC:OperatorScriptLaneAssumptions 2026-07-30-23:10: +FNXC:OperatorScriptLaneAssumptions 2026-07-31-02:10: Both checks ask this task's OWN lanes, because keyed on the literals they fail in BOTH directions. `hasDoneTransient` gated on `column === "done"`. On a board whose complete lane is named anything @@ -48,7 +48,7 @@ export function findTaskStateInconsistencies(task, lanes = {}) { } /* -FNXC:OperatorScriptLaneAssumptions 2026-07-30-23:10: +FNXC:OperatorScriptLaneAssumptions 2026-07-31-02:10: `resolveLanes` is INJECTED, not built here, and `main` below supplies the real one. Resolving inside this function would drag `importCore()` — and therefore a built `packages/core/dist`