docs: 阶段C 文档同步(345 绿, tag risk-m3, 独立评审 PASS P0=0)
- docs/memory/TODO.md: 勾选风控阶段 C 完结(C0~C3) - docs/memory/MEMORY.md: §0/§1/仓库地图更新至阶段 C 收尾 + 下一步 T-21/T-03/前端 - .gitignore: 正式忽略交接文档.md 与 .workbuddy/(过程文件不提交约定)
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|
||||
**项目是什么:** 金融四 Agent(客户财富 / 代理人 / 数据分析 / 风控)共用数据层与合规底座;**不**互调 LLM,跨 Agent 走 L1/L2/L3 画像与预警表。
|
||||
|
||||
**当前进度:** 需求与表设计已定 · **风控模块 B1~B9b 全部完成(M2 tag risk-m2),M4 复核已闭环(2026-09-07),风控阶段 B 正式完结** · **Wave 0 已完成(2026-09-07,经独立 AI 评审闭环)**:T-01 JWT 鉴权(auth_service Auth SDK + deps 工厂替换 + X-Agent-Type 准入矩阵)/ T-02 审计中间件(http_access + 独立 request_id + 4xx/500 统一错误体 + input_guard_log 双写)/ T-06 chat 最小闭环(POST /api/chat + 会话落库 + Redis 窗口)/ T-07 LangGraph StateGraph 骨架 + DeepSeek(无 key 降级)· **T-04 Core RO Tool 节点已完成(2026-09-07)**:app/tool/core_tools.py 三只读 Tool + tool_service(意图/归属校验/run_tool)+ 图 tool 节点 + agent_tool_call 落库 + `utils/authz.py` 公共鉴权留痕,**321 测试绿(首评+复审双闭环)**。**下一步:T-21 Milvus / T-03 输入防护 / 风控阶段 C(C0~C3,A-6 对话验收,C1 复用 run_tool)**。**开发在分支 `feature/risk`(未合入 main)。**
|
||||
**当前进度:** 需求与表设计已定 · **风控模块 B1~B9b 全部完成(M2 tag risk-m2),M4 复核已闭环(2026-09-07),风控阶段 B 正式完结** · **Wave 0 已完成(2026-09-07,经独立 AI 评审闭环)**:T-01 JWT 鉴权(auth_service Auth SDK + deps 工厂替换 + X-Agent-Type 准入矩阵)/ T-02 审计中间件(http_access + 独立 request_id + 4xx/500 统一错误体 + input_guard_log 双写)/ T-06 chat 最小闭环(POST /api/chat + 会话落库 + Redis 窗口)/ T-07 LangGraph StateGraph 骨架 + DeepSeek(无 key 降级)· **T-04 Core RO Tool 节点已完成(2026-09-07)**:app/tool/core_tools.py 三只读 Tool + tool_service(意图/归属校验/run_tool)+ 图 tool 节点 + agent_tool_call 落库 + `utils/authz.py` 公共鉴权留痕,**321 测试绿(首评+复审双闭环)**。**下一步:T-21 Milvus / T-03 输入防护 / 前端 React 多 Agent 入口(HashRouter `web/` init)。风控阶段 C 已完成(2026-09-07,345 绿,tag `risk-m3`,A-6 对话线验收通过,独立 AI 评审 PASS P0=0)。****开发在分支 `feature/risk`(未合入 main)。**
|
||||
|
||||
**仓库地图:**
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
| `app/api/knowledge.py` `admin.py` | 空壳 | 待 T-21(Milvus/RAG)与审计查询台 |
|
||||
| `app/service/auth_service.py` | **已实现(T-01)** | Auth SDK:JWT 验签(HS256 dev/RS256 生产)、必填 claims、jti 吊销(Redis fail-open);签发 CLI `scripts/dev/issue_dev_token.py` |
|
||||
| `app/service/risk/*` + `service/suitability.py` | **已实现** | RISK-001~005 规则 / 预警聚合 / L3 写入 / AML / 引擎编排 / SUIT-001~008 / locks+redis_gateway 公共原语(B7) |
|
||||
| `app/service/agent_service.py` `memory_service.py` | **已实现(T-07/T-06/T-04)** | LangGraph StateGraph(tool→llm→guard)+ DeepSeek(无 key 降级);T-04 tool 节点(关键词意图 customer/advisor + tool_service.run_tool);Redis 会话窗口 + MySQL 回源 |
|
||||
| `app/service/tool_service.py` `app/tool/core_tools.py` | **已实现(T-04)** | 对话 Tool 编排(白名单/归属校验/agent_tool_call 落库)+ Core RO 三只读 Tool(L0/持仓/流水);风控四 Tool 归 C1 复用 run_tool |
|
||||
| `app/service/agent_service.py` `memory_service.py` | **已实现(T-07/T-06/T-04/C2)** | LangGraph StateGraph(tool→llm→guard)+ DeepSeek(无 key 降级);T-04 tool 节点(关键词意图 customer/advisor/risk 分组 + tool_service.run_tool);C2 tool_node 守卫放宽(requires_customer=False 允许无绑定客户,支撑 A-6 全量待审);Redis 会话窗口 + MySQL 回源 |
|
||||
| `app/service/tool_service.py` `app/tool/core_tools.py` `service/risk/chat_tools.py` | **已实现(T-04/C1)** | 对话 Tool 编排(统一注册表 get_registered_tool:core+risk / 归属校验 / agent_tool_call 落库)+ Core RO 三只读 Tool(L0/持仓/流水)+ C1 风控四只读 Tool(alert_query/customer_context/suitability_check/aml_lookup,RISK_TOOL_REGISTRY) |
|
||||
| `app/repository/session_repository.py` | **已实现(T-06/T-04)** | agent_session / agent_message / agent_tool_call 读写 |
|
||||
| `app/gateway/` | **已实现** | 模拟交易网关(仅 gateway_repository 可 INSERT core_trade,B5) |
|
||||
| `app/repository/core_ro.py` | **已实现** | Core 只读 SELECT(含风控扩展 sum_trades_on_date / list_trades_range / list_active_customers) |
|
||||
@@ -65,7 +65,7 @@
|
||||
## 1. 项目简介
|
||||
|
||||
- **名称:** JinRong 金融四 Agent 智能管家
|
||||
- **当前阶段:** **T-04 Core RO Tool 节点完成并经两轮评审闭环(2026-09-07:tool 节点+归属校验+agent_tool_call 落库+公共鉴权双写 `utils/authz.py`+入参白名单,321 绿)**;Wave 0 共用底座完成(T-01 JWT / T-02 审计中间件 / T-06 / T-07 LangGraph);风控模块 B1~B9b 完成(M2 tag risk-m2)+ M4 复核闭环,阶段 B 完结;下一批 = T-21/T-03 + 风控阶段 C(A-6 对话线验收)
|
||||
- **当前阶段:** **T-04 Core RO Tool 节点完成并经两轮评审闭环(2026-09-07)**;Wave 0 共用底座完成(T-01 JWT / T-02 审计中间件 / T-06 / T-07 LangGraph);风控模块 B1~B9b 完成(M2 tag risk-m2)+ M4 复核闭环;**风控阶段 C 完成(2026-09-07:chat_tools 四只读 Tool + risk 分支意图接入 + A-6 对话线验收 + 诱导处置边界,M3 tag risk-m3,345 绿,独立 AI 评审 PASS)**;下一批 = T-21 Milvus / T-03 输入防护 / 前端 React 入口
|
||||
- **当前优先级:** T-21 / T-03 → 风控阶段 C(A-6)→ Wave 1
|
||||
|
||||
------
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@
|
||||
- [x] T-04 Core RO 封装为 Tool 节点;A-01 归属校验(chat Tool 接入 + agent_tool_call 落库)—— **完成(2026-09-07)**:`app/tool/core_tools.py`(L0/持仓/流水三只读 Tool + TOOL_REGISTRY 白名单)+ `app/service/tool_service.py`(关键词意图仅 customer/advisor;归属校验对齐 deps.assert_customer_access 口径——Tool 层拒绝不抛 403 而 blocked 留痕,纵深防御;run_tool 执行+落库,落库失败降级)+ agent_service 图 tool 节点(START→tool→llm→guard;结果注入 LLM 上下文,降级回复带摘要)+ session_repository.insert_tool_call(message_id 一期 NULL)。**A-01 口径:本任务只做 Tool 层归属校验语义(customer 本人/advisor assigned/risk_officer 全量/其余拒),A-01 完整场景(代理人画像)仍归 T-20**;risk 分支四 Tool 归 C1 复用 run_tool。**评审闭环(2026-09-07):首评 P1×2+P2×3+P3×2 → 修复 `40a9ee2` → 复审 P2×1+P3×4 → 修复 `1216d26`,pytest 321 绿;入参白名单+days 钳制、公共鉴权双写 `utils/authz.py`、list_holdings LIMIT 均落地**
|
||||
- [ ] T-21 Milvus Lite + kb_product_rules 首批入库
|
||||
- [ ] T-03 输入防护规则(F-03:prompt_injection/oversize/限流;input_guard_log 双写通道已由 T-02 接通)
|
||||
- [ ] 风控阶段 C(C0 pytest-asyncio / C1 chat_tools / C2 risk 分支 StateGraph / C3 A-6 验收——依赖 T-07 已就绪;C1 复用 T-04 run_tool 基建)
|
||||
- [x] 风控阶段 C(C0 pytest-asyncio / C1 chat_tools / C2 risk 分支 StateGraph / C3 A-6 验收)—— **完成(2026-09-07)**:`app/service/risk/chat_tools.py` 四只读 Tool(alert_query/customer_context/suitability_check/aml_lookup)挂 `RISK_TOOL_REGISTRY`;`tool_service.run_tool` 改查 core+risk 统一注册表 `get_registered_tool` 且恒传 `risk_repo`;`_normalize_params` 读 spec 白名单;`match_intent` 按 agent 分组扩 risk 关键词;`agent_service.tool_node` 守卫放宽(`requires_customer=False` 允许无绑定客户,支撑 A-6 全量待审);A-6 验收+诱导处置边界(无处置 Tool、系统提示禁自动处置、诱导只触发只读且预警状态不变);**独立 AI 评审 PASS(P0=0,P2 补 advisor 归属/空 product_id 单测已收口),345 绿,tag `risk-m3`**
|
||||
- [ ] 前端 React 多 Agent 入口(HashRouter,`web/` init)
|
||||
|
||||
### 风控模块(PRD v1.0 已冻结 · `docs/PRD/PRD-风控监测Agent.md`,事件驱动线不依赖 T-07 可先行)
|
||||
|
||||
Reference in New Issue
Block a user