diff --git a/packages/commands/tests/e2e/knowledge/journeys/j2-content-ops.e2e.test.ts b/packages/commands/tests/e2e/knowledge/journeys/j2-content-ops.e2e.test.ts index 89a586c..276bae3 100644 --- a/packages/commands/tests/e2e/knowledge/journeys/j2-content-ops.e2e.test.ts +++ b/packages/commands/tests/e2e/knowledge/journeys/j2-content-ops.e2e.test.ts @@ -4,7 +4,7 @@ // Note: there is no "append documents to an existing base" command (kb update takes // no doc-id), so incremental semantics are expressed as a two-document create + deleting one. import { describe, expect, test } from "vite-plus/test"; -import { isKbAdminE2EReady } from "../../helpers.ts"; +import { isKbAdminE2EReady, parseStdoutJson } from "../../helpers.ts"; import { JOURNEY_J2_ROUTES } from "../../topic-routes.ts"; import { cleanupKbFixture, @@ -67,6 +67,30 @@ describe.skipIf(!isKbAdminE2EReady())("journey J2: 内容运维 (live, 自清理 expect(docStatusRun.exitCode, docStatusRun.stderr).toBe(0); expect(docStatusRun.stdout.trim()).toBe("COMPLETED"); + // 2.5) knowledge stats — monitor endpoint returns valid structure (hard) + const statsRun = await reporter.runStep("kb stats", JOURNEY_J2_ROUTES, [ + "knowledge", + "stats", + "--index-id", + kb.indexId, + "--workspace-id", + workspaceId, + "--output", + "json", + ]); + expect(statsRun.exitCode, statsRun.stderr).toBe(0); + const statsData = parseStdoutJson<{ + data?: { + storageMonitorData?: { indexStorageLimit?: number }; + qpsMonitorData?: { monitorData?: unknown[] }; + }; + }>(statsRun.stdout); + expect(typeof statsData.data?.storageMonitorData?.indexStorageLimit).toBe("number"); + expect(Array.isArray(statsData.data?.qpsMonitorData?.monitorData)).toBe(true); + reporter.recordNote( + `storage limit=${statsData.data?.storageMonitorData?.indexStorageLimit} qps windows=${statsData.data?.qpsMonitorData?.monitorData?.length ?? 0}`, + ); + // 3) doc tag on doc2 (tagging succeeds: hard; tag read-back: soft — server-side // display lag or the API not echoing tags are both tolerable) const tagValue = `e2e-j2-${Date.now() % 100000000}`; diff --git a/packages/commands/tests/e2e/topic-routes.ts b/packages/commands/tests/e2e/topic-routes.ts index dbf5889..b5c7767 100644 --- a/packages/commands/tests/e2e/topic-routes.ts +++ b/packages/commands/tests/e2e/topic-routes.ts @@ -294,6 +294,7 @@ export const JOURNEY_J2_ROUTES: E2eRouteExports = { "knowledge doc status": "knowledgeDocStatus", "knowledge doc tag": "knowledgeDocTag", "knowledge doc delete": "knowledgeDocDelete", + "knowledge stats": "knowledgeKbStats", }; export const JOURNEY_J3_ROUTES: E2eRouteExports = {