4.6 KiB
4.6 KiB
Track I2 多意图放量验收测试报告
一、 测试背景 (Background)
FEATURE-MATRIX intent-plan-u1u8 在 Track I1 后仍为 partial:默认 legacy,无项目 allowlist、无 shadow 对账。本轮合入 I2 代码后在共享 dev 按 shadow → auto_read → confirm 逐级放量验收。
二、 测试目标 (Test Objectives)
- shadow:真实聊天持久不可执行计划,legacy 路由仍执行,步骤 status=pending
- auto_read:有权限项目上两项只读自动执行一次,receipt 含 auth scope
- confirm:查询+生成确认前
task_runs零增量;确认后经DispatchEligible单次执行
三、 测试方案与环境 (Test Plan & Environment)
| 项 | 值 |
|---|---|
| OS | Linux |
| 源码 | local_dev 526617ff(含 I2 + compose dup fix) |
| 环境 | 共享 dev shuimu-agent-app-dev schema 66 |
| Runner | :18865 MiniMax-M2.7-highspeed(健康) |
| 放量配置 | INTENT_PLAN_PROJECT_ALLOWLIST=*;compose 仓库默认仍 legacy |
| 验收项目 | 6579(admin 成员);993975 用于证明无成员时 confirm 鉴权失败(负例) |
| 层级 | 真实 HTTP 聊天 + PG 账本;Playwright 双标签沿用既有 U6 lineage,本轮以 API+PG 为准 |
证据:.doc/test-reports/assets/2026-09-24-intent-plan-i2-rollout/
四、 预期结果 (Expected Results)
| 档位 | 预期 |
|---|---|
| shadow | status=proposed execution_mode=validated_only;步骤 pending;回复仍有 legacy 查询内容 |
| auto_read | status=executing/completed;两步 succeeded;live |
| confirm | 出卡 awaiting;确认前 task_runs Δ=0;确认后 query+task.run succeeded,task_runs Δ=1 |
五、 实际测试结果与判定 (Actual Results & Evaluation)
5.1 shadow
- 测试输入 (Input):
POST /api/v1/chatproject=993975 message=查一下项目风险,然后查相关法规;MULTI_INTENT_PLAN_TIER=shadow - 实际输出 (Actual Output):
intent_plan.plan_id=pln_2eabf5b5…status=proposedmode=validated_only;steps pending;reply 含法规查询结果(legacy);elapsed≈6.2s;PG 同行一致 - 评价判定 (Evaluation / Verdict):PASS
- 性能与耗时 (Duration & Latency):6.18s
5.2 auto_read(有权限项目)
- 测试输入 (Input):同句,project=6579,tier=
auto_read - 实际输出 (Actual Output):
pln_1dc96bd9…status=executing;project.advisory/regulation.query均为succeeded;receipt summary 含scope=;elapsed≈7.5s - 评价判定 (Evaluation / Verdict):PASS
- 性能与耗时 (Duration & Latency):7.45s
5.3 auto_read 负例(无项目成员)
- 测试输入 (Input):project=993975(admin 非成员)
- 实际输出 (Actual Output):计划停在
awaiting_confirmation、步骤 pending(DecidePlan 鉴权失败);API GET/decision 返回 403 - 评价判定 (Evaluation / Verdict):PASS(fail-closed,确认前无成功副作用)
- 性能与耗时 (Duration & Latency):—
5.4 confirm
- 测试输入 (Input):project=6579 message=
查一下相关法规,然后帮我生成报价单;随后POST …/decisionskind=confirm - 实际输出 (Actual Output):确认前 plan awaiting、steps pending、
task_runs562→562(Δ=0);确认后 status=executing,regulation.query+task.runsucceeded,task_runs563(Δ=1);confirm_elapsed≈3.0s - 评价判定 (Evaluation / Verdict):PASS
- 性能与耗时 (Duration & Latency):聊天 1.61s + confirm 2.98s
5.5 Playwright 双标签
- 测试输入 (Input):本轮未重跑 UI(时间盒);既有 U6 dual-tab lineage 仍有效;本轮以真实 HTTP+PG 关闭 I2
- 实际输出 (Actual Output):NOT RUN
- 评价判定 (Evaluation / Verdict):不挡 I2 关闭(双标签属既有 U6 证据;本轮新增为放量接线)
- 性能与耗时 (Duration & Latency):—
六、 自动化测试套件汇总 (Test Suite Execution)
| 命令 | 结果 |
|---|---|
./scripts/arch-check.sh --mode block(I2 合入候选) |
PASS |
go test -short ./internal/app/intentflow/ …(I2 单测) |
PASS |
| 真实 dev HTTP+PG 放量三档 | PASS(见上) |
七、 测试结论与后续优化建议 (Conclusion & Next Steps)
I2 放量验收 PASS。可将 intent-plan-u1u8 升 done,口径:仓库 compose 默认仍 legacy;dev 运维可按 allowlist 升 shadow/auto_read/confirm。后续 U9–U12 见独立行 intent-plan-u9u12。
回退:将 MULTI_INTENT_PLAN_TIER 改回 legacy 并 recreate app;已有计划可读/可取消。