From af9de86286c8fa406afe87622ab07d9e508ae472 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 23 Mar 2026 05:25:01 +0000 Subject: [PATCH] perf: trim vitest hot imports and refresh manifests --- scripts/test-update-memory-hotspots-utils.mjs | 6 + scripts/test-update-memory-hotspots.mjs | 19 +- src/media-understanding/provider-id.ts | 9 + src/media-understanding/provider-registry.ts | 10 +- src/media-understanding/resolve.ts | 2 +- .../bundled-web-search-provider-ids.ts | 25 + src/plugins/bundled-web-search.test.ts | 12 + src/plugins/bundled-web-search.ts | 6 +- src/secrets/runtime-web-tools.ts | 6 +- test/fixtures/test-memory-hotspots.unit.json | 189 +- test/fixtures/test-timings.unit.json | 1842 ++++++++--------- .../test-update-memory-hotspots-utils.test.ts | 18 + 12 files changed, 1056 insertions(+), 1088 deletions(-) create mode 100644 scripts/test-update-memory-hotspots-utils.mjs create mode 100644 src/media-understanding/provider-id.ts create mode 100644 src/plugins/bundled-web-search-provider-ids.ts create mode 100644 test/scripts/test-update-memory-hotspots-utils.test.ts diff --git a/scripts/test-update-memory-hotspots-utils.mjs b/scripts/test-update-memory-hotspots-utils.mjs new file mode 100644 index 00000000000..7e05b1ccf87 --- /dev/null +++ b/scripts/test-update-memory-hotspots-utils.mjs @@ -0,0 +1,6 @@ +export function matchesHotspotSummaryLane(lane, targetLane, lanePrefixes = []) { + if (lane === targetLane) { + return true; + } + return lanePrefixes.some((prefix) => prefix.length > 0 && lane.startsWith(prefix)); +} diff --git a/scripts/test-update-memory-hotspots.mjs b/scripts/test-update-memory-hotspots.mjs index e873f637d80..ecc38266941 100644 --- a/scripts/test-update-memory-hotspots.mjs +++ b/scripts/test-update-memory-hotspots.mjs @@ -3,12 +3,14 @@ import path from "node:path"; import { parseMemoryTraceSummaryLines } from "./test-parallel-memory.mjs"; import { normalizeTrackedRepoPath, tryReadJsonFile, writeJsonFile } from "./test-report-utils.mjs"; import { unitMemoryHotspotManifestPath } from "./test-runner-manifest.mjs"; +import { matchesHotspotSummaryLane } from "./test-update-memory-hotspots-utils.mjs"; function parseArgs(argv) { const args = { config: "vitest.unit.config.ts", out: unitMemoryHotspotManifestPath, lane: "unit-fast", + lanePrefixes: [], logs: [], minDeltaKb: 256 * 1024, limit: 64, @@ -30,6 +32,14 @@ function parseArgs(argv) { i += 1; continue; } + if (arg === "--lane-prefix") { + const lanePrefix = argv[i + 1]; + if (typeof lanePrefix === "string" && lanePrefix.length > 0) { + args.lanePrefixes.push(lanePrefix); + } + i += 1; + continue; + } if (arg === "--log") { const logPath = argv[i + 1]; if (typeof logPath === "string" && logPath.length > 0) { @@ -109,8 +119,8 @@ if (existing) { } for (const logPath of opts.logs) { const text = fs.readFileSync(logPath, "utf8"); - const summaries = parseMemoryTraceSummaryLines(text).filter( - (summary) => summary.lane === opts.lane, + const summaries = parseMemoryTraceSummaryLines(text).filter((summary) => + matchesHotspotSummaryLane(summary.lane, opts.lane, opts.lanePrefixes), ); for (const summary of summaries) { for (const record of summary.top) { @@ -142,7 +152,10 @@ const output = { config: opts.config, generatedAt: new Date().toISOString(), defaultMinDeltaKb: opts.minDeltaKb, - lane: opts.lane, + lane: + opts.lanePrefixes.length === 0 + ? opts.lane + : [opts.lane, ...opts.lanePrefixes.map((prefix) => String(prefix).concat("*"))].join(", "), files, }; diff --git a/src/media-understanding/provider-id.ts b/src/media-understanding/provider-id.ts new file mode 100644 index 00000000000..89667e7641a --- /dev/null +++ b/src/media-understanding/provider-id.ts @@ -0,0 +1,9 @@ +import { normalizeProviderId } from "../agents/model-selection.js"; + +export function normalizeMediaProviderId(id: string): string { + const normalized = normalizeProviderId(id); + if (normalized === "gemini") { + return "google"; + } + return normalized; +} diff --git a/src/media-understanding/provider-registry.ts b/src/media-understanding/provider-registry.ts index f1488f0c255..9441ccf5a7c 100644 --- a/src/media-understanding/provider-registry.ts +++ b/src/media-understanding/provider-registry.ts @@ -1,4 +1,3 @@ -import { normalizeProviderId } from "../agents/model-selection.js"; import type { OpenClawConfig } from "../config/config.js"; import { deepgramMediaUnderstandingProvider, @@ -6,6 +5,7 @@ import { } from "../plugin-sdk/media-understanding.js"; import { loadOpenClawPlugins } from "../plugins/loader.js"; import { getActivePluginRegistry } from "../plugins/runtime.js"; +import { normalizeMediaProviderId } from "./provider-id.js"; import type { MediaUnderstandingProvider } from "./types.js"; const PROVIDERS: MediaUnderstandingProvider[] = [ @@ -29,13 +29,7 @@ function mergeProviderIntoRegistry( registry.set(normalizedKey, merged); } -export function normalizeMediaProviderId(id: string): string { - const normalized = normalizeProviderId(id); - if (normalized === "gemini") { - return "google"; - } - return normalized; -} +export { normalizeMediaProviderId } from "./provider-id.js"; export function buildMediaUnderstandingRegistry( overrides?: Record, diff --git a/src/media-understanding/resolve.ts b/src/media-understanding/resolve.ts index 69a61661aa5..e7357e59bbb 100644 --- a/src/media-understanding/resolve.ts +++ b/src/media-understanding/resolve.ts @@ -12,7 +12,7 @@ import { DEFAULT_MEDIA_CONCURRENCY, DEFAULT_PROMPT, } from "./defaults.js"; -import { normalizeMediaProviderId } from "./provider-registry.js"; +import { normalizeMediaProviderId } from "./provider-id.js"; import { normalizeMediaUnderstandingChatType, resolveMediaUnderstandingScope } from "./scope.js"; import type { MediaUnderstandingCapability } from "./types.js"; diff --git a/src/plugins/bundled-web-search-provider-ids.ts b/src/plugins/bundled-web-search-provider-ids.ts new file mode 100644 index 00000000000..198d7d47587 --- /dev/null +++ b/src/plugins/bundled-web-search-provider-ids.ts @@ -0,0 +1,25 @@ +const BUNDLED_WEB_SEARCH_PROVIDER_PLUGIN_IDS = { + brave: "brave", + exa: "exa", + firecrawl: "firecrawl", + gemini: "google", + grok: "xai", + kimi: "moonshot", + perplexity: "perplexity", + tavily: "tavily", +} as const satisfies Record; + +export function resolveBundledWebSearchPluginId( + providerId: string | undefined, +): string | undefined { + if (!providerId) { + return undefined; + } + const normalizedProviderId = providerId.trim().toLowerCase(); + if (!(normalizedProviderId in BUNDLED_WEB_SEARCH_PROVIDER_PLUGIN_IDS)) { + return undefined; + } + return BUNDLED_WEB_SEARCH_PROVIDER_PLUGIN_IDS[ + normalizedProviderId as keyof typeof BUNDLED_WEB_SEARCH_PROVIDER_PLUGIN_IDS + ]; +} diff --git a/src/plugins/bundled-web-search.test.ts b/src/plugins/bundled-web-search.test.ts index 4259ece924e..e6989c00134 100644 --- a/src/plugins/bundled-web-search.test.ts +++ b/src/plugins/bundled-web-search.test.ts @@ -2,6 +2,7 @@ import { describe, expect, it } from "vitest"; import { bundledWebSearchPluginRegistrations } from "../bundled-web-search-registry.js"; import type { OpenClawConfig } from "../config/config.js"; import { BUNDLED_WEB_SEARCH_PLUGIN_IDS } from "./bundled-web-search-ids.js"; +import { resolveBundledWebSearchPluginId } from "./bundled-web-search-provider-ids.js"; import { listBundledWebSearchProviders, resolveBundledWebSearchPluginIds, @@ -90,6 +91,17 @@ describe("bundled web search metadata", () => { ); }); + it("keeps bundled web search provider-to-plugin ids aligned with bundled contracts", () => { + expect(resolveBundledWebSearchPluginId("brave")).toBe("brave"); + expect(resolveBundledWebSearchPluginId("exa")).toBe("exa"); + expect(resolveBundledWebSearchPluginId("firecrawl")).toBe("firecrawl"); + expect(resolveBundledWebSearchPluginId("gemini")).toBe("google"); + expect(resolveBundledWebSearchPluginId("kimi")).toBe("moonshot"); + expect(resolveBundledWebSearchPluginId("perplexity")).toBe("perplexity"); + expect(resolveBundledWebSearchPluginId("tavily")).toBe("tavily"); + expect(resolveBundledWebSearchPluginId("grok")).toBe("xai"); + }); + it("keeps fast-path bundled provider metadata aligned with bundled plugin contracts", async () => { const fastPathProviders = listBundledWebSearchProviders(); diff --git a/src/plugins/bundled-web-search.ts b/src/plugins/bundled-web-search.ts index 767b7babada..ca97551e349 100644 --- a/src/plugins/bundled-web-search.ts +++ b/src/plugins/bundled-web-search.ts @@ -1,5 +1,6 @@ import { bundledWebSearchPluginRegistrations } from "../bundled-web-search-registry.js"; import { listBundledWebSearchPluginIds as listBundledWebSearchPluginIdsFromIds } from "./bundled-web-search-ids.js"; +import { resolveBundledWebSearchPluginId as resolveBundledWebSearchPluginIdFromMap } from "./bundled-web-search-provider-ids.js"; import { capturePluginRegistration } from "./captured-registration.js"; import type { PluginLoadOptions } from "./loader.js"; import { loadPluginManifestRegistry } from "./manifest-registry.js"; @@ -76,8 +77,5 @@ export function listBundledWebSearchProviders(): PluginWebSearchProviderEntry[] export function resolveBundledWebSearchPluginId( providerId: string | undefined, ): string | undefined { - if (!providerId) { - return undefined; - } - return loadBundledWebSearchProviders().find((provider) => provider.id === providerId)?.pluginId; + return resolveBundledWebSearchPluginIdFromMap(providerId); } diff --git a/src/secrets/runtime-web-tools.ts b/src/secrets/runtime-web-tools.ts index c7341a10d31..132a97268c4 100644 --- a/src/secrets/runtime-web-tools.ts +++ b/src/secrets/runtime-web-tools.ts @@ -1,9 +1,7 @@ import type { OpenClawConfig } from "../config/config.js"; import { resolveSecretInputRef } from "../config/types.secrets.js"; -import { - listBundledWebSearchPluginIds, - resolveBundledWebSearchPluginId, -} from "../plugins/bundled-web-search.js"; +import { listBundledWebSearchPluginIds } from "../plugins/bundled-web-search-ids.js"; +import { resolveBundledWebSearchPluginId } from "../plugins/bundled-web-search-provider-ids.js"; import type { PluginWebSearchProviderEntry, WebSearchCredentialResolutionSource, diff --git a/test/fixtures/test-memory-hotspots.unit.json b/test/fixtures/test-memory-hotspots.unit.json index c5c3c975ce0..3d10f92dde3 100644 --- a/test/fixtures/test-memory-hotspots.unit.json +++ b/test/fixtures/test-memory-hotspots.unit.json @@ -1,159 +1,54 @@ { "config": "vitest.unit.config.ts", - "generatedAt": "2026-03-20T04:59:15.285Z", + "generatedAt": "2026-03-23T05:18:04.876Z", "defaultMinDeltaKb": 262144, - "lane": "unit-fast", + "lane": "unit-fast, unit-*", "files": { - "src/config/schema.help.quality.test.ts": { + "src/infra/outbound/targets.channel-resolution.test.ts": { "deltaKb": 1111491, + "sources": ["openclaw-test-memory-trace:unit-heavy-2"] + }, + "src/media/fetch.telegram-network.test.ts": { + "deltaKb": 1101005, + "sources": ["openclaw-test-memory-trace:unit-heavy-1"] + }, + "src/cron/isolated-agent/run.skill-filter.test.ts": { + "deltaKb": 1069548, + "sources": ["openclaw-test-memory-trace:unit-run.skill-filter-memory-isolated"] + }, + "src/cron/isolated-agent.uses-last-non-empty-agent-text-as.test.ts": { + "deltaKb": 1048576, "sources": [ - "gha-23328306205-compat-node22:unit-fast", - "gha-23328306205-node-test-2-2:unit-fast" + "openclaw-test-memory-trace:unit-isolated-agent.uses-last-non-empty-agent-text-as-memory-isolated" + ] + }, + "src/cron/isolated-agent.skips-delivery-without-whatsapp-recipient-besteffortdeliver-true.test.ts": { + "deltaKb": 1026355, + "sources": [ + "openclaw-test-memory-trace:unit-isolated-agent.skips-delivery-without-whatsapp-recipient-besteffortdeliver-true-memory-isolated" + ] + }, + "src/cron/isolated-agent/run.cron-model-override.test.ts": { + "deltaKb": 946790, + "sources": ["openclaw-test-memory-trace:unit-run.cron-model-override-memory-isolated"] + }, + "src/plugins/install.test.ts": { + "deltaKb": 510874, + "sources": ["openclaw-test-memory-trace:unit-install-memory-isolated"] + }, + "ui/src/ui/views/chat.test.ts": { + "deltaKb": 509338, + "sources": ["openclaw-test-memory-trace:unit-chat-memory-isolated"] + }, + "src/infra/provider-usage.auth.normalizes-keys.test.ts": { + "deltaKb": 494080, + "sources": [ + "openclaw-test-memory-trace:unit-provider-usage.auth.normalizes-keys-memory-isolated" ] }, "src/plugins/conversation-binding.test.ts": { - "deltaKb": 787149, - "sources": ["gha-23329089711-node-test-2-2:unit-fast"] - }, - "src/plugins/contracts/wizard.contract.test.ts": { - "deltaKb": 783770, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "ui/src/ui/views/chat.test.ts": { - "deltaKb": 740864, - "sources": ["gha-23329089711-node-test-2-2:unit-fast"] - }, - "src/cron/isolated-agent.uses-last-non-empty-agent-text-as.test.ts": { - "deltaKb": 652288, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/plugins/install.test.ts": { - "deltaKb": 545485, - "sources": ["gha-23328306205-compat-node22:unit-fast"] - }, - "src/tui/tui.submit-handler.test.ts": { - "deltaKb": 528486, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "src/media-understanding/resolve.test.ts": { - "deltaKb": 516506, - "sources": ["job1:unit-fast"] - }, - "src/infra/provider-usage.auth.normalizes-keys.test.ts": { - "deltaKb": 510362, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "src/acp/client.test.ts": { - "deltaKb": 491213, - "sources": ["job2:unit-fast"] - }, - "src/infra/update-runner.test.ts": { - "deltaKb": 474726, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/secrets/runtime-web-tools.test.ts": { - "deltaKb": 473190, - "sources": ["job1:unit-fast"] - }, - "src/cron/isolated-agent/run.cron-model-override.test.ts": { - "deltaKb": 469914, - "sources": ["gha-23328306205-node-test-2-2:unit-fast"] - }, - "src/cron/isolated-agent.skips-delivery-without-whatsapp-recipient-besteffortdeliver-true.test.ts": { - "deltaKb": 457421, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/cron/isolated-agent/run.skill-filter.test.ts": { - "deltaKb": 446054, - "sources": ["gha-23328306205-compat-node22:unit-fast"] - }, - "src/plugins/interactive.test.ts": { - "deltaKb": 441242, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "src/infra/run-node.test.ts": { - "deltaKb": 427213, - "sources": ["gha-23328306205-node-test-2-2:unit-fast"] - }, - "src/media-understanding/runner.video.test.ts": { - "deltaKb": 402739, - "sources": ["job1:unit-fast"] - }, - "src/infra/provider-usage.test.ts": { - "deltaKb": 389837, - "sources": ["gha-23329089711-node-test-2-2:unit-fast"] - }, - "src/cron/isolated-agent.delivers-response-has-heartbeat-ok-but-includes.test.ts": { - "deltaKb": 377446, - "sources": ["gha-23328306205-compat-node22:unit-fast"] - }, - "src/cron/isolated-agent/delivery-dispatch.named-agent.test.ts": { - "deltaKb": 355840, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "src/infra/state-migrations.test.ts": { - "deltaKb": 345805, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/config/sessions/store.pruning.integration.test.ts": { - "deltaKb": 342221, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/channels/plugins/contracts/outbound-payload.contract.test.ts": { - "deltaKb": 335565, - "sources": ["gha-23329089711-node-test-1-2:unit-fast"] - }, - "src/config/sessions/store.pruning.test.ts": { - "deltaKb": 333312, - "sources": ["job2:unit-fast"] - }, - "src/media-understanding/providers/moonshot/video.test.ts": { - "deltaKb": 333005, - "sources": ["gha-23329089711-node-test-2-2:unit-fast"] - }, - "src/infra/heartbeat-runner.model-override.test.ts": { - "deltaKb": 325632, - "sources": ["job1:unit-fast"] - }, - "src/config/sessions.test.ts": { - "deltaKb": 324813, - "sources": ["gha-23329089711-node-test-2-2:unit-fast"] - }, - "src/acp/translator.cancel-scoping.test.ts": { - "deltaKb": 324403, - "sources": ["gha-23328306205-node-test-1-2:unit-fast"] - }, - "src/infra/heartbeat-runner.ghost-reminder.test.ts": { - "deltaKb": 321536, - "sources": ["job1:unit-fast"] - }, - "src/tui/tui-session-actions.test.ts": { - "deltaKb": 319898, - "sources": ["gha-23328306205-compat-node22:unit-fast"] - }, - "src/infra/outbound/message-action-runner.context.test.ts": { - "deltaKb": 318157, - "sources": ["gha-23328306205-compat-node22:unit-fast"] - }, - "src/cron/service.store-load-invalid-main-job.test.ts": { - "deltaKb": 308019, - "sources": ["gha-23328306205-node-test-2-2:unit-fast"] - }, - "src/channels/plugins/outbound/signal.test.ts": { - "deltaKb": 301056, - "sources": ["job2:unit-fast"] - }, - "src/cron/service.store-migration.test.ts": { - "deltaKb": 282931, - "sources": ["gha-23328306205-node-test-2-2:unit-fast"] - }, - "src/media-understanding/providers/google/video.test.ts": { - "deltaKb": 274022, - "sources": ["gha-23328306205-node-test-2-2:unit-fast"] - }, - "src/infra/heartbeat-runner.sender-prefers-delivery-target.test.ts": { - "deltaKb": 267366, - "sources": ["job2:unit-fast"] + "deltaKb": 485786, + "sources": ["openclaw-test-memory-trace:unit-conversation-binding-memory-isolated"] } } } diff --git a/test/fixtures/test-timings.unit.json b/test/fixtures/test-timings.unit.json index 76b1982bf97..3f035667171 100644 --- a/test/fixtures/test-timings.unit.json +++ b/test/fixtures/test-timings.unit.json @@ -1,1031 +1,1031 @@ { "config": "vitest.unit.config.ts", - "generatedAt": "2026-03-22T18:25:13.707Z", + "generatedAt": "2026-03-23T05:11:36.071Z", "defaultDurationMs": 250, "files": { - "src/cron/service.issue-regressions.test.ts": { - "durationMs": 4309.591796875, - "testCount": 38 + "src/media/fetch.telegram-network.test.ts": { + "durationMs": 6483.10009765625, + "testCount": 5 }, - "test/web-search-provider-boundary.test.ts": { - "durationMs": 1959.673828125, - "testCount": 1 + "src/infra/outbound/targets.channel-resolution.test.ts": { + "durationMs": 5879.394287109375, + "testCount": 2 + }, + "src/cron/service.issue-regressions.test.ts": { + "durationMs": 4524.16552734375, + "testCount": 39 + }, + "src/plugin-sdk/subpaths.test.ts": { + "durationMs": 3613.611328125, + "testCount": 5 }, "src/plugins/install.test.ts": { - "durationMs": 1934.08544921875, + "durationMs": 3357.946533203125, "testCount": 29 }, - "src/plugin-sdk/index.bundle.test.ts": { - "durationMs": 1696.989013671875, + "test/web-search-provider-boundary.test.ts": { + "durationMs": 2897.3154296875, "testCount": 1 }, - "src/security/audit.test.ts": { - "durationMs": 1690.143798828125, - "testCount": 71 + "src/plugin-sdk/index.bundle.test.ts": { + "durationMs": 2524.4013671875, + "testCount": 1 }, - "src/hooks/install.test.ts": { - "durationMs": 1653.20947265625, + "src/plugin-sdk/channel-import-guardrails.test.ts": { + "durationMs": 1464.13232421875, + "testCount": 9 + }, + "src/cron/isolated-agent.uses-last-non-empty-agent-text-as.test.ts": { + "durationMs": 1299.1962890625, "testCount": 13 }, "test/extension-plugin-sdk-boundary.test.ts": { - "durationMs": 1406.131103515625, + "durationMs": 1296.1044921875, "testCount": 3 }, - "src/infra/provider-usage.test.ts": { - "durationMs": 1105.3271484375, - "testCount": 11 - }, - "src/hooks/loader.test.ts": { - "durationMs": 931.014892578125, - "testCount": 14 - }, - "test/architecture-smells.test.ts": { - "durationMs": 928.368408203125, - "testCount": 2 - }, - "src/plugin-sdk/channel-import-guardrails.test.ts": { - "durationMs": 927.684814453125, - "testCount": 9 - }, - "src/plugin-sdk/subpaths.test.ts": { - "durationMs": 774.1640625, - "testCount": 5 - }, - "src/plugins/loader.test.ts": { - "durationMs": 764.44580078125, - "testCount": 56 - }, - "src/infra/fs-safe.test.ts": { - "durationMs": 740.747802734375, - "testCount": 22 - }, - "src/media-understanding/runner.proxy.test.ts": { - "durationMs": 710.939697265625, - "testCount": 3 - }, - "src/cron/isolated-agent/delivery-dispatch.named-agent.test.ts": { - "durationMs": 692.0634765625, - "testCount": 11 - }, - "src/security/temp-path-guard.test.ts": { - "durationMs": 655.460693359375, - "testCount": 3 - }, - "test/scripts/committer.test.ts": { - "durationMs": 613.18603515625, - "testCount": 1 - }, - "src/hooks/bundled/session-memory/handler.test.ts": { - "durationMs": 565.391845703125, - "testCount": 17 + "src/hooks/install.test.ts": { + "durationMs": 1294.3115234375, + "testCount": 13 }, "src/cron/isolated-agent.skips-delivery-without-whatsapp-recipient-besteffortdeliver-true.test.ts": { - "durationMs": 560.326171875, + "durationMs": 1233.8681640625, "testCount": 15 }, - "src/config/config.plugin-validation.test.ts": { - "durationMs": 554.983642578125, - "testCount": 15 - }, - "src/infra/provider-usage.auth.normalizes-keys.test.ts": { - "durationMs": 532.379638671875, - "testCount": 19 - }, - "src/infra/archive.test.ts": { - "durationMs": 516.83740234375, - "testCount": 15 - }, - "src/cron/isolated-agent.uses-last-non-empty-agent-text-as.test.ts": { - "durationMs": 454.604736328125, - "testCount": 13 - }, - "src/cli/config-cli.integration.test.ts": { - "durationMs": 430.17138671875, - "testCount": 4 - }, - "src/node-host/invoke-system-run-plan.test.ts": { - "durationMs": 418.98583984375, - "testCount": 41 - }, - "src/infra/fs-pinned-write-helper.test.ts": { - "durationMs": 413.991455078125, - "testCount": 3 - }, - "src/infra/provider-usage.auth.plugin.test.ts": { - "durationMs": 413.551513671875, - "testCount": 1 - }, - "src/daemon/schtasks.startup-fallback.test.ts": { - "durationMs": 399.1005859375, - "testCount": 6 - }, - "src/plugins/discovery.test.ts": { - "durationMs": 394.058837890625, - "testCount": 24 - }, - "src/plugins/conversation-binding.test.ts": { - "durationMs": 374.38623046875, - "testCount": 15 - }, - "src/media-understanding/apply.test.ts": { - "durationMs": 355.076416015625, - "testCount": 32 - }, - "src/plugins/copy-bundled-plugin-metadata.test.ts": { - "durationMs": 343.914306640625, - "testCount": 8 - }, - "src/infra/archive-staging.test.ts": { - "durationMs": 332.295166015625, - "testCount": 7 - }, - "src/acp/control-plane/manager.test.ts": { - "durationMs": 326.3369140625, - "testCount": 36 - }, - "src/infra/run-node.test.ts": { - "durationMs": 319.999755859375, - "testCount": 12 - }, - "src/memory/manager.get-concurrency.test.ts": { - "durationMs": 313.843017578125, - "testCount": 3 - }, - "src/media-understanding/runner.auto-audio.test.ts": { - "durationMs": 304.4072265625, - "testCount": 4 - }, - "src/plugins/commands.test.ts": { - "durationMs": 302.8583984375, - "testCount": 12 - }, - "src/memory/index.test.ts": { - "durationMs": 298.41162109375, - "testCount": 21 - }, - "src/tts/tts.test.ts": { - "durationMs": 281.066162109375, - "testCount": 27 - }, "src/secrets/apply.test.ts": { - "durationMs": 279.487060546875, + "durationMs": 1185.137939453125, "testCount": 15 }, - "ui/src/ui/views/chat.test.ts": { - "durationMs": 270.8681640625, - "testCount": 32 - }, - "src/infra/outbound/delivery-queue.test.ts": { - "durationMs": 268.649169921875, - "testCount": 36 - }, - "src/plugins/stage-bundled-plugin-runtime.test.ts": { - "durationMs": 266.499267578125, - "testCount": 7 - }, - "src/plugins/web-search-providers.runtime.test.ts": { - "durationMs": 255.81591796875, - "testCount": 9 - }, - "src/memory/embeddings.test.ts": { - "durationMs": 252.156005859375, - "testCount": 19 - }, - "src/infra/matrix-migration-config.test.ts": { - "durationMs": 250.9267578125, - "testCount": 7 - }, - "src/infra/git-commit.test.ts": { - "durationMs": 250.502685546875, - "testCount": 13 - }, - "src/node-host/invoke-system-run.test.ts": { - "durationMs": 249.957763671875, - "testCount": 39 - }, - "src/cron/isolated-agent.delivers-response-has-heartbeat-ok-but-includes.test.ts": { - "durationMs": 248.80712890625, - "testCount": 6 - }, - "src/memory/qmd-manager.test.ts": { - "durationMs": 247.931640625, - "testCount": 57 - }, - "src/secrets/audit.test.ts": { - "durationMs": 247.82958984375, - "testCount": 18 - }, - "src/config/plugin-auto-enable.test.ts": { - "durationMs": 244.74365234375, - "testCount": 25 - }, - "test/scripts/test-extension.test.ts": { - "durationMs": 236.225830078125, - "testCount": 8 - }, - "src/cli/program/preaction.test.ts": { - "durationMs": 234.734619140625, - "testCount": 7 - }, - "src/cron/isolated-agent.subagent-model.test.ts": { - "durationMs": 234.408203125, - "testCount": 4 - }, - "src/secrets/runtime.integration.test.ts": { - "durationMs": 224.736083984375, - "testCount": 5 + "test/scripts/committer.test.ts": { + "durationMs": 1018.4521484375, + "testCount": 2 }, "test/plugin-extension-import-boundary.test.ts": { - "durationMs": 222.7021484375, + "durationMs": 1014.2353515625, "testCount": 5 }, - "src/hooks/plugin-hooks.test.ts": { - "durationMs": 214.001708984375, - "testCount": 4 + "src/infra/fs-safe.test.ts": { + "durationMs": 941.44287109375, + "testCount": 22 }, - "src/tui/gateway-chat.test.ts": { - "durationMs": 212.93408203125, - "testCount": 14 - }, - "src/channels/plugins/plugins-core.test.ts": { - "durationMs": 205.9814453125, - "testCount": 39 - }, - "src/infra/provider-usage.load.plugin.test.ts": { - "durationMs": 203.485595703125, - "testCount": 1 - }, - "src/entry.version-fast-path.test.ts": { - "durationMs": 201.5234375, - "testCount": 2 - }, - "src/node-host/invoke-browser.test.ts": { - "durationMs": 197.00439453125, - "testCount": 4 - }, - "src/plugins/loader.git-path-regression.test.ts": { - "durationMs": 190.323974609375, - "testCount": 1 - }, - "src/cli/daemon-cli/install.integration.test.ts": { - "durationMs": 183.529052734375, - "testCount": 2 - }, - "src/config/config-misc.test.ts": { - "durationMs": 179.05224609375, - "testCount": 38 - }, - "src/plugins/manifest-registry.test.ts": { - "durationMs": 178.645751953125, - "testCount": 25 - }, - "src/install-sh-version.test.ts": { - "durationMs": 178.330078125, - "testCount": 3 - }, - "src/infra/host-env-security.test.ts": { - "durationMs": 171.649169921875, - "testCount": 18 - }, - "src/infra/boundary-path.test.ts": { - "durationMs": 169.609130859375, - "testCount": 5 - }, - "src/cron/service.failure-alert.test.ts": { - "durationMs": 169.056884765625, - "testCount": 4 - }, - "src/media-understanding/apply.echo-transcript.test.ts": { - "durationMs": 167.198486328125, - "testCount": 10 - }, - "src/cron/session-reaper.test.ts": { - "durationMs": 166.148193359375, - "testCount": 16 - }, - "src/cron/isolated-agent.direct-delivery-core-channels.test.ts": { - "durationMs": 165.966552734375, - "testCount": 4 - }, - "src/memory/manager.embedding-batches.test.ts": { - "durationMs": 162.786376953125, - "testCount": 5 - }, - "src/plugins/bundle-mcp.test.ts": { - "durationMs": 162.58984375, - "testCount": 3 - }, - "src/acp/server.startup.test.ts": { - "durationMs": 160.30078125, - "testCount": 4 - }, - "src/canvas-host/server.test.ts": { - "durationMs": 158.165771484375, - "testCount": 6 - }, - "src/secrets/resolve.test.ts": { - "durationMs": 155.67822265625, + "src/hooks/bundled/session-memory/handler.test.ts": { + "durationMs": 893.841064453125, "testCount": 17 }, - "src/plugins/providers.test.ts": { - "durationMs": 153.55419921875, - "testCount": 7 - }, - "src/infra/heartbeat-runner.returns-default-unset.test.ts": { - "durationMs": 150.216064453125, - "testCount": 25 - }, - "src/channels/channels-misc.test.ts": { - "durationMs": 148.318115234375, - "testCount": 10 - }, - "src/pairing/pairing-store.test.ts": { - "durationMs": 147.915283203125, - "testCount": 17 - }, - "src/plugins/sdk-alias.test.ts": { - "durationMs": 145.3447265625, - "testCount": 24 - }, - "test/git-hooks-pre-commit.test.ts": { - "durationMs": 145.269775390625, - "testCount": 1 - }, - "src/context-engine/context-engine.test.ts": { - "durationMs": 143.698974609375, - "testCount": 30 - }, - "src/cron/service.session-reaper-in-finally.test.ts": { - "durationMs": 141.533203125, - "testCount": 3 - }, - "src/cli/secrets-cli.test.ts": { - "durationMs": 140.470947265625, + "src/cron/isolated-agent/delivery-dispatch.named-agent.test.ts": { + "durationMs": 871.858642578125, "testCount": 11 }, - "src/channels/plugins/contracts/registry-backed.contract.test.ts": { - "durationMs": 139.597412109375, - "testCount": 167 - }, - "src/pairing/setup-code.test.ts": { - "durationMs": 138.535888671875, - "testCount": 15 - }, - "src/infra/update-runner.test.ts": { - "durationMs": 134.411865234375, - "testCount": 20 - }, - "src/plugins/status.test.ts": { - "durationMs": 134.25390625, - "testCount": 9 - }, - "src/cron/isolated-agent/run.owner-auth.test.ts": { - "durationMs": 133.743896484375, - "testCount": 1 - }, - "src/plugins/contracts/auth-choice.contract.test.ts": { - "durationMs": 133.6669921875, - "testCount": 3 - }, - "src/config/config.nix-integration-u3-u5-u9.test.ts": { - "durationMs": 132.7685546875, - "testCount": 19 - }, - "src/hooks/hooks-install.test.ts": { - "durationMs": 132.720703125, - "testCount": 1 - }, - "src/infra/outbound/outbound.test.ts": { - "durationMs": 132.556640625, - "testCount": 65 - }, - "src/infra/heartbeat-runner.respects-ackmaxchars-heartbeat-acks.test.ts": { - "durationMs": 128.71484375, - "testCount": 12 - }, - "src/memory/manager.batch.test.ts": { - "durationMs": 127.800537109375, - "testCount": 3 - }, - "src/cron/isolated-agent.lane.test.ts": { - "durationMs": 126.55126953125, - "testCount": 3 - }, - "test/scripts/ios-team-id.test.ts": { - "durationMs": 126.036865234375, - "testCount": 3 - }, - "src/hooks/workspace.test.ts": { - "durationMs": 123.74853515625, - "testCount": 7 - }, - "src/media/store.outside-workspace.test.ts": { - "durationMs": 123.20361328125, - "testCount": 1 - }, - "src/config/config.backup-rotation.test.ts": { - "durationMs": 117.84130859375, - "testCount": 4 - }, - "src/security/windows-acl.test.ts": { - "durationMs": 115.3486328125, - "testCount": 48 - }, - "src/config/config.web-search-provider.test.ts": { - "durationMs": 112.931396484375, - "testCount": 24 - }, - "src/secrets/runtime.test.ts": { - "durationMs": 111.417724609375, - "testCount": 55 - }, - "src/media/input-files.fetch-guard.test.ts": { - "durationMs": 109.734130859375, - "testCount": 10 - }, - "src/config/io.write-config.test.ts": { - "durationMs": 109.52685546875, - "testCount": 16 - }, - "src/infra/gateway-lock.test.ts": { - "durationMs": 108.08837890625, - "testCount": 9 - }, - "src/plugins/marketplace.test.ts": { - "durationMs": 105.039306640625, - "testCount": 3 - }, - "src/cron/isolated-agent.direct-delivery-forum-topics.test.ts": { - "durationMs": 104.729248046875, + "test/architecture-smells.test.ts": { + "durationMs": 853.270263671875, "testCount": 2 }, - "src/infra/matrix-legacy-crypto.test.ts": { - "durationMs": 102.9990234375, - "testCount": 8 - }, - "src/memory/manager.readonly-recovery.test.ts": { - "durationMs": 102.7353515625, + "src/memory/embeddings-ollama.test.ts": { + "durationMs": 841.48876953125, "testCount": 4 }, - "src/infra/device-pairing.test.ts": { - "durationMs": 101.41943359375, - "testCount": 19 + "src/secrets/audit.test.ts": { + "durationMs": 828.3154296875, + "testCount": 18 }, - "src/process/command-queue.test.ts": { - "durationMs": 101.1865234375, - "testCount": 17 + "src/plugins/loader.test.ts": { + "durationMs": 790.62646484375, + "testCount": 56 }, - "src/infra/system-presence.version.test.ts": { - "durationMs": 100.80810546875, - "testCount": 5 - }, - "src/cli/pairing-cli.test.ts": { - "durationMs": 97.699951171875, - "testCount": 12 - }, - "src/media-understanding/runner.deepgram.test.ts": { - "durationMs": 94.41259765625, - "testCount": 1 - }, - "src/media-understanding/runner.skip-tiny-audio.test.ts": { - "durationMs": 93.178955078125, + "src/media-understanding/runner.proxy.test.ts": { + "durationMs": 755.4365234375, "testCount": 3 }, "src/config/sessions/sessions.test.ts": { - "durationMs": 91.523681640625, + "durationMs": 745.67529296875, "testCount": 23 }, - "src/memory/batch-gemini.test.ts": { - "durationMs": 88.894287109375, + "src/config/schema.base.generated.test.ts": { + "durationMs": 729.758056640625, "testCount": 1 }, - "src/channels/plugins/setup-wizard-helpers.test.ts": { - "durationMs": 88.8017578125, - "testCount": 83 + "src/tui/gateway-chat.test.ts": { + "durationMs": 698.404296875, + "testCount": 14 }, - "src/memory/embeddings-voyage.test.ts": { - "durationMs": 85.089599609375, - "testCount": 4 - }, - "src/process/supervisor/supervisor.pty-command.test.ts": { - "durationMs": 84.798583984375, - "testCount": 2 - }, - "src/config/sessions/targets.test.ts": { - "durationMs": 84.7841796875, - "testCount": 13 - }, - "src/config/sessions.test.ts": { - "durationMs": 83.90380859375, - "testCount": 37 - }, - "src/hooks/message-hooks.test.ts": { - "durationMs": 83.40185546875, - "testCount": 12 - }, - "src/cron/isolated-agent/delivery-dispatch.double-announce.test.ts": { - "durationMs": 83.1669921875, - "testCount": 15 - }, - "src/plugin-sdk/channel-lifecycle.test.ts": { - "durationMs": 82.57861328125, - "testCount": 6 - }, - "src/plugins/bundle-commands.test.ts": { - "durationMs": 80.40576171875, - "testCount": 1 - }, - "src/cron/service.persists-delivered-status.test.ts": { - "durationMs": 80.03564453125, - "testCount": 6 - }, - "src/cron/service.runs-one-shot-main-job-disables-it.test.ts": { - "durationMs": 79.607177734375, - "testCount": 11 - }, - "src/cron/isolated-agent.auth-profile-propagation.test.ts": { - "durationMs": 78.230712890625, - "testCount": 1 - }, - "src/cli/plugins-cli.test.ts": { - "durationMs": 76.291015625, - "testCount": 17 - }, - "src/config/sessions/store.pruning.integration.test.ts": { - "durationMs": 76.134033203125, - "testCount": 10 - }, - "src/cli/program.smoke.test.ts": { - "durationMs": 75.773193359375, - "testCount": 4 - }, - "src/plugins/runtime/index.test.ts": { - "durationMs": 74.78759765625, - "testCount": 12 - }, - "src/wizard/setup.gateway-config.test.ts": { - "durationMs": 74.0263671875, - "testCount": 7 - }, - "src/canvas-host/server.state-dir.test.ts": { - "durationMs": 73.72265625, - "testCount": 1 - }, - "src/media/store.test.ts": { - "durationMs": 73.179931640625, - "testCount": 24 - }, - "src/daemon/systemd.test.ts": { - "durationMs": 73.161376953125, - "testCount": 43 - }, - "src/plugins/contracts/registry.contract.test.ts": { - "durationMs": 72.838134765625, + "src/infra/provider-usage.auth.normalizes-keys.test.ts": { + "durationMs": 636.830078125, "testCount": 19 }, - "src/security/fix.test.ts": { - "durationMs": 72.048828125, - "testCount": 5 + "src/security/audit.test.ts": { + "durationMs": 586.11669921875, + "testCount": 71 }, - "src/cron/service.restart-catchup.test.ts": { - "durationMs": 71.440185546875, - "testCount": 8 + "src/memory/index.test.ts": { + "durationMs": 579.9091796875, + "testCount": 21 }, - "src/plugins/bundled-web-search.test.ts": { - "durationMs": 70.187744140625, - "testCount": 3 + "src/memory/qmd-manager.test.ts": { + "durationMs": 573.174072265625, + "testCount": 57 }, - "src/infra/heartbeat-runner.ghost-reminder.test.ts": { - "durationMs": 69.55810546875, - "testCount": 6 - }, - "src/config/config.legacy-config-detection.accepts-imessage-dmpolicy.test.ts": { - "durationMs": 68.728515625, - "testCount": 30 - }, - "src/infra/heartbeat-runner.model-override.test.ts": { - "durationMs": 67.583251953125, - "testCount": 8 - }, - "src/config/config.pruning-defaults.test.ts": { - "durationMs": 65.777099609375, - "testCount": 7 - }, - "src/infra/outbound/outbound-send-service.test.ts": { - "durationMs": 65.419921875, - "testCount": 9 - }, - "src/channels/plugins/acp-bindings.test.ts": { - "durationMs": 64.009033203125, - "testCount": 6 - }, - "src/plugins/web-search-providers.test.ts": { - "durationMs": 63.864501953125, - "testCount": 7 - }, - "src/media-understanding/runner.vision-skip.test.ts": { - "durationMs": 62.14208984375, - "testCount": 1 - }, - "src/infra/update-startup.test.ts": { - "durationMs": 61.933837890625, - "testCount": 10 - }, - "src/config/doc-baseline.integration.test.ts": { - "durationMs": 60.52783203125, - "testCount": 8 - }, - "src/infra/jsonl-socket.test.ts": { - "durationMs": 60.36328125, - "testCount": 2 - }, - "src/plugins/tools.optional.test.ts": { - "durationMs": 60.07568359375, - "testCount": 8 - }, - "src/infra/session-maintenance-warning.test.ts": { - "durationMs": 58.0029296875, - "testCount": 5 - }, - "src/config/io.runtime-snapshot-write.test.ts": { - "durationMs": 57.88427734375, - "testCount": 6 - }, - "src/cli/plugin-registry.test.ts": { - "durationMs": 57.8564453125, - "testCount": 2 - }, - "src/infra/matrix-plugin-helper.test.ts": { - "durationMs": 57.32421875, - "testCount": 4 - }, - "src/config/schema.test.ts": { - "durationMs": 57.17333984375, - "testCount": 22 - }, - "src/infra/matrix-migration-snapshot.test.ts": { - "durationMs": 56.8486328125, - "testCount": 7 - }, - "src/memory/internal.test.ts": { - "durationMs": 56.38330078125, + "src/infra/host-env-security.test.ts": { + "durationMs": 555.42041015625, "testCount": 18 }, - "src/cron/service.store.migration.test.ts": { - "durationMs": 56.10693359375, - "testCount": 7 - }, - "src/infra/device-bootstrap.test.ts": { - "durationMs": 56.04833984375, - "testCount": 10 - }, - "src/memory/batch-voyage.test.ts": { - "durationMs": 55.859375, - "testCount": 2 - }, - "src/cron/service.every-jobs-fire.test.ts": { - "durationMs": 55.80126953125, - "testCount": 3 - }, - "src/plugin-sdk/keyed-async-queue.test.ts": { - "durationMs": 55.430908203125, - "testCount": 4 - }, - "src/cron/service.issue-16156-list-skips-cron.test.ts": { - "durationMs": 55.27001953125, - "testCount": 3 - }, - "src/cli/nodes-camera.test.ts": { - "durationMs": 55.112060546875, - "testCount": 17 - }, - "src/media-understanding/providers/index.test.ts": { - "durationMs": 54.6015625, + "src/memory/manager.get-concurrency.test.ts": { + "durationMs": 546.220947265625, "testCount": 3 }, "src/config/config.identity-defaults.test.ts": { - "durationMs": 54.26171875, + "durationMs": 481.40673828125, "testCount": 7 }, - "src/infra/matrix-legacy-state.test.ts": { - "durationMs": 54.01318359375, - "testCount": 6 + "src/hooks/loader.test.ts": { + "durationMs": 479.452880859375, + "testCount": 14 }, - "src/infra/outbound/deliver.test.ts": { - "durationMs": 53.683837890625, - "testCount": 44 + "src/config/config.nix-integration-u3-u5-u9.test.ts": { + "durationMs": 451.165771484375, + "testCount": 19 }, - "src/media-understanding/runtime.test.ts": { - "durationMs": 53.273193359375, - "testCount": 2 - }, - "src/infra/install-package-dir.test.ts": { - "durationMs": 52.913330078125, - "testCount": 5 - }, - "src/security/skill-scanner.test.ts": { - "durationMs": 51.723876953125, - "testCount": 27 - }, - "src/plugins/contracts/discovery.contract.test.ts": { - "durationMs": 51.46240234375, - "testCount": 15 - }, - "src/plugins/hook-runner-global.test.ts": { - "durationMs": 51.134033203125, - "testCount": 2 - }, - "src/infra/outbound/targets.channel-resolution.test.ts": { - "durationMs": 50.57861328125, - "testCount": 2 - }, - "src/infra/update-global.test.ts": { - "durationMs": 49.095703125, - "testCount": 7 - }, - "src/cron/service.read-ops-nonblocking.test.ts": { - "durationMs": 48.874267578125, - "testCount": 3 - }, - "src/config/schema.hints.test.ts": { - "durationMs": 47.700439453125, - "testCount": 7 - }, - "src/cli/daemon-cli/restart-health.test.ts": { - "durationMs": 47.522705078125, - "testCount": 10 - }, - "src/logging/log-file-size-cap.test.ts": { - "durationMs": 47.10107421875, - "testCount": 3 - }, - "src/infra/ports.test.ts": { - "durationMs": 47.010986328125, - "testCount": 5 - }, - "src/process/exec.no-output-timer.test.ts": { - "durationMs": 46.45361328125, - "testCount": 1 - }, - "src/channels/plugins/whatsapp-heartbeat.test.ts": { - "durationMs": 46.3828125, - "testCount": 8 - }, - "src/routing/resolve-route.test.ts": { - "durationMs": 46.355712890625, + "src/node-host/invoke-system-run-plan.test.ts": { + "durationMs": 437.455810546875, "testCount": 41 }, - "src/infra/outbound/message-action-runner.media.test.ts": { - "durationMs": 45.20361328125, - "testCount": 7 - }, - "src/config/includes.test.ts": { - "durationMs": 45.02783203125, - "testCount": 26 - }, - "src/plugin-sdk/persistent-dedupe.test.ts": { - "durationMs": 44.325927734375, + "src/cron/isolated-agent.delivers-response-has-heartbeat-ok-but-includes.test.ts": { + "durationMs": 406.56201171875, "testCount": 6 }, - "src/infra/session-cost-usage.test.ts": { - "durationMs": 44.1787109375, - "testCount": 9 + "src/infra/archive.test.ts": { + "durationMs": 388.169677734375, + "testCount": 15 }, - "src/cron/run-log.test.ts": { - "durationMs": 43.77392578125, + "src/infra/provider-usage.test.ts": { + "durationMs": 384.38671875, "testCount": 11 }, - "src/cron/isolated-agent/run.skill-filter.test.ts": { - "durationMs": 43.68212890625, + "src/infra/fs-pinned-write-helper.test.ts": { + "durationMs": 381.91845703125, + "testCount": 3 + }, + "src/secrets/resolve.test.ts": { + "durationMs": 379.8876953125, + "testCount": 17 + }, + "src/plugins/bundled-plugin-metadata.test.ts": { + "durationMs": 349.606689453125, + "testCount": 4 + }, + "src/infra/transport-ready.test.ts": { + "durationMs": 349.38427734375, + "testCount": 6 + }, + "src/pairing/pairing-store.test.ts": { + "durationMs": 326.400390625, + "testCount": 17 + }, + "src/daemon/schtasks.startup-fallback.test.ts": { + "durationMs": 322.14453125, + "testCount": 6 + }, + "src/config/config.plugin-validation.test.ts": { + "durationMs": 321.5458984375, + "testCount": 15 + }, + "src/plugins/commands.test.ts": { + "durationMs": 305.874267578125, + "testCount": 12 + }, + "src/infra/git-commit.test.ts": { + "durationMs": 305.805908203125, "testCount": 13 }, - "src/cli/route.test.ts": { - "durationMs": 43.54345703125, + "src/security/temp-path-guard.test.ts": { + "durationMs": 304.04638671875, "testCount": 3 }, - "src/media/fetch.test.ts": { - "durationMs": 43.52294921875, - "testCount": 6 + "src/acp/control-plane/manager.test.ts": { + "durationMs": 298.658447265625, + "testCount": 36 }, - "src/infra/net/proxy-fetch.test.ts": { - "durationMs": 43.135986328125, - "testCount": 10 - }, - "src/cron/service.store-migration.test.ts": { - "durationMs": 42.965087890625, - "testCount": 5 - }, - "src/infra/state-migrations.test.ts": { - "durationMs": 42.954345703125, - "testCount": 2 - }, - "src/cron/isolated-agent/run.payload-fallbacks.test.ts": { - "durationMs": 42.942626953125, + "src/install-sh-version.test.ts": { + "durationMs": 297.4970703125, "testCount": 3 }, - "src/cron/isolated-agent/run.message-tool-policy.test.ts": { - "durationMs": 42.89453125, - "testCount": 3 + "test/scripts/test-extension.test.ts": { + "durationMs": 293.929443359375, + "testCount": 9 }, - "src/cli/program/config-guard.test.ts": { - "durationMs": 42.253173828125, + "src/memory/embeddings-gemini.test.ts": { + "durationMs": 293.704345703125, + "testCount": 31 + }, + "src/infra/archive-staging.test.ts": { + "durationMs": 292.599853515625, + "testCount": 7 + }, + "src/cron/isolated-agent.subagent-model.test.ts": { + "durationMs": 292.16796875, + "testCount": 4 + }, + "src/cli/program/preaction.test.ts": { + "durationMs": 291.583251953125, "testCount": 8 }, - "src/infra/outbound/channel-resolution.test.ts": { - "durationMs": 42.127685546875, + "src/infra/heartbeat-runner.returns-default-unset.test.ts": { + "durationMs": 289.12646484375, + "testCount": 25 + }, + "src/infra/run-node.test.ts": { + "durationMs": 276.7587890625, + "testCount": 12 + }, + "src/cli/daemon-cli/install.integration.test.ts": { + "durationMs": 275.413330078125, + "testCount": 2 + }, + "src/plugins/manifest-registry.test.ts": { + "durationMs": 266.66015625, + "testCount": 26 + }, + "src/memory/embeddings.test.ts": { + "durationMs": 264.777099609375, + "testCount": 19 + }, + "src/infra/system-presence.version.test.ts": { + "durationMs": 252.56787109375, "testCount": 6 }, + "src/media/store.test.ts": { + "durationMs": 250.561279296875, + "testCount": 24 + }, + "src/plugins/bundle-mcp.test.ts": { + "durationMs": 239.72216796875, + "testCount": 3 + }, + "src/infra/heartbeat-runner.respects-ackmaxchars-heartbeat-acks.test.ts": { + "durationMs": 235.425537109375, + "testCount": 12 + }, + "src/cron/isolated-agent.direct-delivery-core-channels.test.ts": { + "durationMs": 233.672607421875, + "testCount": 4 + }, + "src/cli/daemon-cli/restart-health.test.ts": { + "durationMs": 231.465087890625, + "testCount": 10 + }, + "src/tts/tts.test.ts": { + "durationMs": 229.763427734375, + "testCount": 27 + }, + "src/plugins/loader.git-path-regression.test.ts": { + "durationMs": 224.001953125, + "testCount": 1 + }, + "src/cron/isolated-agent.lane.test.ts": { + "durationMs": 217.71826171875, + "testCount": 3 + }, + "src/secrets/runtime.integration.test.ts": { + "durationMs": 216.497314453125, + "testCount": 5 + }, + "ui/src/ui/views/chat.test.ts": { + "durationMs": 215.544921875, + "testCount": 32 + }, + "src/config/io.write-config.test.ts": { + "durationMs": 213.6318359375, + "testCount": 17 + }, + "src/infra/device-bootstrap.test.ts": { + "durationMs": 213.50048828125, + "testCount": 10 + }, + "src/channels/plugins/plugins-core.test.ts": { + "durationMs": 210.02392578125, + "testCount": 39 + }, + "src/config/sessions/store.pruning.integration.test.ts": { + "durationMs": 204.234130859375, + "testCount": 10 + }, + "src/node-host/invoke-system-run.test.ts": { + "durationMs": 197.60498046875, + "testCount": 39 + }, + "src/plugins/sdk-alias.test.ts": { + "durationMs": 193.329345703125, + "testCount": 24 + }, + "src/config/sessions.test.ts": { + "durationMs": 191.794189453125, + "testCount": 37 + }, + "src/infra/update-runner.test.ts": { + "durationMs": 185.320556640625, + "testCount": 22 + }, + "src/media-understanding/apply.test.ts": { + "durationMs": 180.3095703125, + "testCount": 32 + }, + "src/channels/channels-misc.test.ts": { + "durationMs": 176.197509765625, + "testCount": 10 + }, + "src/channels/plugins/contracts/registry-backed.contract.test.ts": { + "durationMs": 165.671875, + "testCount": 167 + }, + "src/infra/device-pairing.test.ts": { + "durationMs": 165.583740234375, + "testCount": 19 + }, + "src/acp/server.startup.test.ts": { + "durationMs": 156.636474609375, + "testCount": 4 + }, + "test/scripts/ios-team-id.test.ts": { + "durationMs": 155.50732421875, + "testCount": 3 + }, + "src/hooks/plugin-hooks.test.ts": { + "durationMs": 151.358642578125, + "testCount": 4 + }, + "src/memory/manager.readonly-recovery.test.ts": { + "durationMs": 150.2568359375, + "testCount": 4 + }, + "src/cron/service.delivery-plan.test.ts": { + "durationMs": 149.01416015625, + "testCount": 3 + }, + "src/plugins/contracts/auth-choice.contract.test.ts": { + "durationMs": 148.492431640625, + "testCount": 3 + }, + "ui/src/ui/app-chat.test.ts": { + "durationMs": 143.6455078125, + "testCount": 3 + }, + "src/wizard/setup.gateway-config.test.ts": { + "durationMs": 142.656494140625, + "testCount": 7 + }, + "src/entry.version-fast-path.test.ts": { + "durationMs": 141.65087890625, + "testCount": 2 + }, + "src/context-engine/context-engine.test.ts": { + "durationMs": 140.483642578125, + "testCount": 30 + }, + "src/config/sessions/targets.test.ts": { + "durationMs": 136.714111328125, + "testCount": 13 + }, + "src/config/schema.hints.test.ts": { + "durationMs": 136.534423828125, + "testCount": 7 + }, + "test/git-hooks-pre-commit.test.ts": { + "durationMs": 134.720458984375, + "testCount": 1 + }, + "src/infra/matrix-legacy-crypto.test.ts": { + "durationMs": 134.415771484375, + "testCount": 8 + }, + "src/memory/manager.batch.test.ts": { + "durationMs": 132.914306640625, + "testCount": 3 + }, + "src/routing/resolve-route.test.ts": { + "durationMs": 131.9150390625, + "testCount": 41 + }, + "src/canvas-host/server.test.ts": { + "durationMs": 131.867919921875, + "testCount": 6 + }, + "src/plugins/config-state.test.ts": { + "durationMs": 127.486083984375, + "testCount": 22 + }, + "src/infra/provider-usage.auth.plugin.test.ts": { + "durationMs": 127.301513671875, + "testCount": 1 + }, + "src/config/config.legacy-config-detection.accepts-imessage-dmpolicy.test.ts": { + "durationMs": 127.07763671875, + "testCount": 30 + }, + "src/cli/config-cli.integration.test.ts": { + "durationMs": 126.407470703125, + "testCount": 4 + }, + "src/security/windows-acl.test.ts": { + "durationMs": 123.772705078125, + "testCount": 48 + }, + "src/infra/heartbeat-runner.model-override.test.ts": { + "durationMs": 121.20263671875, + "testCount": 8 + }, + "src/secrets/runtime.test.ts": { + "durationMs": 119.88818359375, + "testCount": 55 + }, + "src/cron/service.failure-alert.test.ts": { + "durationMs": 118.9111328125, + "testCount": 4 + }, + "src/config/plugin-auto-enable.test.ts": { + "durationMs": 118.829833984375, + "testCount": 25 + }, + "src/cron/isolated-agent/delivery-dispatch.double-announce.test.ts": { + "durationMs": 117.264404296875, + "testCount": 15 + }, + "src/config/includes.test.ts": { + "durationMs": 115.695068359375, + "testCount": 26 + }, + "src/memory/internal.test.ts": { + "durationMs": 114.050048828125, + "testCount": 18 + }, + "src/memory/manager.embedding-batches.test.ts": { + "durationMs": 113.791259765625, + "testCount": 5 + }, + "src/infra/gateway-lock.test.ts": { + "durationMs": 113.197021484375, + "testCount": 9 + }, + "src/infra/outbound/message-action-runner.media.test.ts": { + "durationMs": 111.97216796875, + "testCount": 7 + }, + "src/cron/service.persists-delivered-status.test.ts": { + "durationMs": 108.559814453125, + "testCount": 6 + }, + "src/plugins/discovery.test.ts": { + "durationMs": 107.716064453125, + "testCount": 25 + }, + "src/cron/run-log.test.ts": { + "durationMs": 107.50634765625, + "testCount": 11 + }, + "src/cron/service.session-reaper-in-finally.test.ts": { + "durationMs": 103.7470703125, + "testCount": 3 + }, + "src/cron/isolated-agent.direct-delivery-forum-topics.test.ts": { + "durationMs": 103.40283203125, + "testCount": 2 + }, + "src/pairing/setup-code.test.ts": { + "durationMs": 102.3203125, + "testCount": 16 + }, + "src/cron/isolated-agent/run.owner-auth.test.ts": { + "durationMs": 100.48779296875, + "testCount": 1 + }, + "src/cli/update-cli/restart-helper.test.ts": { + "durationMs": 99.556640625, + "testCount": 20 + }, + "src/infra/boundary-path.test.ts": { + "durationMs": 98.96142578125, + "testCount": 5 + }, + "src/config/schema.test.ts": { + "durationMs": 98.1875, + "testCount": 22 + }, + "src/plugins/conversation-binding.test.ts": { + "durationMs": 96.423095703125, + "testCount": 15 + }, + "src/plugins/web-search-providers.runtime.test.ts": { + "durationMs": 95.8154296875, + "testCount": 9 + }, + "src/cron/service.restart-catchup.test.ts": { + "durationMs": 93.3232421875, + "testCount": 8 + }, + "src/infra/heartbeat-runner.ghost-reminder.test.ts": { + "durationMs": 92.972412109375, + "testCount": 6 + }, + "src/media-understanding/runner.skip-tiny-audio.test.ts": { + "durationMs": 92.167236328125, + "testCount": 3 + }, + "src/security/fix.test.ts": { + "durationMs": 90.6171875, + "testCount": 5 + }, + "src/hooks/hooks-install.test.ts": { + "durationMs": 89.53759765625, + "testCount": 1 + }, + "src/infra/outbound/delivery-queue.recovery.test.ts": { + "durationMs": 89.47412109375, + "testCount": 11 + }, + "src/infra/install-package-dir.test.ts": { + "durationMs": 86.085693359375, + "testCount": 5 + }, + "src/process/command-queue.test.ts": { + "durationMs": 84.578125, + "testCount": 17 + }, + "src/plugin-sdk/channel-lifecycle.test.ts": { + "durationMs": 82.777099609375, + "testCount": 6 + }, + "src/plugins/stage-bundled-plugin-runtime.test.ts": { + "durationMs": 82.215576171875, + "testCount": 7 + }, + "src/memory/embeddings-voyage.test.ts": { + "durationMs": 82.2119140625, + "testCount": 4 + }, + "src/config/io.runtime-snapshot-write.test.ts": { + "durationMs": 81.617431640625, + "testCount": 6 + }, + "src/config/config.pruning-defaults.test.ts": { + "durationMs": 79.002685546875, + "testCount": 7 + }, + "src/hooks/workspace.test.ts": { + "durationMs": 78.73388671875, + "testCount": 7 + }, + "src/config/config.web-search-provider.test.ts": { + "durationMs": 77.86962890625, + "testCount": 24 + }, + "src/infra/matrix-plugin-helper.test.ts": { + "durationMs": 76.61181640625, + "testCount": 4 + }, + "src/cli/plugins-cli.install.test.ts": { + "durationMs": 76.592529296875, + "testCount": 8 + }, + "src/cron/isolated-agent.auth-profile-propagation.test.ts": { + "durationMs": 75.08984375, + "testCount": 1 + }, + "src/cron/service.store.migration.test.ts": { + "durationMs": 73.780517578125, + "testCount": 7 + }, + "test/scripts/check-no-conflict-markers.test.ts": { + "durationMs": 73.209228515625, + "testCount": 4 + }, + "src/cli/pairing-cli.test.ts": { + "durationMs": 72.9013671875, + "testCount": 12 + }, + "src/infra/matrix-migration-snapshot.test.ts": { + "durationMs": 72.4443359375, + "testCount": 7 + }, + "src/config/plugins-runtime-boundary.test.ts": { + "durationMs": 71.692138671875, + "testCount": 3 + }, + "src/cron/service.read-ops-nonblocking.test.ts": { + "durationMs": 70.1806640625, + "testCount": 3 + }, + "src/cli/program.smoke.test.ts": { + "durationMs": 69.348388671875, + "testCount": 4 + }, + "src/security/skill-scanner.test.ts": { + "durationMs": 69.302490234375, + "testCount": 27 + }, + "src/plugins/copy-bundled-plugin-metadata.test.ts": { + "durationMs": 68.958740234375, + "testCount": 9 + }, + "src/channels/status-reactions.test.ts": { + "durationMs": 68.4052734375, + "testCount": 37 + }, + "src/plugins/bundle-commands.test.ts": { + "durationMs": 67.466064453125, + "testCount": 1 + }, + "src/media/server.outside-workspace.test.ts": { + "durationMs": 66.935791015625, + "testCount": 1 + }, + "src/cron/service.every-jobs-fire.test.ts": { + "durationMs": 66.443115234375, + "testCount": 3 + }, + "src/daemon/schtasks.test.ts": { + "durationMs": 66.254638671875, + "testCount": 23 + }, + "src/config/sessions.cache.test.ts": { + "durationMs": 65.659423828125, + "testCount": 9 + }, + "src/infra/state-migrations.test.ts": { + "durationMs": 65.61279296875, + "testCount": 2 + }, + "src/config/config.talk-validation.test.ts": { + "durationMs": 65.213134765625, + "testCount": 5 + }, + "src/cli/daemon-cli/status.gather.test.ts": { + "durationMs": 65.18212890625, + "testCount": 12 + }, + "src/plugins/runtime/index.test.ts": { + "durationMs": 64.8515625, + "testCount": 12 + }, + "src/cron/isolated-agent/run.skill-filter.test.ts": { + "durationMs": 64.020751953125, + "testCount": 13 + }, + "src/config/config-misc.test.ts": { + "durationMs": 63.940185546875, + "testCount": 38 + }, + "src/plugin-sdk/persistent-dedupe.test.ts": { + "durationMs": 63.2900390625, + "testCount": 6 + }, + "src/media-understanding/apply.echo-transcript.test.ts": { + "durationMs": 63.254150390625, + "testCount": 10 + }, + "src/infra/matrix-migration-config.test.ts": { + "durationMs": 63.236572265625, + "testCount": 7 + }, + "src/config/env-preserve-io.test.ts": { + "durationMs": 61.69921875, + "testCount": 4 + }, + "src/daemon/service-audit.test.ts": { + "durationMs": 60.855224609375, + "testCount": 16 + }, + "src/infra/infra-runtime.test.ts": { + "durationMs": 60.0595703125, + "testCount": 11 + }, + "src/infra/matrix-legacy-state.test.ts": { + "durationMs": 59.89404296875, + "testCount": 6 + }, + "src/infra/install-source-utils.test.ts": { + "durationMs": 59.5400390625, + "testCount": 16 + }, + "src/cron/service.heartbeat-ok-summary-suppressed.test.ts": { + "durationMs": 59.4853515625, + "testCount": 2 + }, + "src/infra/outbound/deliver.test.ts": { + "durationMs": 58.823974609375, + "testCount": 44 + }, + "src/plugins/contracts/discovery.contract.test.ts": { + "durationMs": 58.736572265625, + "testCount": 15 + }, + "src/config/doc-baseline.integration.test.ts": { + "durationMs": 58.551025390625, + "testCount": 8 + }, + "src/daemon/systemd.test.ts": { + "durationMs": 57.96435546875, + "testCount": 43 + }, + "src/infra/jsonl-socket.test.ts": { + "durationMs": 57.662841796875, + "testCount": 2 + }, + "src/cron/store.test.ts": { + "durationMs": 57.3974609375, + "testCount": 12 + }, + "src/infra/session-cost-usage.test.ts": { + "durationMs": 55.66796875, + "testCount": 9 + }, + "src/infra/exec-approvals-safe-bins.test.ts": { + "durationMs": 55.111572265625, + "testCount": 48 + }, "src/infra/push-apns.store.test.ts": { - "durationMs": 42.03955078125, + "durationMs": 54.936767578125, + "testCount": 7 + }, + "src/infra/restart-sentinel.test.ts": { + "durationMs": 54.8037109375, + "testCount": 13 + }, + "src/plugin-sdk/keyed-async-queue.test.ts": { + "durationMs": 54.710693359375, + "testCount": 4 + }, + "src/cli/memory-cli.test.ts": { + "durationMs": 54.0625, + "testCount": 24 + }, + "src/channels/plugins/setup-wizard-helpers.test.ts": { + "durationMs": 53.711669921875, + "testCount": 88 + }, + "src/plugins/status.test.ts": { + "durationMs": 52.908935546875, + "testCount": 9 + }, + "src/config/config.legacy-config-detection.rejects-routing-allowfrom.test.ts": { + "durationMs": 52.880615234375, + "testCount": 28 + }, + "src/infra/system-events.test.ts": { + "durationMs": 52.455078125, + "testCount": 15 + }, + "src/memory/manager.async-search.test.ts": { + "durationMs": 52.367431640625, + "testCount": 2 + }, + "src/config/config.backup-rotation.test.ts": { + "durationMs": 52.273681640625, + "testCount": 4 + }, + "src/cron/service.issue-16156-list-skips-cron.test.ts": { + "durationMs": 51.369140625, + "testCount": 3 + }, + "src/media-understanding/runner.auto-audio.test.ts": { + "durationMs": 51.368408203125, + "testCount": 4 + }, + "src/infra/restart-stale-pids.test.ts": { + "durationMs": 51.15234375, + "testCount": 37 + }, + "src/cron/service.runs-one-shot-main-job-disables-it.test.ts": { + "durationMs": 51.140869140625, + "testCount": 11 + }, + "src/infra/update-startup.test.ts": { + "durationMs": 50.162841796875, + "testCount": 10 + }, + "src/infra/json-files.test.ts": { + "durationMs": 49.891845703125, + "testCount": 5 + }, + "src/logging/log-file-size-cap.test.ts": { + "durationMs": 49.63330078125, + "testCount": 3 + }, + "src/memory/manager.atomic-reindex.test.ts": { + "durationMs": 49.58642578125, + "testCount": 1 + }, + "src/cli/nodes-camera.test.ts": { + "durationMs": 48.5517578125, + "testCount": 17 + }, + "src/infra/secret-file.test.ts": { + "durationMs": 47.966796875, + "testCount": 11 + }, + "src/media/server.test.ts": { + "durationMs": 47.458740234375, + "testCount": 9 + }, + "src/config/config.compaction-settings.test.ts": { + "durationMs": 47.290771484375, + "testCount": 5 + }, + "src/cron/session-reaper.test.ts": { + "durationMs": 47.266357421875, + "testCount": 16 + }, + "src/media/mime.test.ts": { + "durationMs": 46.57568359375, + "testCount": 44 + }, + "src/cron/service.store-migration.test.ts": { + "durationMs": 45.800048828125, + "testCount": 5 + }, + "src/media-understanding/runner.deepgram.test.ts": { + "durationMs": 45.664794921875, + "testCount": 1 + }, + "src/infra/outbound/delivery-queue.storage.test.ts": { + "durationMs": 45.38427734375, + "testCount": 10 + }, + "src/memory/manager.mistral-provider.test.ts": { + "durationMs": 44.930908203125, + "testCount": 3 + }, + "src/config/sessions/store.session-key-normalization.test.ts": { + "durationMs": 44.8798828125, + "testCount": 4 + }, + "src/infra/machine-name.test.ts": { + "durationMs": 44.325439453125, + "testCount": 2 + }, + "src/config/io.compat.test.ts": { + "durationMs": 43.653564453125, "testCount": 7 }, "src/cron/isolated-agent/run.interim-retry.test.ts": { - "durationMs": 42.005615234375, + "durationMs": 43.59423828125, "testCount": 3 }, - "src/config/config.compaction-settings.test.ts": { - "durationMs": 41.615478515625, - "testCount": 5 + "src/plugins/uninstall.test.ts": { + "durationMs": 43.580322265625, + "testCount": 23 }, - "src/acp/client.test.ts": { - "durationMs": 41.4873046875, - "testCount": 44 - }, - "src/config/io.compat.test.ts": { - "durationMs": 41.089111328125, - "testCount": 7 - }, - "src/config/mcp-config.test.ts": { - "durationMs": 40.832275390625, + "src/infra/heartbeat-runner.transcript-prune.test.ts": { + "durationMs": 43.103759765625, "testCount": 2 }, - "src/plugins/schema-validator.test.ts": { - "durationMs": 40.46240234375, - "testCount": 7 - }, - "src/process/exec.windows.test.ts": { - "durationMs": 40.332763671875, - "testCount": 2 - }, - "src/cron/service.store-load-invalid-main-job.test.ts": { - "durationMs": 39.620849609375, - "testCount": 1 - }, - "src/config/env-preserve-io.test.ts": { - "durationMs": 39.529052734375, - "testCount": 4 - }, - "src/acp/persistent-bindings.lifecycle.test.ts": { - "durationMs": 39.294921875, - "testCount": 1 - }, - "src/infra/secret-file.test.ts": { - "durationMs": 39.18359375, - "testCount": 11 - }, - "src/infra/heartbeat-runner.sender-prefers-delivery-target.test.ts": { - "durationMs": 39.019287109375, - "testCount": 1 - }, - "src/cron/isolated-agent/run.cron-model-override.test.ts": { - "durationMs": 38.840576171875, - "testCount": 6 - }, - "src/infra/outbound/message-action-runner.plugin-dispatch.test.ts": { - "durationMs": 38.831298828125, - "testCount": 11 - }, - "src/config/plugins-runtime-boundary.test.ts": { - "durationMs": 38.781494140625, - "testCount": 3 - }, - "src/infra/outbound/session-binding-service.test.ts": { - "durationMs": 37.824951171875, + "src/channels/plugins/whatsapp-heartbeat.test.ts": { + "durationMs": 42.790771484375, "testCount": 8 }, - "src/media/server.test.ts": { - "durationMs": 37.70556640625, - "testCount": 9 + "src/version.test.ts": { + "durationMs": 42.5732421875, + "testCount": 10 }, - "src/cron/service.delivery-plan.test.ts": { - "durationMs": 37.392578125, + "src/infra/system-presence.test.ts": { + "durationMs": 42.49365234375, + "testCount": 5 + }, + "src/cron/isolated-agent/run.cron-model-override.test.ts": { + "durationMs": 42.2236328125, + "testCount": 6 + }, + "src/plugins/web-search-providers.test.ts": { + "durationMs": 42.105224609375, + "testCount": 7 + }, + "src/infra/heartbeat-runner.sender-prefers-delivery-target.test.ts": { + "durationMs": 41.898193359375, + "testCount": 1 + }, + "src/plugins/contracts/registry.contract.test.ts": { + "durationMs": 41.73974609375, + "testCount": 19 + }, + "src/infra/openclaw-root.test.ts": { + "durationMs": 41.5361328125, + "testCount": 10 + }, + "src/acp/client.test.ts": { + "durationMs": 41.49267578125, + "testCount": 44 + }, + "src/cron/isolated-agent/run.fast-mode.test.ts": { + "durationMs": 41.228759765625, "testCount": 3 }, "src/infra/exec-approvals-store.test.ts": { - "durationMs": 37.160400390625, + "durationMs": 40.9560546875, "testCount": 8 }, - "src/memory/manager.atomic-reindex.test.ts": { - "durationMs": 36.92236328125, - "testCount": 1 - }, - "src/cron/store.test.ts": { - "durationMs": 36.14990234375, - "testCount": 11 - }, - "src/plugins/contracts/runtime.contract.test.ts": { - "durationMs": 35.927001953125, - "testCount": 27 - }, - "src/config/config.talk-validation.test.ts": { - "durationMs": 35.7470703125, - "testCount": 5 - }, - "src/infra/hardlink-guards.test.ts": { - "durationMs": 35.63037109375, - "testCount": 2 - }, - "src/memory/manager.async-search.test.ts": { - "durationMs": 35.413818359375, - "testCount": 2 - }, - "src/cron/isolated-agent/run.fast-mode.test.ts": { - "durationMs": 35.00634765625, - "testCount": 3 - }, - "src/cli/daemon-cli.coverage.test.ts": { - "durationMs": 34.6416015625, - "testCount": 5 - }, - "src/config/sessions.cache.test.ts": { - "durationMs": 34.439697265625, - "testCount": 9 - }, - "src/config/io.owner-display-secret.test.ts": { - "durationMs": 33.561767578125, - "testCount": 1 - }, - "src/infra/transport-ready.test.ts": { - "durationMs": 33.1494140625, - "testCount": 6 - }, - "src/infra/infra-runtime.test.ts": { - "durationMs": 32.81396484375, - "testCount": 11 - }, - "src/channels/plugins/contracts/inbound.contract.test.ts": { - "durationMs": 32.615478515625, - "testCount": 5 - }, - "src/cron/service.main-job-passes-heartbeat-target-last.test.ts": { - "durationMs": 32.451171875, - "testCount": 2 - }, - "src/infra/provider-usage.fetch.claude.test.ts": { - "durationMs": 32.3544921875, - "testCount": 13 - }, - "src/infra/json-files.test.ts": { - "durationMs": 32.349609375, - "testCount": 5 - }, - "src/version.test.ts": { - "durationMs": 31.30322265625, - "testCount": 10 - }, - "src/cli/config-cli.test.ts": { - "durationMs": 31.265380859375, - "testCount": 48 - }, - "src/infra/install-source-utils.test.ts": { - "durationMs": 30.666259765625, - "testCount": 16 - }, - "src/infra/heartbeat-runner.transcript-prune.test.ts": { - "durationMs": 30.657470703125, - "testCount": 2 - }, - "src/infra/provider-usage.fetch.shared.test.ts": { - "durationMs": 30.14111328125, - "testCount": 9 - }, - "src/memory/manager.mistral-provider.test.ts": { - "durationMs": 30.119140625, - "testCount": 3 - }, "src/cli/mcp-cli.test.ts": { - "durationMs": 29.941650390625, + "durationMs": 40.920166015625, "testCount": 2 }, - "src/media/read-response-with-limit.test.ts": { - "durationMs": 29.72216796875, - "testCount": 5 - }, - "src/plugins/contracts/provider.contract.test.ts": { - "durationMs": 29.39111328125, - "testCount": 38 + "src/config/config.identity-avatar.test.ts": { + "durationMs": 40.639892578125, + "testCount": 3 }, "src/infra/outbound/targets.test.ts": { - "durationMs": 29.384521484375, + "durationMs": 40.48193359375, "testCount": 49 }, - "src/config/sessions/store.session-key-normalization.test.ts": { - "durationMs": 29.240478515625, + "src/infra/outbound/message-action-runner.plugin-dispatch.test.ts": { + "durationMs": 39.700927734375, + "testCount": 11 + }, + "src/security/dm-policy-shared.test.ts": { + "durationMs": 38.9951171875, + "testCount": 66 + }, + "src/tui/tui-formatters.test.ts": { + "durationMs": 38.393798828125, + "testCount": 26 + }, + "src/channels/plugins/actions/actions.test.ts": { + "durationMs": 38.15234375, + "testCount": 25 + }, + "src/cron/isolated-agent/run.message-tool-policy.test.ts": { + "durationMs": 38.073486328125, + "testCount": 3 + }, + "src/infra/session-maintenance-warning.test.ts": { + "durationMs": 37.757568359375, + "testCount": 5 + }, + "src/memory/qmd-process.test.ts": { + "durationMs": 37.728759765625, + "testCount": 3 + }, + "src/plugins/contracts/runtime.contract.test.ts": { + "durationMs": 37.444091796875, + "testCount": 27 + }, + "src/memory/manager.watcher-config.test.ts": { + "durationMs": 37.2939453125, + "testCount": 2 + }, + "src/plugins/interactive.test.ts": { + "durationMs": 37.029541015625, + "testCount": 10 + }, + "src/tui/theme/theme.test.ts": { + "durationMs": 36.656982421875, + "testCount": 25 + }, + "src/plugins/bundled-plugin-naming.test.ts": { + "durationMs": 36.5302734375, "testCount": 4 }, - "src/config/config.legacy-config-detection.rejects-routing-allowfrom.test.ts": { - "durationMs": 29.127685546875, + "src/infra/node-pairing.test.ts": { + "durationMs": 35.856689453125, + "testCount": 4 + }, + "src/infra/outbound/target-normalization.test.ts": { + "durationMs": 35.790283203125, + "testCount": 7 + }, + "src/config/redact-snapshot.test.ts": { + "durationMs": 35.75, "testCount": 28 + }, + "src/plugins/contracts/provider.contract.test.ts": { + "durationMs": 35.133056640625, + "testCount": 38 + }, + "src/infra/outbound/session-binding-service.test.ts": { + "durationMs": 34.947509765625, + "testCount": 8 + }, + "src/plugins/bundled-web-search.test.ts": { + "durationMs": 34.859130859375, + "testCount": 4 + }, + "src/node-host/invoke-browser.test.ts": { + "durationMs": 34.781982421875, + "testCount": 4 + }, + "src/plugins/marketplace.test.ts": { + "durationMs": 34.758544921875, + "testCount": 3 + }, + "src/plugins/wired-hooks-compaction.test.ts": { + "durationMs": 34.751220703125, + "testCount": 8 + }, + "src/media-understanding/runner.video.test.ts": { + "durationMs": 33.72509765625, + "testCount": 2 + }, + "src/media-understanding/provider-registry.test.ts": { + "durationMs": 33.62744140625, + "testCount": 3 + }, + "src/cli/update-cli.test.ts": { + "durationMs": 33.624267578125, + "testCount": 20 } } } diff --git a/test/scripts/test-update-memory-hotspots-utils.test.ts b/test/scripts/test-update-memory-hotspots-utils.test.ts new file mode 100644 index 00000000000..18c2fe318da --- /dev/null +++ b/test/scripts/test-update-memory-hotspots-utils.test.ts @@ -0,0 +1,18 @@ +import { describe, expect, it } from "vitest"; +import { matchesHotspotSummaryLane } from "../../scripts/test-update-memory-hotspots-utils.mjs"; + +describe("test-update-memory-hotspots lane matching", () => { + it("matches the exact target lane", () => { + expect(matchesHotspotSummaryLane("unit-fast", "unit-fast")).toBe(true); + }); + + it("matches configured lane prefixes", () => { + expect(matchesHotspotSummaryLane("unit-chat-memory-isolated", "unit-fast", ["unit-"])).toBe( + true, + ); + }); + + it("rejects unrelated lanes", () => { + expect(matchesHotspotSummaryLane("extensions", "unit-fast", ["unit-"])).toBe(false); + }); +});