diff --git a/docs/test-velocity-baseline.md b/docs/test-velocity-baseline.md index 8581f74a02..afbc6137f4 100644 --- a/docs/test-velocity-baseline.md +++ b/docs/test-velocity-baseline.md @@ -4,8 +4,8 @@ ## Latest baseline -- Cycle: **2026-W28** -- Captured at: **2026-07-08T18:17:42.464Z** +- Cycle: **2026-W30** +- Captured at: **2026-07-22T16:26:26.004Z** - Timing snapshot: `scripts/test-timings.json` captured at **2026-06-27T05:41:42.568Z** - Quarantine ledger: `scripts/lib/test-quarantine.json` @@ -13,10 +13,10 @@ | Metric | Current | Delta vs previous | |---|---:|---:| -| Merge gate wall-time (`pnpm test:gate`) | 8.8s | -27.5s | -| Boot smoke wall-time (`pnpm smoke:boot`) | 17.6s | -7.7s | -| Changed-only test wall-time (`pnpm test`) | 1m 01s | +18.0s | -| Quarantine / flake count | 1 | 0 | +| Merge gate wall-time (`pnpm test:gate`) | 43.9s | +35.1s | +| Boot smoke wall-time (`pnpm smoke:boot`) | 20.1s | +2.5s | +| Changed-only test wall-time (`pnpm test`) | 39.2s | -22.1s | +| Quarantine / flake count | 2 | +1 | | Deletion-due quarantines | 0 | n/a | ## Measurement failures @@ -25,7 +25,8 @@ ## Timing snapshot notes -- No stale or missing timing metadata detected in the rendered slowest-file rows. +- Timing snapshot is 25 days old; verify slowest-file attribution before treating the table as the current culprit. +- 9 of the listed slowest files no longer exist at the recorded paths: `packages/dashboard/src/__tests__/insights-routes.test.ts`, `packages/engine/src/runtimes/__tests__/in-process-runtime.test.ts`, `packages/dashboard/src/__tests__/workflow-routes.test.ts`, `packages/core/src/__tests__/db.test.ts`, `packages/core/src/__tests__/mission-store.test.ts`, …. Refresh scripts/test-timings.json before choosing a slow-test rewrite. ## Slowest 20 test files @@ -56,7 +57,7 @@ | Age bucket | Count | |---|---:| -| 0-6 days | 1 | +| 0-6 days | 2 | | 7-13 days | 0 | | deletion due (>=14 days) | 0 | | unknown/future | 0 | @@ -71,16 +72,16 @@ | Row | Captured at | Gate | Boot smoke | `pnpm test` | Quarantine count | |---|---|---:|---:|---:|---:| -| Previous | 2026-07-08T09:30:50.606Z | 36.3s | 25.3s | 43.4s | 1 | -| Latest | 2026-07-08T18:17:42.464Z | 8.8s | 17.6s | 1m 01s | 1 | -| Delta | — | -27.5s | -7.7s | +18.0s | 0 | +| Previous | 2026-07-08T18:17:42.464Z | 8.8s | 17.6s | 1m 01s | 1 | +| Latest | 2026-07-22T16:26:26.004Z | 43.9s | 20.1s | 39.2s | 2 | +| Delta | — | +35.1s | +2.5s | -22.1s | +1 | _Future weekly rows append to `scripts/test-velocity-history.json`; compare the latest row against the previous row before posting to #leads._ ## Post to #leads ```text -FN-6612 weekly test velocity: gate 8.8s (-27.5s), boot smoke 17.6s (-7.7s), pnpm test 1m 01s (+18.0s), quarantine ledger 1 (0). Slowest file: packages/dashboard/src/__tests__/insights-routes.test.ts at 26.5s. Deletion-due quarantines: 0. +FN-6612 weekly test velocity: gate 43.9s (+35.1s), boot smoke 20.1s (+2.5s), pnpm test 39.2s (-22.1s), quarantine ledger 2 (+1). Slowest file: packages/dashboard/src/__tests__/insights-routes.test.ts at 26.5s. Deletion-due quarantines: 0. ``` ## How to refresh diff --git a/scripts/test-velocity-history.json b/scripts/test-velocity-history.json index 8a5033f6f6..2aebbbe106 100644 --- a/scripts/test-velocity-history.json +++ b/scripts/test-velocity-history.json @@ -1585,6 +1585,121 @@ "measurementFailures": [], "timingSnapshotCapturedAt": "2026-06-27T05:41:42.568Z", "timingNotes": [] + }, + { + "capturedAt": "2026-07-22T16:26:26.004Z", + "gateMs": 43881, + "bootSmokeMs": 20150, + "testMs": 39247, + "quarantineCount": 2, + "slowestTop20": [ + { + "file": "packages/dashboard/src/__tests__/insights-routes.test.ts", + "ms": 26500, + "package": "@fusion/dashboard" + }, + { + "file": "packages/engine/src/runtimes/__tests__/in-process-runtime.test.ts", + "ms": 24700, + "package": "@fusion/engine" + }, + { + "file": "packages/dashboard/src/__tests__/workflow-routes.test.ts", + "ms": 22000, + "package": "@fusion/dashboard" + }, + { + "file": "packages/core/src/__tests__/db.test.ts", + "ms": 21200, + "package": "@fusion/core" + }, + { + "file": "packages/dashboard/app/components/__tests__/GitManagerModal.test.tsx", + "ms": 16900, + "package": "@fusion/dashboard" + }, + { + "file": "packages/core/src/__tests__/mission-store.test.ts", + "ms": 16000, + "package": "@fusion/core" + }, + { + "file": "packages/cli/src/__tests__/extension.test.ts", + "ms": 15700, + "package": "@runfusion/fusion" + }, + { + "file": "packages/dashboard/app/components/__tests__/AgentPromptsManager.test.tsx", + "ms": 14800, + "package": "@fusion/dashboard" + }, + { + "file": "packages/dashboard/app/components/__tests__/App.test.tsx", + "ms": 14600, + "package": "@fusion/dashboard" + }, + { + "file": "packages/dashboard/app/components/__tests__/TaskDetailModal.inline-editing-and-integrations.test.tsx", + "ms": 14100, + "package": "@fusion/dashboard" + }, + { + "file": "packages/dashboard/app/components/__tests__/TaskDetailModal.rendering.test.tsx", + "ms": 13700, + "package": "@fusion/dashboard" + }, + { + "file": "packages/dashboard/src/__tests__/routes-auth.test.ts", + "ms": 13600, + "package": "@fusion/dashboard" + }, + { + "file": "packages/core/src/__tests__/agent-store.test.ts", + "ms": 13400, + "package": "@fusion/core" + }, + { + "file": "packages/engine/src/__tests__/workspace-merger-idempotency.test.ts", + "ms": 12700, + "package": "@fusion/engine" + }, + { + "file": "packages/engine/src/__tests__/self-healing-workspace.test.ts", + "ms": 11800, + "package": "@fusion/engine" + }, + { + "file": "packages/engine/src/__tests__/pr-response-run.test.ts", + "ms": 11600, + "package": "@fusion/engine" + }, + { + "file": "packages/dashboard/app/components/__tests__/ListView.test.tsx", + "ms": 11300, + "package": "@fusion/dashboard" + }, + { + "file": "plugins/fusion-plugin-compound-engineering/src/__tests__/sync.test.ts", + "ms": 11000, + "package": "@fusion-plugin-examples/compound-engineering" + }, + { + "file": "packages/dashboard/app/components/__tests__/AgentDetailView.settings.test.tsx", + "ms": 10700, + "package": "@fusion/dashboard" + }, + { + "file": "packages/dashboard/app/components/__tests__/SecretsView.test.tsx", + "ms": 10700, + "package": "@fusion/dashboard" + } + ], + "measurementFailures": [], + "timingSnapshotCapturedAt": "2026-06-27T05:41:42.568Z", + "timingNotes": [ + "Timing snapshot is 25 days old; verify slowest-file attribution before treating the table as the current culprit.", + "9 of the listed slowest files no longer exist at the recorded paths: `packages/dashboard/src/__tests__/insights-routes.test.ts`, `packages/engine/src/runtimes/__tests__/in-process-runtime.test.ts`, `packages/dashboard/src/__tests__/workflow-routes.test.ts`, `packages/core/src/__tests__/db.test.ts`, `packages/core/src/__tests__/mission-store.test.ts`, …. Refresh scripts/test-timings.json before choosing a slow-test rewrite." + ] } ] }