Files
zclaw_openfang/desktop/tests/e2e/test-results/results.json
iven 6f72442531 docs(guide): rewrite CLAUDE.md with ZCLAW-first perspective
Major changes:
- Shift from "OpenFang desktop client" to "independent AI Agent desktop app"
- Add decision principle: "Is this useful for ZCLAW? Does it affect ZCLAW?"
- Simplify project structure and tech stack sections
- Replace OpenClaw vs OpenFang comparison with unified backend approach
- Consolidate troubleshooting from scattered sections into organized FAQ
- Update Hands system documentation with 8 capabilities and status
- Stream
2026-03-20 19:30:09 +08:00

1121 lines
42 KiB
JSON

{
"config": {
"configFile": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\playwright.config.ts",
"rootDir": "G:/ZClaw_openfang/desktop/tests/e2e/specs",
"forbidOnly": false,
"fullyParallel": true,
"globalSetup": null,
"globalTeardown": null,
"globalTimeout": 0,
"grep": {},
"grepInvert": null,
"maxFailures": 0,
"metadata": {
"actualWorkers": 7
},
"preserveOutput": "always",
"projects": [
{
"outputDir": "G:/ZClaw_openfang/desktop/tests/e2e/test-results/artifacts",
"repeatEach": 1,
"retries": 0,
"metadata": {
"actualWorkers": 7
},
"id": "chromium",
"name": "chromium",
"testDir": "G:/ZClaw_openfang/desktop/tests/e2e/specs",
"testIgnore": [],
"testMatch": [
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
],
"timeout": 120000
},
{
"outputDir": "G:/ZClaw_openfang/desktop/tests/e2e/test-results/artifacts",
"repeatEach": 1,
"retries": 0,
"metadata": {
"actualWorkers": 7
},
"id": "data-flow",
"name": "data-flow",
"testDir": "G:/ZClaw_openfang/desktop/tests/e2e/specs",
"testIgnore": [],
"testMatch": [
"/data-flow\\.spec\\.ts/"
],
"timeout": 120000
},
{
"outputDir": "G:/ZClaw_openfang/desktop/tests/e2e/test-results/artifacts",
"repeatEach": 1,
"retries": 0,
"metadata": {
"actualWorkers": 7
},
"id": "store-state",
"name": "store-state",
"testDir": "G:/ZClaw_openfang/desktop/tests/e2e/specs",
"testIgnore": [],
"testMatch": [
"/store-state\\.spec\\.ts/"
],
"timeout": 120000
},
{
"outputDir": "G:/ZClaw_openfang/desktop/tests/e2e/test-results/artifacts",
"repeatEach": 1,
"retries": 0,
"metadata": {
"actualWorkers": 7
},
"id": "edge-cases",
"name": "edge-cases",
"testDir": "G:/ZClaw_openfang/desktop/tests/e2e/specs",
"testIgnore": [],
"testMatch": [
"/edge-cases\\.spec\\.ts/"
],
"timeout": 180000
}
],
"quiet": false,
"reporter": [
[
"html",
{
"outputFolder": "test-results/html-report"
}
],
[
"json",
{
"outputFile": "test-results/results.json"
}
],
[
"list",
null
]
],
"reportSlowTests": {
"max": 5,
"threshold": 300000
},
"runAgents": "none",
"shard": null,
"tags": [],
"updateSnapshots": "missing",
"updateSourceMethod": "patch",
"version": "1.58.2",
"workers": 8,
"webServer": {
"command": "pnpm dev",
"url": "http://localhost:1420",
"reuseExistingServer": true,
"timeout": 120000,
"stdout": "pipe",
"stderr": "pipe"
}
},
"suites": [
{
"title": "data-flow.spec.ts",
"file": "data-flow.spec.ts",
"column": 0,
"line": 0,
"specs": [],
"suites": [
{
"title": "聊天数据流验证",
"file": "data-flow.spec.ts",
"line": 32,
"column": 6,
"specs": [
{
"title": "CHAT-DF-01: 发送消息完整数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 0,
"parallelIndex": 0,
"status": "passed",
"duration": 5405,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:34.254Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-529df80525619b807bdd",
"file": "data-flow.spec.ts",
"line": 41,
"column": 3
},
{
"title": "CHAT-DF-02: 流式响应数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 0,
"parallelIndex": 0,
"status": "passed",
"duration": 3955,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:39.845Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-496be181af69c53d9536",
"file": "data-flow.spec.ts",
"line": 87,
"column": 3
},
{
"title": "CHAT-DF-03: 模型切换数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 0,
"parallelIndex": 0,
"status": "passed",
"duration": 4121,
"errors": [],
"stdout": [
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:35:47.964Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:43.824Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-dbc5e2812f9944422f07",
"file": "data-flow.spec.ts",
"line": 106,
"column": 3
},
{
"title": "CHAT-DF-04: 新建对话数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 1,
"parallelIndex": 1,
"status": "passed",
"duration": 7724,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:34.270Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-22028b2d3980d146b6b2",
"file": "data-flow.spec.ts",
"line": 145,
"column": 3
},
{
"title": "CHAT-DF-05: 网络错误处理数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 1,
"parallelIndex": 1,
"status": "passed",
"duration": 7001,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:42.208Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-542a5a6d289da07e78aa",
"file": "data-flow.spec.ts",
"line": 167,
"column": 3
}
]
},
{
"title": "分身管理数据流验证",
"file": "data-flow.spec.ts",
"line": 202,
"column": 6,
"specs": [
{
"title": "CLONE-DF-01: 分身列表加载数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 1,
"parallelIndex": 1,
"status": "passed",
"duration": 9912,
"errors": [],
"stdout": [
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:35:59.152Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:49.222Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-02d5a82ce9e1ba86ce41",
"file": "data-flow.spec.ts",
"line": 211,
"column": 3
},
{
"title": "CLONE-DF-02: 切换分身数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 2,
"parallelIndex": 2,
"status": "passed",
"duration": 6011,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:34.270Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-e91f2af762a1ae1df71a",
"file": "data-flow.spec.ts",
"line": 234,
"column": 3
},
{
"title": "CLONE-DF-03: 创建分身数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 2,
"parallelIndex": 2,
"status": "passed",
"duration": 4330,
"errors": [],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2026-03-20T09:35:40.489Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-2ec05be0c90bbb3f6f27",
"file": "data-flow.spec.ts",
"line": 262,
"column": 3
}
]
},
{
"title": "Hands 系统数据流验证",
"file": "data-flow.spec.ts",
"line": 298,
"column": 6,
"specs": [
{
"title": "HAND-DF-01: Hands 列表加载数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 2,
"parallelIndex": 2,
"status": "passed",
"duration": 92732,
"errors": [],
"stdout": [
{
"text": "Hand cards found: 0\n"
},
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:37:17.583Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
},
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:35:44.831Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-eb9a649ee7dea89596f0",
"file": "data-flow.spec.ts",
"line": 307,
"column": 3
},
{
"title": "HAND-DF-02: 触发 Hand 执行数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [
{
"type": "skip",
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts",
"line": 340,
"column": 12
}
}
],
"expectedStatus": "skipped",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 3,
"parallelIndex": 3,
"status": "skipped",
"duration": 49673,
"errors": [],
"stdout": [],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:35:34.289Z",
"annotations": [
{
"type": "skip",
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts",
"line": 340,
"column": 12
}
}
],
"attachments": []
}
],
"status": "skipped"
}
],
"id": "bdcac940a81c3235ce13-008a28dfecdca8116b5e",
"file": "data-flow.spec.ts",
"line": 332,
"column": 3
},
{
"title": "HAND-DF-03: Hand 参数表单数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 3,
"parallelIndex": 3,
"status": "passed",
"duration": 48175,
"errors": [],
"stdout": [],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:36:24.185Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-b66d34fc9491564fc927",
"file": "data-flow.spec.ts",
"line": 368,
"column": 3
}
]
},
{
"title": "工作流数据流验证",
"file": "data-flow.spec.ts",
"line": 399,
"column": 6,
"specs": [
{
"title": "WF-DF-01: 工作流列表数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 3,
"parallelIndex": 3,
"status": "passed",
"duration": 46977,
"errors": [],
"stdout": [
{
"text": "Workflows in Store: 0, in UI: 0\n"
},
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:37:59.376Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:37:12.379Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-6df14a43ab8759e33bd6",
"file": "data-flow.spec.ts",
"line": 408,
"column": 3
},
{
"title": "WF-DF-02: 创建工作流数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 4,
"parallelIndex": 4,
"status": "passed",
"duration": 49317,
"errors": [],
"stdout": [],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:35:34.320Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-59f8391df50172ae70fa",
"file": "data-flow.spec.ts",
"line": 424,
"column": 3
}
]
},
{
"title": "技能市场数据流验证",
"file": "data-flow.spec.ts",
"line": 455,
"column": 6,
"specs": [
{
"title": "SKILL-DF-01: 技能列表数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 4,
"parallelIndex": 4,
"status": "passed",
"duration": 92425,
"errors": [],
"stdout": [
{
"text": "Skill API requests: 2\n"
},
{
"text": "Skills in UI: 0\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
},
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:36:23.861Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-e69ec1b43be92916482e",
"file": "data-flow.spec.ts",
"line": 464,
"column": 3
},
{
"title": "SKILL-DF-02: 搜索技能数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 4,
"parallelIndex": 4,
"status": "passed",
"duration": 46705,
"errors": [],
"stdout": [
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:38:43.017Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:37:56.298Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-a0cd80e0a96d2f898e69",
"file": "data-flow.spec.ts",
"line": 484,
"column": 3
}
]
},
{
"title": "团队协作数据流验证",
"file": "data-flow.spec.ts",
"line": 507,
"column": 6,
"specs": [
{
"title": "TEAM-DF-01: 团队列表数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 5,
"parallelIndex": 5,
"status": "passed",
"duration": 49068,
"errors": [],
"stdout": [
{
"text": "Teams in Store: 0, in UI: 0\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:35:34.306Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-d013afd3a6f16ec55da2",
"file": "data-flow.spec.ts",
"line": 516,
"column": 3
},
{
"title": "TEAM-DF-02: 创建团队数据流",
"ok": true,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 5,
"parallelIndex": 5,
"status": "passed",
"duration": 47539,
"errors": [],
"stdout": [],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:36:23.612Z",
"annotations": [],
"attachments": []
}
],
"status": "expected"
}
],
"id": "bdcac940a81c3235ce13-2b9c3212b5e2bc418924",
"file": "data-flow.spec.ts",
"line": 531,
"column": 3
}
]
},
{
"title": "设置数据流验证",
"file": "data-flow.spec.ts",
"line": 554,
"column": 6,
"specs": [
{
"title": "SET-DF-01: 打开设置数据流",
"ok": false,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 5,
"parallelIndex": 5,
"status": "failed",
"duration": 56400,
"error": {
"message": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n",
"stack": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n\n at Object.openSettings (G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts:717:31)\n at G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts:563:23",
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
},
"snippet": "\u001b[90m at \u001b[39m..\\utils\\user-actions.ts:717\n\n\u001b[0m \u001b[90m 715 |\u001b[39m )\u001b[33m;\u001b[39m\n \u001b[90m 716 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 717 |\u001b[39m \u001b[36mawait\u001b[39m settingsBtn\u001b[33m.\u001b[39mfirst()\u001b[33m.\u001b[39mclick()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 718 |\u001b[39m \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForTimeout(\u001b[35m500\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 719 |\u001b[39m }\u001b[33m,\u001b[39m\n \u001b[90m 720 |\u001b[39m\u001b[0m"
},
"errors": [
{
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
},
"message": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n\n\n at ..\\utils\\user-actions.ts:717\n\n 715 | );\n 716 |\n> 717 | await settingsBtn.first().click();\n | ^\n 718 | await page.waitForTimeout(500);\n 719 | },\n 720 |\n at Object.openSettings (G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts:717:31)\n at G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts:563:23"
}
],
"stdout": [
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:38:07.589Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:37:11.168Z",
"annotations": [],
"attachments": [
{
"name": "screenshot",
"contentType": "image/png",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-01-打开设置数据流-chromium\\test-failed-1.png"
},
{
"name": "video",
"contentType": "video/webm",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-01-打开设置数据流-chromium\\video.webm"
},
{
"name": "error-context",
"contentType": "text/markdown",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-01-打开设置数据流-chromium\\error-context.md"
}
],
"errorLocation": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
}
}
],
"status": "unexpected"
}
],
"id": "bdcac940a81c3235ce13-8b134df5feeb02852417",
"file": "data-flow.spec.ts",
"line": 561,
"column": 3
},
{
"title": "SET-DF-02: 模型配置数据流",
"ok": false,
"tags": [],
"tests": [
{
"timeout": 120000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 6,
"parallelIndex": 6,
"status": "failed",
"duration": 58675,
"error": {
"message": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n",
"stack": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n\n at Object.openSettings (G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts:717:31)\n at G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts:577:23",
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
},
"snippet": "\u001b[90m at \u001b[39m..\\utils\\user-actions.ts:717\n\n\u001b[0m \u001b[90m 715 |\u001b[39m )\u001b[33m;\u001b[39m\n \u001b[90m 716 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 717 |\u001b[39m \u001b[36mawait\u001b[39m settingsBtn\u001b[33m.\u001b[39mfirst()\u001b[33m.\u001b[39mclick()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 718 |\u001b[39m \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForTimeout(\u001b[35m500\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 719 |\u001b[39m }\u001b[33m,\u001b[39m\n \u001b[90m 720 |\u001b[39m\u001b[0m"
},
"errors": [
{
"location": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
},
"message": "TimeoutError: locator.click: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('aside button').filter({ hasText: /设置|settings|⚙/i }).or(locator('.p-3.border-t button')).first()\u001b[22m\n\n\n at ..\\utils\\user-actions.ts:717\n\n 715 | );\n 716 |\n> 717 | await settingsBtn.first().click();\n | ^\n 718 | await page.waitForTimeout(500);\n 719 | },\n 720 |\n at Object.openSettings (G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts:717:31)\n at G:\\ZClaw_openfang\\desktop\\tests\\e2e\\specs\\data-flow.spec.ts:577:23"
}
],
"stdout": [
{
"text": "\n========================================\n"
},
{
"text": "ZCLAW 数据流验证测试完成\n"
},
{
"text": "========================================\n"
},
{
"text": "测试时间: 2026-03-20T09:36:33.246Z\n"
},
{
"text": "========================================\n\n"
}
],
"stderr": [
{
"text": "Sidebar not found\n"
}
],
"retry": 0,
"startTime": "2026-03-20T09:35:34.342Z",
"annotations": [],
"attachments": [
{
"name": "screenshot",
"contentType": "image/png",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-02-模型配置数据流-chromium\\test-failed-1.png"
},
{
"name": "video",
"contentType": "video/webm",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-02-模型配置数据流-chromium\\video.webm"
},
{
"name": "error-context",
"contentType": "text/markdown",
"path": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\test-results\\artifacts\\data-flow-设置数据流验证-SET-DF-02-模型配置数据流-chromium\\error-context.md"
}
],
"errorLocation": {
"file": "G:\\ZClaw_openfang\\desktop\\tests\\e2e\\utils\\user-actions.ts",
"column": 31,
"line": 717
}
}
],
"status": "unexpected"
}
],
"id": "bdcac940a81c3235ce13-6df5d90e5b85ad4debff",
"file": "data-flow.spec.ts",
"line": 575,
"column": 3
}
]
}
]
}
],
"errors": [],
"stats": {
"startTime": "2026-03-20T09:35:32.580Z",
"duration": 190515.528,
"expected": 16,
"skipped": 1,
"unexpected": 2,
"flaky": 0
}
}