From 82c4fd8f56751faa03470e32f4763b7245c69b71 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 6 May 2026 05:20:51 +0100 Subject: [PATCH] test: cache fallback metadata snapshot --- src/agents/model-fallback.test.ts | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/agents/model-fallback.test.ts b/src/agents/model-fallback.test.ts index 81b8643b499..1e42b48e6e3 100644 --- a/src/agents/model-fallback.test.ts +++ b/src/agents/model-fallback.test.ts @@ -1,9 +1,14 @@ import crypto from "node:crypto"; import path from "node:path"; -import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; import type { OpenClawConfig } from "../config/config.js"; import { resetLogger, setLoggerOverride } from "../logging/logger.js"; import { createWarnLogCapture } from "../logging/test-helpers/warn-log-capture.js"; +import { + clearCurrentPluginMetadataSnapshot, + setCurrentPluginMetadataSnapshot, +} from "../plugins/current-plugin-metadata-snapshot.js"; +import { loadPluginMetadataSnapshot } from "../plugins/plugin-metadata-snapshot.js"; import { AUTH_STORE_VERSION } from "./auth-profiles/constants.js"; import type { AuthProfileStore } from "./auth-profiles/types.js"; import { FailoverError } from "./failover-error.js"; @@ -27,10 +32,6 @@ vi.mock("../plugins/provider-runtime.js", () => ({ resolveExternalAuthProfilesWithPlugins: () => [], })); -vi.mock("../plugins/manifest-model-id-normalization.js", () => ({ - normalizeProviderModelIdWithManifest: () => undefined, -})); - const authSourceCheckMock = vi.hoisted(() => ({ hasAnyAuthProfileStoreSource: vi.fn(() => false), })); @@ -145,6 +146,14 @@ const makeCfg = makeModelFallbackCfg; let authTempRoot = ""; let authTempCounter = 0; +beforeAll(() => { + setCurrentPluginMetadataSnapshot(loadPluginMetadataSnapshot({ config: {} }), { config: {} }); +}); + +afterAll(() => { + clearCurrentPluginMetadataSnapshot(); +}); + function resetModelFallbackTestState(): void { authRuntimeMock.clear(); authRuntimeMock.runtime.ensureAuthProfileStore.mockClear(); @@ -955,7 +964,7 @@ describe("runWithModelFallback", () => { }), ).toEqual([ { provider: "anthropic", model: "claude-haiku-3-5" }, - { provider: "openrouter", model: "deepseek-chat" }, + { provider: "openrouter", model: "openrouter/deepseek-chat" }, { provider: "openai", model: "gpt-4.1-mini" }, ]); });