Skip to content

codex/梁俊杰#33

Open
xiazuo3973 wants to merge 1 commit into
lights-think:masterfrom
xiazuo3973:codex/梁俊杰

Hidden character warning

The head ref may contain hidden characters: "codex/\u6881\u4fca\u6770"
Open

codex/梁俊杰#33
xiazuo3973 wants to merge 1 commit into
lights-think:masterfrom
xiazuo3973:codex/梁俊杰

Conversation

@xiazuo3973
Copy link
Copy Markdown

完成能力点

  • 补全 Agent 执行闭环:任务创建、运行触发、Planner、Executor、ToolRegistry、Worker、运行结果持久化。
  • 实现确定性 Planner:支持 SKU / 供应商实体提取、业务意图识别、工具选择、依赖补全和稳定排序。
  • 实现标准工具链:ERP 库存查询、BI 销售预测、知识库检索、供应商风险查询、OA 审批草稿创建。
  • 实现工具级权限矩阵:根据 Planner 生成的执行计划推导所需权限,对无权限 OA 写操作进行运行前拦截并写审计日志。
  • 实现 RAG 权限感知检索:返回 answer、citations、filtered_doc_ids,受限文档不进入 answer 和 citations。
  • 实现敏感信息脱敏:覆盖工具返回、run result、run events、audit logs 和 RAG 返回结果。
  • 实现 run_steps 和 run_events:支持步骤状态持久化、工具调用轨迹、重试次数、错误摘要和执行时间查询。
  • 完善 Dashboard 和审计日志:支持任务量、运行量、失败率、成本、平均耗时、工具调用统计、最近失败、队列健康和权限拒绝线索。
  • 补充测试覆盖:hidden fixture/SKU、复杂意图、OA 幂等、RAG 安全边界、run steps、权限拒绝、事件轨迹和脱敏。

核心设计思路和重要取舍

  • 采用确定性 Planner-Executor 架构,而不是通用 ReAct Agent,以保证企业审批、权限和审计场景下的稳定性、可复现性和可解释性。
  • 使用 ToolSpec 描述工具的输入、输出、权限和依赖关系,统一管理 ERP、BI、知识库、供应商风险和 OA 工具。
  • 对“只读分析 / 建议文本 / 明确创建 OA 草稿”做语义区分:只读分析和建议文本不触发 OA 写操作,只有明确创建、发起、提交或 OA 草稿类表达才调用 OA 工具。
  • 对无权限 OA 写操作采用运行前 403 拦截,并记录 permission.denied 审计证据。
  • RAG 中知识库正文被视为不可信数据,受限文档只报告 filtered_doc_ids,不返回正文或 citation;answer 和最终返回结果均经过脱敏。
  • run_steps 用于步骤状态和轻量恢复,run_events 用于标准工具调用轨迹;/events 不混入调试型生命周期事件。

本地验证命令和结果

  • py scripts/self_check.py:4 passed
  • py -m pytest -q:18 passed, 1 xfailed, 5 xpassed
  • py -m compileall -q agentops_assessment scripts tests:通过
  • git diff --check:通过,仅有 Windows LF/CRLF 行尾 warning

额外验证

  • FastAPI TestClient + 临时 SQLite 跑通 Swagger 等价 API 闭环。
  • hidden fixture/SKU 全链路通过。
  • RAG 权限过滤、citation、filtered_doc_ids 和事件脱敏通过。
  • Dashboard 字段、audit actions、OA 权限拒绝和草稿号不泄露均已验证。

已知未完成项或风险

  • Planner 是规则型确定性实现,不是通用自然语言理解系统;极绕的隐藏 prompt 可能仍需要补充关键词或规则。
  • run_steps 是 SQLite 级轻量恢复,不是跨进程分布式锁或外部任务队列。
  • OA 幂等基于确定性草稿 ID 和审计层去重,不是完整并发事务隔离。
  • 正式隐藏测试可能替换 fixture、知识库、用户权限和异常路径;当前已通过 hidden fixture、retry 和权限测试降低风险,但无法穷尽所有组合。
  • tests/test_acceptance_guidance.py 中仍保留 1 个 xfailed:该指导用例将“生成补货审批建议”解释为必须创建 OA 草稿;当前实现按更严格的权限安全语义区分“建议文本”和“明确创建草稿”。如果评审采用该指导用例的宽泛解释,此处可能存在失分风险。

API / 数据结构 / 测试兼容影响

  • API 路由保持 README 公开契约不变。
  • GET /api/runs/{run_id} 兼容增量增加 steps 字段,不删除或重命名原字段。
  • 新增 run_steps 表作为兼容增量表,不改变已有公开 API 形状。
  • /api/runs/{run_id}/events 仍只返回标准 tool.call 轨迹。
  • 新增测试覆盖 hidden SKU、复杂意图、RAG 安全、OA 幂等、run steps、Dashboard 和审计日志。

AI / 人工协作说明

  • 主要完成者:梁俊杰。
  • AI 辅助:OpenAI Codex / GPT 系列模型,用于代码实现建议、测试补强和复盘记录整理。
  • 辅助工具:PowerShell、rg、pytest、FastAPI TestClient。

COLLABORATION_LOG.md 摘要

  • 已记录关键需求理解、非目标、歧义处理、根因分析、兼容影响、验证命令和剩余风险。
  • 已逐条复核 AGENTS.md 历史备注,并说明哪些备注因与 README 当前契约冲突而未采纳。
  • 已说明唯一 xfailed 的原因是产品语义取舍,而不是主链路缺失。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant