From ebd4dccdc191371c8e64fe229865dc3c7e498f17 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 16 Jul 2026 12:57:14 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20AgentRun=20?= =?UTF-8?q?=E5=AF=BC=E5=9B=BE=E8=BF=9E=E7=BA=BF=E4=B8=8E=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E9=81=AE=E6=8C=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scripts/agent-observer-ui-contract.test.ts | 14 ++++++++++++++ .../src/components/agents/AgentRunMindMap.vue | 4 +++- web/hwlab-cloud-web/src/styles/agent-observer.css | 15 ++++++++++++--- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/web/hwlab-cloud-web/scripts/agent-observer-ui-contract.test.ts b/web/hwlab-cloud-web/scripts/agent-observer-ui-contract.test.ts index 3a8be845..360931cd 100644 --- a/web/hwlab-cloud-web/scripts/agent-observer-ui-contract.test.ts +++ b/web/hwlab-cloud-web/scripts/agent-observer-ui-contract.test.ts @@ -11,6 +11,7 @@ import { const viewSource = readSource("../src/views/agents/AgentRunsView.vue"); const inspectorSource = readSource("../src/components/agents/AgentRunInspector.vue"); const inspectorPanelSource = readSource("../src/components/console/InspectorPanel.vue"); +const mindMapSource = readSource("../src/components/agents/AgentRunMindMap.vue"); const virtualGridSource = readSource("../src/components/common/VirtualGrid.vue"); const styleSource = readSource("../src/styles/agent-observer.css"); @@ -88,6 +89,19 @@ test("AgentRun mind map always owns the flexible tree row", () => { assert.match(styleSource, /agent-observer-tree > \.agent-mind-map \{ grid-row: -2 \/ -1; \}/); }); +test("AgentRun mind map connects custom nodes through Vue Flow handles", () => { + assert.match(mindMapSource, /import \{ Handle, MarkerType, Position, VueFlow/); + assert.match(mindMapSource, //); + assert.match(mindMapSource, //); + assert.match(styleSource, /agent-mind-map-flow \.vue-flow__handle/); +}); + +test("AgentRun inspector keeps chrome fixed and scrolls only its body", () => { + assert.match(styleSource, /agent-observer-inspector \{[^}]*overflow: hidden;/); + assert.match(styleSource, /agent-observer-inspector > \.operations-inspector-panel \{[^}]*grid-template-rows: auto auto minmax\(0, 1fr\) auto;/); + assert.match(styleSource, /agent-observer-inspector \.operations-inspector-body \{[^}]*overflow: auto;/); +}); + function readSource(relativePath: string): string { return readFileSync(new URL(relativePath, import.meta.url), "utf8"); } diff --git a/web/hwlab-cloud-web/src/components/agents/AgentRunMindMap.vue b/web/hwlab-cloud-web/src/components/agents/AgentRunMindMap.vue index 3c0a20fd..ee801755 100644 --- a/web/hwlab-cloud-web/src/components/agents/AgentRunMindMap.vue +++ b/web/hwlab-cloud-web/src/components/agents/AgentRunMindMap.vue @@ -1,7 +1,7 @@