Record plugin activation events and expose them to Command Center analytics. - Add plugin activation persistence, aggregation helpers, and exports. - Record load/reload activation events through the plugin loader and store APIs. - Surface plugin activation counts in the Command Center Ecosystem area and API route. - Cover migrations, aggregation behavior, plugin loader recording, route auth, UI rendering, and quarantined flaky suites. Files changed: .changeset/fn-6705-plugin-activation-analytics.md | 5 + docs/architecture.md | 2 +- docs/dashboard-guide.md | 2 +- packages/cli/vitest.config.ts | 8 + packages/core/src/__tests__/db-migrate.test.ts | 34 ++--- packages/core/src/__tests__/db.test.ts | 59 ++++---- packages/core/src/__tests__/goals-schema.test.ts | 6 +- packages/core/src/__tests__/insight-store.test.ts | 12 +- .../src/__tests__/merge-request-record.test.ts | 3 +- packages/core/src/__tests__/mission-store.test.ts | 6 +- .../__tests__/plugin-activation-analytics.test.ts | 67 ++++++++ packages/core/src/__tests__/plugin-loader.test.ts | 168 ++++++++++++++++++++- packages/core/src/__tests__/run-audit.test.ts | 6 +- .../core/src/__tests__/store-merge-queue.test.ts | 3 +- .../src/__tests__/store-plugin-activations.test.ts | 52 +++++++ packages/core/src/__tests__/task-documents.test.ts | 3 +- packages/core/src/db.ts | 35 ++++- packages/core/src/index.ts | 8 + packages/core/src/plugin-activation-analytics.ts | 104 +++++++++++++ packages/core/src/plugin-loader.ts | 27 ++++ packages/core/src/store.ts | 24 ++- packages/core/src/types.ts | 22 +++ packages/core/vitest.config.ts | 12 ++ .../command-center/areas/EcosystemArea.tsx | 40 +++-- .../command-center/areas/__tests__/areas.test.tsx | 52 ++++++- .../register-command-center-routes.auth.test.ts | 1 + .../register-command-center-routes.test.ts | 29 ++++ .../src/routes/register-command-center-routes.ts | 20 +++ .../src/store/__tests__/roadmap-store.test.ts | 9 +- scripts/boot-smoke.mjs | 24 ++- scripts/lib/test-quarantine.json | 55 +++++++ 31 files changed, 799 insertions(+), 99 deletions(-) Fusion-Task-Id: FN-6705 Fusion-Task-Lineage: 12ed6227-f935-4038-bbe9-a605a054850e
76 lines
7.1 KiB
JSON
76 lines
7.1 KiB
JSON
{
|
|
"$comment": "Flaky-test quarantine ledger (deletion ratchet — 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 — 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/src/__tests__/session-cross-tab.test.ts",
|
|
"reason": "FN-6690 local workspace `pnpm test` observed ENOTEMPTY while removing the test's temp .fusion directory in dashboard-api-quality-backfill shard; isolated rerun passed, indicating cleanup flake rather than a lazy-view CSS regression.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/dashboard/app/components/__tests__/QuickEntryBox.test.tsx",
|
|
"reason": "FN-6697 local workspace `pnpm test` observed the post-submission focus restoration test fail in the broad dashboard app backfill shard, while a targeted rerun of QuickEntryBox with MailboxModal passed the QuickEntryBox assertions; quarantine the focus-timing flake instead of appeasing it while the terminal shortcut fix remains scoped.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/dashboard/app/components/__tests__/WorkflowNodeEditor.test.tsx",
|
|
"reason": "FN-6726 local workspace `pnpm test` observed the duplicate-merge-seam template conflict assertion fail only in the broad dashboard components-b shard, while a targeted rerun of that exact test passed; quarantine the workflow editor concurrency flake instead of appeasing unrelated template insertion behavior while the Command Center token containment fix remains scoped.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/activity-analytics.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file fail only in the broad changed-package core lane (hook/test timeout, ENOTEMPTY cleanup, or missed deferred hook under suite load); immediate targeted rerun of all five files passed, so quarantine the suite-load flake instead of appeasing it with wider timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/db.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file fail only in the broad changed-package core lane (hook/test timeout, ENOTEMPTY cleanup, or missed deferred hook under suite load); immediate targeted rerun of all five files passed, so quarantine the suite-load flake instead of appeasing it with wider timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/store-concurrent-writes.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file fail only in the broad changed-package core lane (hook/test timeout, ENOTEMPTY cleanup, or missed deferred hook under suite load); immediate targeted rerun of all five files passed, so quarantine the suite-load flake instead of appeasing it with wider timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/store-create-summarize-deferred-hook.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file fail only in the broad changed-package core lane (hook/test timeout, ENOTEMPTY cleanup, or missed deferred hook under suite load); immediate targeted rerun of all five files passed, so quarantine the suite-load flake instead of appeasing it with wider timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/vitest-teardown-worker-root-cleanup.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file fail only in the broad changed-package core lane (hook/test timeout, ENOTEMPTY cleanup, or missed deferred hook under suite load); immediate targeted rerun of all five files passed, so quarantine the suite-load flake instead of appeasing it with wider timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/core/src/__tests__/settings-export.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed this core file time out in beforeEach only in the broad changed-package core lane; immediate targeted rerun passed in 5.1s, so quarantine the suite-load hook flake instead of appeasing it with wider hook timeouts/retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/cli/src/__tests__/extension-goal-tools.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed extension-goal-tools timing out and leaking state only in the broad changed-package CLI lane; immediate targeted rerun with the CLI failure batch passed this file, so quarantine the suite-load flake instead of widening the 5s test timeout or weakening goal-list assertions.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/cli/src/__tests__/extension-mission-goal-tools.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed extension-mission-goal-tools timing out and leaving ENOTEMPTY cleanup only in the broad changed-package CLI lane; immediate targeted rerun with the CLI failure batch passed this file, so quarantine the suite-load flake instead of timeout/retry appeasement.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/cli/src/__tests__/extension-task-tools.test.ts",
|
|
"reason": "FN-6705 verification observed extension-task-tools timeout under both the broad changed-package CLI lane and a direct rerun while unrelated task surfaces still passed; quarantine the load-sensitive repo-root integration file under the deletion ratchet instead of raising testTimeout.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/cli/src/__tests__/extension.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed extension.test fn_task_list cases time out and hit ENOTEMPTY cleanup only in the broad changed-package CLI lane; immediate targeted rerun with the CLI failure batch passed this file, so quarantine the suite-load flake instead of appeasing it.",
|
|
"quarantinedAt": "2026-06-19"
|
|
},
|
|
{
|
|
"file": "packages/cli/src/__tests__/research-extension-tools.test.ts",
|
|
"reason": "FN-6705 local workspace `pnpm test` observed research-extension-tools timing/assertion drift only in the broad changed-package CLI lane; immediate targeted rerun with the CLI failure batch passed this file, so quarantine the suite-load flake instead of loosening assertions or adding retries.",
|
|
"quarantinedAt": "2026-06-19"
|
|
}
|
|
]
|
|
}
|