# 2026-09-09 工作汇报 > **DDL:2026-09-10(周四)晚** · 分支 `merger` · 测试基线参考:**730 passed**(客服 Wave 解禁后) --- ## 一、今日已完成 ### 统筹 & 文档 - [x] 梳理风控 Agent **已就绪但未接** 的 HTTP / Tool / 运维能力 → `docs/memory/TODO.md` - [x] 补充 **演示种子 / 测试数据** 清单(AML、测评刷新、SOP 重灌、A-1~A-5 造预警等) - [x] 接口契约发群稿 → `docs/项目管理/接口契约发群-2026-09-09.md` - [x] 四角色 Dashboard 需求 v2 定稿 → `docs/superpowers/specs/2026-09-09-frontend-wealth-dashboard-design.md` ### 前端 `web/` - [x] 四角色 Dashboard(客户 / 理财师 / 分析 / 风控) - [x] 主链路真接:平台读 API、ChatPanel、风控台账页、问数页、模拟交易页等 - [x] 修复:产品名乱码(UTF-8 种子)、首屏白屏(图表延迟渲染 + ErrorBoundary) ### 后端 & 接线 - [x] **客服 Agent S2 接缝**:游客入口、customer 专用 LangGraph 并行分流、Wave 1~5 测试解禁、fin_* 知识库 RAG - [x] **数据分析 Agent S3 接缝**:问数 API、前端问数页、冒烟通过 - [x] **L3 画像 Redis 热读补齐**:`get_profile_l3` cache-aside(读 miss 回填 · 写后 DEL) - [x] **`query_agent_behavior`** 写入 `RISK_TOOL_REGISTRY` --- ## 二、今日提出的问题 & 结论 ### 1. 风控端:产品「转换」(convert)时的风险 **现状(P0):** - `POST /api/simulate/trade` 若 `trade_type=convert` → **400 拒绝** - 文案:「转换交易暂不支持,请分别发起申购/赎回」 - 规则引擎 **不处理 convert**(只认 subscribe / redeem) **原因:** 转换 = 赎回 + 申购(或更复杂),涉及双产品适当性、持仓变化、频繁/大额规则;P0 无拆单规则,强行接入易漏检。 **后续解法(v0.2 / 接真实 TA):** | 步骤 | 做法 | | --- | --- | | 1 | 网关把 convert **拆成** redeem(A) + subscribe(B) | | 2 | 每笔各自走适当性 + 规则引擎 | | 3 | 单独定义转换类规则(短时赎回再申购、跨风险等级转换等) | | 4 | 审计带 `parent_convert_id` 便于追溯 | **今日结论:** 口径已厘清;**代码仍维持 P0 拒 convert**。 --- ### 2. 客服 Agent:提示词注入 & 长期稳定「性格」 **提示词注入:** | 层 | 机制 | | --- | --- | | 平台入口 | `input_guard.py`:注入词表 + 超长 + 限流;命中 **直接拒**,写 `input_guard_log` | | 客服线 | `compliance_guard.py`:话术合规二次把关 | | 原则 | 命中即拒、不清洗;敏感操作不走对话自动执行 | **长期稳定性格(不靠每轮重写 system prompt):** | 手段 | 作用 | | --- | --- | | `customer_prompts.py` | 固定 system / 场景 user 模板 | | L1 画像 + MySQL | 偏好/标签落库,跨会话复用 | | 会话归档 + 抽槽 | 关会话写摘要,规则合并进 L1(用户声明 > LLM 推断) | | 双线记忆 | 闲聊 / 咨询分 Redis 线 | | `customer_notes` | 「帮我记住…」结构化备注 | **今日结论:** 客服线已接线并跑通 Wave 测试;L1 在宿主 Chat 全路径的统一复用仍 open。 --- ### 3. 代理人 Agent **已有:** 登录、advisor Chat SSE 骨架、Core 只读 Tool、产品 RAG、理财师 Dashboard。 **仍缺(P0 业务):** L2 服务画像、合规草稿、流程跟进等(`REQUIREMENTS` A-01~A-05);无独立 advisor LangGraph。 **今日结论:** **P0 开发进行中**。 --- ## 三、仍未做的(明晚 DDL) > 按「明晚必须能演示 / 能交差」排序。 ### P0 · 建议明晚前至少完成 - [ ] **接口契约发群**(稿已写好,复制到群即关) - [ ] **风控演示数据就绪**:`seed-aml-list.sql` + `prepare_risk_demo.sql` + 模拟交易造 1~2 条待审预警(否则风控 Dashboard/台账可能空表) - [ ] **代理人 P0 最小闭环**:名下客户 + Chat/只读页能查一名客户持仓或产品规则 - [ ] **Vitest 补测**(若验收要求):`useChatPanel` / `api/analyst.ts` — 时间不够可书面说明缺口 ### P1 · 有时间再做 - [ ] 风控台账筛选 UI(`alert_type` / 客户 / 日期窗) - [ ] 适当性 / AML 扫描前端入口(或文档写明仅 Swagger) - [ ] 链式 reset 脚本(reset 后自动 AML + prepare) - [ ] 画像 L1/L2 Redis + Repository(L3 已完成) - [ ] Redis 订阅演示、`escalation_scan` / `agent_behavior_scan` 走查 - [ ] convert 拆单方案(文档级,明晚不写代码) ### 已知可不做 / 可口头说明 - convert 交易(P0 继续 400) - K 线 / 实时行情 - 理财师后端 portfolio-summary 聚合 API --- ## 四、明晚验收建议(最小集) 1. 四 Demo 账号登录 → 各自 Dashboard 有真数(客户 CUST-9527 锚点;风控有待审或 Empty+造数说明) 2. 至少一条 Chat SSE:customer 或 risk 问一句有回复 3. 客服游客或 customer 线试聊一条 4. 理财师:名下客户 + 进 Chat 或只读页查 CUST-9527 5. 群里有接口契约说明(或文档链接) --- ## 五、一句话总结 今天推进了 **前端主链路、客服/分析接缝、风控盘点、测试数据清单、L3 缓存**;**convert** 明确 P0 拒单;**客服** 注入与 L1 性格方案已对齐并接线;**代理人** P0 业务仍缺。明晚前优先:**能登录、能看图、能聊、风控有预警或讲清怎么造、代理人一条服务闭环**。 --- ## 修订记录 | 日期 | 说明 | | --- | --- | | 2026-09-09 | 首版:日汇报 + 仍未做清单 + DDL 明晚 |