Files
fusion/scripts/__tests__/lifecycle-census-mailbox-tab.test.mjs
gsxdsm 374ae08d56 test(engine): repoint source-scan contracts to the peeled module layout
Full-suite repair, engine source-scan cluster. The package code
organization waves moved ~30 engine modules into subdirectories
(plugins/, execution/, scheduling/, healing/, worktree/, executor/
peels); the log-severity manifest, prompt carve-out, emit-surface,
failure-lane, and worktree-invariant scanners now read the moved
locations, verified per file via git log --follow. Two scans caught
real drift rather than moves: the lifecycle census had 12 unexamined
column guards (resolved with DELIBERATE-LITERAL markers for the mailbox
archived tab, the FN-9059 lease-owner terminality check, and the FN-9056
legacy done fallback — baseline re-recorded with zero absorbed debt),
and planning-claim gained a genuine second writer in self-healing's
FN-8998 transport-failure recovery, admitted to the allowlist with its
CAS-guarded justification. 9 files / 119 tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 15:31:58 -07:00

42 lines
1.3 KiB
JavaScript

/*
FNXC:LifecycleColumnCensus 2026-08-13-21:58:
Mailbox folder tabs reuse the word `archived`. A bare `activeTab === "archived"` must stay a
column-guard hit so a genuine lifecycle comparison that happens to use that variable name still
fails `--strict`. The mailbox sites mark a helper with DELIBERATE-LITERAL instead of a global
receiver exemption.
*/
import test from "node:test";
import assert from "node:assert/strict";
import { findComparisons } from "../lib/lifecycle-column-census-ast.mjs";
test("a bare activeTab archived comparison stays in the column backlog", () => {
const findings = findComparisons(
"t.ts",
'if (activeTab === "archived") loadArchivedInbox();',
);
assert.deepEqual(
findings.map(({ columnId, receiver, kind }) => ({ columnId, receiver, kind })),
[{ columnId: "archived", receiver: "activeTab", kind: "column" }],
);
});
test("a mailbox archived-tab helper with DELIBERATE-LITERAL is not backlog", () => {
const findings = findComparisons(
"MailboxView.tsx",
`/*
DELIBERATE-LITERAL — mailbox folder tab, not a board column.
*/
function isMailboxArchivedTab(tab) {
return tab === "archived";
}
`,
);
assert.deepEqual(
findings.map(({ columnId, receiver, kind }) => ({ columnId, receiver, kind })),
[{ columnId: "archived", receiver: "tab", kind: "deliberate" }],
);
});