test(e2e): document PI UI pending mismatch and raise suite timeout
This commit is contained in:
@@ -36,12 +36,21 @@ remote_sync: not_requested
|
||||
- 保留用户:`e2e26_{author,reviewer,approver,member,guest}_muhu39da`;项目 `E2E全量-20260926-muhu39da`
|
||||
- 报告:`.doc/test-reports/2026-09-26-full-system-browser-e2e-test-report.md`
|
||||
|
||||
## PI pending 诊断(msg 243,只读;未重跑)
|
||||
|
||||
- **非「PI 太慢」**:`bd_intake_1790393552151447446` 约 4min 完成(`workspace.json` `completed_at=03:36:16`;manifest quality **100**;`server.log` `taskrun_status_transition … status=completed` @ 03:37:01)。
|
||||
- **现象**:error-context 上步骤(组建/专员/质量/简报)均「已完成」且质量 100,正文仍「任务执行中…」,`data-chat-status="pending"`(先 optimistic `ast-1790393552123`,后 `data-server-id=243`)直至 Playwright **900s** 墙钟。
|
||||
- **假设**:进度 SSE 已到,**终态 `done`/消息收口未映射到气泡 status**;`console-squad-wf.jsonl` 有 `fetchChatWindow` **404** / workflow docs **403**,历史刷新难纠偏。同秒另有 `chat_turn_complete_failed … assistant_message_id=0 context canceled`;03:38 `chat_turn_sweep_expired_processing marked_failed=1`(扫 `chat_turns`,非气泡 status 主因)。
|
||||
- **墙钟**:`waitForSquadCompletion` 已 1_200_000,但本轮仍被 config 默认 15m 杀掉 → spec 已加 `test.describe.configure({ timeout: 2_100_000 })`。即使 20m 墙也可能仍 FAIL(status 完成后再挂 ~10m+ 未翻)。
|
||||
- **重跑**:本会话 Shell `spawn /bin/bash ENOENT`,Docker E2E **未重跑**;账户会碰撞 → 恢复后须全量重跑(新 suffix),不得编造 PASS。
|
||||
|
||||
## 计划与进展
|
||||
|
||||
1. [x] Wipe / spec / Docker 脚本
|
||||
2. [x] 修角色与 promote 选择器并重跑
|
||||
3. [x] 落盘 FAIL 收口报告 + agentctl commit
|
||||
4. [ ] 排查 PI pending 挂起后全量重跑至绿
|
||||
4. [x] 排查 PI pending(诊断如上;全量重跑仍 blocked on Shell)
|
||||
5. [ ] Shell 恢复后全量 Docker 重跑至绿(新 suffix)
|
||||
|
||||
## 验证契约
|
||||
|
||||
|
||||
@@ -99,8 +99,9 @@ FS-DOC-REV-01…07, FS-NONAUTH-01/02, FS-ASSIST-01, FS-SQUAD-FREE-01, FS-UPLOAD-
|
||||
|
||||
### 5.4 严重缺陷
|
||||
|
||||
1. **P0 产品/运行态**:工作流编队任务「请编制用户初始需求收集表」在 UI 上挂起为 `data-chat-status="pending"` 超过 15 分钟未达终态(completed / failed / pending_author_confirmation 等)。阻断后续全部审签与 P1 用例。
|
||||
2. (已修复,本轮验证)create-modal 角色仅 `author|reviewer|approver|viewer`;成员经立项后「项目成员」弹窗晋升;收口按钮为「完成并关闭」,不得匹配私密库「保存」。
|
||||
1. **P0 产品缺陷(UI 终态不同步)**:工作流编队「请编制用户初始需求收集表」在服务端约 4 分钟已完成(workspace `completed_at`、taskrun `status=completed`,quality 100),但 UI 气泡长期保持 `data-chat-status="pending"` /「任务执行中…」(`data-server-id=243`)。Playwright 在 15m 墙超时记 FAIL。这不是「PI 未跑完」,而是 **终态未落到聊天气泡**(伴随 chat window 404 迹象)。阻断后续全部审签与 P1 用例。
|
||||
2. (测试基建)`playwright.config` 默认 per-test 15m 小于编队 wait 20m;已在 spec 加 `test.describe.configure({ timeout: 2_100_000 })`(待合入下一次重跑)。即使加长超时,若不修气泡状态映射仍会 FAIL。
|
||||
3. (已修复并本轮验证)create-modal 角色仅 `author|reviewer|approver|viewer`;成员经立项后弹窗晋升;收口为「完成并关闭」。
|
||||
|
||||
## 六、自动化测试套件汇总 (Test Suite Execution)
|
||||
|
||||
@@ -115,7 +116,8 @@ FS-DOC-REV-01…07, FS-NONAUTH-01/02, FS-ASSIST-01, FS-SQUAD-FREE-01, FS-UPLOAD-
|
||||
## 七、测试结论与后续优化建议 (Conclusion & Next Steps)
|
||||
|
||||
- **结论**:Docker headless 通道可用;立项/成员晋升/工作流激活/闲聊已通。全量验收 **未完成**,以 **FAIL** 收口。禁止将 5 PASS 写成全套 PASS。
|
||||
- **下一步**:排查 task `data-server-id=243` 为何长期 pending(调度器、PI runner、模型/配额、前端状态映射);修复后仅从 FS-SQUAD-WF-01 起或全量重跑。
|
||||
- **根因(已证据)**:服务端编队已 completed,UI `data-chat-status` 未翻转到终态;需修气泡/SSE/chat-window 终态同步后再重跑审签链。
|
||||
- **下一步**:修 UI 终态映射 → 全量 Docker 重跑(含 `describe.configure` 2.1m timeout)。
|
||||
- **保留账号**见下;项目 `E2E全量-20260926-muhu39da` 已创建。
|
||||
|
||||
## 保留账号(无密码)
|
||||
|
||||
@@ -502,6 +502,9 @@ async function ensureIntakeOpen(page: Page) {
|
||||
test.skip(!runAcceptance, 'set RUN_UI_ACCEPTANCE=1 against the real dev stack');
|
||||
|
||||
test.describe.serial('full-system browser multi-user E2E', () => {
|
||||
// Per-test wall must exceed waitForSquadCompletion (20m) + overhead; config default is 15m.
|
||||
test.describe.configure({ timeout: 2_100_000 });
|
||||
|
||||
test.beforeAll(() => {
|
||||
fs.writeFileSync(
|
||||
RUN_META_FILE,
|
||||
|
||||
Reference in New Issue
Block a user