import { loadModelCatalog, type ModelCatalogEntry, resetModelCatalogCacheForTest, } from "../agents/model-catalog.js"; import { getRuntimeConfig } from "../config/config.js"; export type GatewayModelChoice = ModelCatalogEntry; // Test-only escape hatch: model catalog is cached at module scope for the // process lifetime, which is fine for the real gateway daemon, but makes // isolated unit tests harder. Keep this intentionally obscure. export function __resetModelCatalogCacheForTest() { resetModelCatalogCacheForTest(); } export async function loadGatewayModelCatalog(params?: { getConfig?: () => ReturnType; }): Promise { return await loadModelCatalog({ config: (params?.getConfig ?? getRuntimeConfig)() }); }