diff --git a/frontend/src/api/__tests__/attachments.spec.ts b/frontend/src/api/__tests__/attachments.spec.ts index 1dd182e..3221383 100644 --- a/frontend/src/api/__tests__/attachments.spec.ts +++ b/frontend/src/api/__tests__/attachments.spec.ts @@ -16,7 +16,9 @@ describe('attachments api', () => { sourceId: '1001', }); - const [url, body] = vi.mocked(post).mock.calls[0]; + const firstCall = vi.mocked(post).mock.calls[0]; + expect(firstCall).toBeDefined(); + const [url, body] = firstCall as [string, FormData]; expect(url).toBe('/attachments/upload'); expect(body).toBeInstanceOf(FormData); diff --git a/frontend/src/api/modelProvider.ts b/frontend/src/api/modelProvider.ts index 128f89a..1f158e5 100644 --- a/frontend/src/api/modelProvider.ts +++ b/frontend/src/api/modelProvider.ts @@ -40,7 +40,9 @@ export interface ModelRouteRule { matchScope: string; scopeId?: string; primaryModelId: string; + primaryModelCode?: string; fallbackModelIdsJson?: string; + fallbackModelCode?: string; routeStrategy: string; maxLatencyMs?: number; enabled: boolean; diff --git a/frontend/src/pages/studio/McpImportPage.vue b/frontend/src/pages/studio/McpImportPage.vue index 83b01ec..a7e70f0 100644 --- a/frontend/src/pages/studio/McpImportPage.vue +++ b/frontend/src/pages/studio/McpImportPage.vue @@ -66,8 +66,9 @@ async function loadServers() { try { const response = await listMcpServers(); servers.value = response.data ?? []; - if (!selectedServerCode.value && servers.value.length > 0) { - selectedServerCode.value = servers.value[0].serverCode; + const firstServer = servers.value[0]; + if (!selectedServerCode.value && firstServer?.serverCode) { + selectedServerCode.value = firstServer.serverCode; } } finally { loading.value = false; @@ -193,7 +194,7 @@ onMounted(async () => {
- 当前服务:{{ selectedServer.serverName }} / {{ selectedServer.importType }} / {{ selectedServer.healthStatus }} + 当前服务:{{ selectedServer?.serverName }} / {{ selectedServer?.importType }} / {{ selectedServer?.healthStatus }}