Skip to content

TASK:Google fcop_minimal live e2e 验证 #4

@joinwell52-AI

Description

@joinwell52-AI

TASK:Google fcop_minimal live e2e 验证

背景

Issue #2 已完成 Google FCoP Adapter 补全,专项单测 48/48 PASS。验收报告中第 8 条说明:

无有效 REPORT 不让 TASK 静默停 active:Adapter 侧 PASS;真实 Google API + FCoP MCP live e2e 未跑。

因此需要单独补一个真实环境 e2e,不再混入 Issue #2


目标

在真实或 staging 环境中,用:

CODEFLOW_GOOGLE_TOOL_MODE=fcop_minimal

跑通 Google Agent 的最小 FCoP 闭环:

TASK
  → GoogleGenAiAdapter
  → fcop_minimal tools
  → write_report
  → submit_task
  → ReportSettlement
  → active/review 状态正确
  → audit 日志可查

验证范围

场景 A:正常完成

  1. 创建一个简单 TASK,recipient 指向 Google 执行 agent,例如 DEV/OPS。
  2. Google Agent 读取已注入 TASK 或使用最小工具。
  3. 调用 write_report(status=done)
  4. 调用 submit_task
  5. ReportSettlement 判定 ok。
  6. TASK 不静默停留 active。
  7. REPORT 引用当前 TASK。
  8. Audit log 中可看到工具调用链。

场景 B:无有效 REPORT 自动 blocked

  1. 构造 Google run 无有效 write_report,或让其只输出普通文本。
  2. ReportSettlement 自动写 blocked REPORT。
  3. blocked REPORT 包含:
status: blocked
blocker_type: google_fcop_contract_failure
agent_provider: google
auto_generated: true
admin_action_required: true
reason: no_valid_report
  1. TASK 不静默卡在 active。

场景 C:MODEL_NOT_FOUND

  1. 临时设置错误模型名。
  2. 触发 MODEL_NOT_FOUND
  3. 不重试 429/503 退避逻辑。
  4. 写 RuntimeAlert。
  5. 写 blocked REPORT 或 failed settlement 证据。

场景 D:PM 非 dispatch 场景不能派单

  1. 使用 pm_self_report_only 或 hot path 自包含任务。
  2. 确认工具列表中没有 write_task/create_task
  3. 普通文本“请 DEV 做”不被 Runtime 猜成派单。

必须收集证据

最终报告必须附:

1. 环境变量
2. 使用模型名
3. TASK 文件路径
4. REPORT 文件路径
5. lifecycle 前后状态
6. GoogleToolAudit 日志片段
7. RuntimeAlert 片段(如有)
8. npm test 或专项 e2e 命令输出

建议命令

根据实际项目启动方式执行,例如:

$env:CODEFLOW_GOOGLE_TOOL_MODE="fcop_minimal"
$env:GEMINI_MODEL="<有效模型名>"
npm start

或使用项目已有 e2e runner。

如果真实 GEMINI_API_KEY 不可用,必须说明:

live e2e 未能执行原因:无 API KEY / 网络 / quota / model 不可用
已完成替代验证:...

验收标准

  1. CODEFLOW_GOOGLE_TOOL_MODE=fcop_minimal 在真实 run 中生效。
  2. 正常任务能 write_report → submit_task
  3. ReportSettlement 被实际调用。
  4. 无有效 REPORT 时自动 blocked。
  5. MODEL_NOT_FOUND 不重试。
  6. PM 非 dispatch 场景不能派单。
  7. Audit log 能证明工具调用链。
  8. 最终报告有完整证据链。

禁止项


最终报告格式

# REPORT:Google fcop_minimal live e2e 验证

## 环境
- CODEFLOW_GOOGLE_TOOL_MODE=...
- GEMINI_MODEL=...
- API key 状态:可用/不可用

## 场景结果
### A 正常完成
PASS/FAIL
证据:...

### B no_valid_report blocked
PASS/FAIL
证据:...

### C MODEL_NOT_FOUND
PASS/FAIL
证据:...

### D PM 非 dispatch 不派单
PASS/FAIL
证据:...

## 总结
- ...

## 残留风险
- ...

优先级

P1。该任务是 Issue #2 的 live 验证补充,不阻塞 Issue #2 关闭。

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions