Files
fusion/scripts/lib/test-quarantine.json
gsxdsm 175aab15ac FN-6441: rescue and quarantine dashboard component tests
Rescue passing dashboard component tests and move still-failing orphaned tests under the quarantine ratchet.

- Remove the FN-6441 dashboard component batch from the curated skip-list.
- Keep passing PlanningModeModal, TaskReviewTab, and TerminalModal coverage documented in app backfill.
- Register remaining failing dashboard component/CSS tests in the dated quarantine ledger and Vitest excludes.
- Teach the dashboard curated inventory guard to accept dated quarantine entries without returning them to the skip-list.

Files changed:
 .../PlanningModeModal.ui-interactions.test.tsx     |  9 ++-
 .../components/__tests__/TaskReviewTab.test.tsx    |  4 ++
 .../components/__tests__/TerminalModal.test.tsx    |  4 ++
 packages/dashboard/vitest.config.ts                | 14 +++++
 scripts/__tests__/check-test-inventory.test.mjs    | 32 +++++++++++
 scripts/check-test-inventory.mjs                   | 67 +++++++++++++++++-----
 scripts/lib/dashboard-curated-skiplist.json        | 56 ------------------
 scripts/lib/test-quarantine.json                   | 58 ++++++++++++++++++-
 8 files changed, 172 insertions(+), 72 deletions(-)

Fusion-Task-Id: FN-6441

Fusion-Task-Lineage: 19065d1f-31eb-45fc-a6ce-083773b094e4
2026-06-14 15:29:35 -07:00

61 lines
4.7 KiB
JSON

{
"$comment": "Flaky-test quarantine ledger (deletion ratchet \u2014 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 \u2014 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/dashboard/app/components/__tests__/ChatView.regular-composer-no-right-line.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone; ChatView emits act warnings and regular-composer right-line invariant assertion fails. Quarantined instead of widening waits or weakening assertions.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/MissionManager.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone with stale mission hierarchy/progress/status expectations while most cases pass. Quarantined for rescue/delete ratchet instead of assertion appeasement.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/ModalReentry.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone because PlanningModal cases render outside ToastProvider. Quarantined for harness rescue instead of product/source changes.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/ModelSelectorTab.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone across model selector cases because expected Executor Model labels/options are no longer rendered by the current component contract. Quarantined for harness/expectation rescue.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/NewAgentDialog.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone across broad dialog flows with duplicate fetch/update calls and stale favorite labels. Quarantined for focused rescue rather than timeout/assertion appeasement.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/OAuthReloginBanner.test.tsx",
"reason": "FN-6441: orphaned dashboard component test times out every case under current async/polling behavior. Quarantined instead of increasing test timeouts.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/PlanningModeModal.favorites.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone because PlanningModeModal favorite/keyboard cases render outside ToastProvider. Quarantined for harness rescue.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/PlanningModeModal.questions.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone because PlanningModeModal question/summary cases render outside ToastProvider. Quarantined for harness rescue.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/PlanningModeModal.swipe-back.test.tsx",
"reason": "FN-6441: orphaned dashboard component test fails standalone because PlanningModeModal mobile navigation cases render outside ToastProvider. Quarantined for harness rescue.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/SkillsView.css.test.ts",
"reason": "FN-6441: orphaned dashboard CSS guardrail fails standalone because runtime-card toggle positioning expectation no longer matches current stylesheet. Quarantined for rescue/delete review without weakening assertion.",
"quarantinedAt": "2026-06-14"
},
{
"file": "packages/dashboard/app/components/__tests__/mobile-css.test.tsx",
"reason": "FN-6441: orphaned dashboard CSS foundation test fails standalone on stale workflow-step-manager modal and breakpoint assertions. Quarantined for rescue/delete review without broad CSS changes.",
"quarantinedAt": "2026-06-14"
}
]
}