Files
Agent-System/.doc/test-reports/2026-09-19-rdev-p3-real-pi-test-report.md
T
weichenandCursor 3ae13bfae2 docs(test): record the U7 restart matrix and the gate follow-up
Postgres and app reach ready in about a second. Vite cold cache is not the old ten-second stall, and the login form was not measured.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 15:39:49 +00:00

6.0 KiB
Raw Blame History

研发工作流 P3 三样本真 PI 测试报告

一、 测试背景 (Background)

设计计划 P3 要求在真实产品 PI Agent 与 MiniMax 上抽三份样本:rd_proposal(document)、rd_planning_review(review_minutes),以及 rd_sw_plan 在激活规划期关闭(N/A)。此前只有 rd_planning_review 与 rd_design_vv 的抽样,没有这组三样本。

二、 测试目标 (Test Objectives)

  • 主流程用 stub 跑完并批准后,才能激活 rdev。
  • rd_proposal、rd_planning_review 必须走 backend=pi-agent,不能用 stub 充当验收。
  • rd_sw_plan 在规划里保持关闭。
  • 记录真实状态、字数、是否仍含模板占位句,以及评审质量门禁结果。

三、 测试方案与环境 (Test Plan & Environment)

  • OS:linux。分支:fix/audit-remainder-closeout。
  • 入口:dev http://127.0.0.1:8080,容器 shuimu-agent-app-dev、shuimu-pi-agent-dev(MiniMax-M2.7-highspeed)。
  • 项目 6533。主流程只启用 bd_intake(旧键 intake 已不再出现在默认规划里),stub 生成后跨用户审批准,阶段推进到 completed,再保存并激活 rdev。
  • rdev 只启用 rd_proposal 与 rd_planning_review。脚本:.doc/test-reports/assets/2026-09-19-rdev-p3-real-pi/run_p3_real_pi.py。
  • 未改 nightly「PI 三工作流」门禁,也未把 rdev 加进 .github/workflows/nightly-real-pi.yml。PR CI 仍不跑真 PI。

四、 预期结果 (Expected Results)

  • 激活回执里 rd_sw_plan.enabled=false,两个抽样任务为 true。
  • rd_proposal 终态为 completed 或 pending_author_confirmation,正文不含「按本阶段专业结构写」。
  • rd_planning_review 同样由真 PI 写出,并含「评审范围与对象 / 问题与决议 / 评审结论」。质量门禁要求「问题与决议」表的每一数据行都有问题、决议、责任人、期限。
  • 建议书批准后才能离开 RD01_planning。未批准时下一阶段任务应被拒绝。

五、 实际测试结果与判定 (Actual Results & Evaluation)

5.1 rd_sw_plan 规划期关闭

  • 测试输入:rdev 规划只保留 rd_proposal、rd_planning_review。
  • 实际输出:[13:57:41] plan flags proposal=True review=True sw_plan=False,随后 activate rdev http=200。
  • 评价判定:PASS。不适用语义是规划期关闭,不是再生成一份不适用页。
  • 性能与耗时:激活本身小于 1 秒。

5.2 rd_proposal(document)

  • 测试输入:项目 6533,backend=pi-agent,材料为无创神经电刺激器立项简报。
  • 实际输出:[14:04:51] done rd_proposal status=completed elapsed=430s,proposal chars=11550 placeholder=False。终稿 rd_proposal-final.md。章节是模型自拟的「产品定义与范围 / 风险清单」等,不是模板里的「项目背景与立项依据」「产品定义与范围」「主要风险与对策概览」。
  • 评价判定:生成 PASS(真 PI、已完成、无占位句)。模板标题对齐 FAIL,不把这份终稿写成模板符合。
  • 性能与耗时:430 秒。

5.3 未批准时不能进入评审阶段

  • 测试输入:建议书仍是 drafting 时推进 RD01_planning。
  • 实际输出:advance RD01_planning http=409,正文为 STAGE_GATE_NOT_READY。接着启动 rd_planning_review 得到 403 DOC_TASK_NOT_IN_ACTIVE_STAGE。
  • 评价判定:PASS(负例符合阶段门禁)。随后对 doc_proj6533_rd_proposal 认领、送审、审核、批准均为 http 200,再推进 RD01_planning 为 200。
  • 性能与耗时:审批链约 5 秒。

5.4 rd_planning_review(review_minutes)

  • 测试输入:阶段已到 RD02_planning_review 后,backend=pi-agent。
  • 实际输出:约 580 秒后运行状态变为 quality_failed。终稿 13225 字,含「## 评审范围与对象」「## 问题与决议」「## 评审结论」,不含占位句。工作区 manifest.json 的质量报告:passed=false,score=20,四次「问题行缺少问题、决议、责任人或期限」。主表六列是齐的;同级标题下还有一张「法规/标准」表,那些行没有责任人与期限,被算进问题行。修复轮 repair_1、repair_2 之后仍是这个结果。终稿 rd_planning_review-final.md。
  • 评价判定:真 PI 抽样已发生,质量门禁 FAIL。不能写成评审样本通过。
  • 性能与耗时:从 14:11:29 启动到轮询见到 quality_failed 为 580 秒。

六、 自动化测试套件汇总 (Test Suite Execution)

本报告的验收数据来自上述真 PI 控制台,不是 go test 的 stub。相关结构测试:

cd web && npx tsx --test src/components/layout/WorkbenchView.test.ts src/components/chat/ChatColumn.test.ts src/components/doc/DocumentPane.test.ts
# 3 pass

未把 go test -short ./... 的既有 TestArchitectureBoundaries 失败算进这次 P3 判定。nightly 真 PI 工作流没有修改。

七、 测试结论与后续优化建议 (Conclusion & Next Steps)

  • 三样本都在 dev 真 PI 上跑过:软件计划 N/A 关闭 PASS;建议书生成完成但未对齐模板标题;评审记录写出了规定章节,质量门禁 20 分,FAIL。
  • 因此 P3 还不能标成干净通过,也不能据此晋升 test/main。
  • 轮询原先不把 quality_failed 当终态,会空转到超时。脚本已把 quality_failed 与 finalizing_failed 视为结束。
  • 红线未动:不写真实软件仓、不合入 FAV、不物理删除 D7。

八、 后续(不改写上面的当次判定)

2026-09-19 同一分支补了门禁:markdownTable 在第一张表结束后停止,不再把「问题与决议」后面的法规对照表算成缺责任人的问题行。TestRDevQualityGates 用保存的终稿复读,不再出现「问题行缺少」。这不是新的真 PI,建议书标题对齐仍然失败。