- Introduced `convert_meta_api` endpoint to fetch the latest NAV date for conversion processes, restricted to users with the "risk_officer" role. - Updated `created_at` field in `AgentMessage` to use UTC timezone for consistency in timestamp handling. - Added `get_max_product_nav_date` method in `CoreReadOnlyRepository` to support the new API functionality. - Enhanced Milvus template loading in `MilvusTemplateVectorStore` to ensure collections are loaded when they exist. This update improves the API's capability to handle conversion metadata and ensures accurate timestamp management across the application.
_raw/ · 本轮结果明细(原始数据)
本目录是 TEST-2026-09-12-FE-001 的逐用例原始记录,未经二次加工。 主报告:
../TEST-LOG-2026-09-12-FE-001.md· 包索引:../README.md被测版本:merger@c09b987· 生成日期:2026-09-12
文件清单
| 文件 | 内容 | 用例 | 结果 |
|---|---|---|---|
advisor-api.md |
顾问 API 明细矩阵(脚本 --report 原生输出) |
63 | 60 PASS / 3 FAIL / 0 SKIP |
risk-api.md |
风控 API 明细矩阵(脚本 --report 原生输出) |
64 | 63 PASS / 0 FAIL / 1 SKIP |
browser-advisor.json |
顾问前端四页逐用例 JSON(results-09-advisor.json) |
17 | 15 PASS / 2 FAIL |
browser-risk.json |
风控前端六页逐用例 JSON(results-10-risk.json) |
21 | 19 PASS / 2 FAIL |
browser-cross-role.json |
跨角色隔离逐用例 JSON(results-11-cross-role.json) |
9 | 4 PASS / 5 FAIL |
server-log-evidence.md |
服务端日志摘录 —— D2/D3 的决定性依据 | — | — |
shots/ |
本轮 12 张页面截图取证 | — | — |
| 合计 | 174 | 161 PASS / 12 FAIL / 1 SKIP |
各文件来源与生成方式
advisor-api.md · risk-api.md —— 由两支脚本的 --report 直接写出,未手工编辑:
# 需 uvicorn 已起在 127.0.0.1:8000
python scripts/dev/advisor_e2e_smoke.py --report <本目录>/advisor-api.md
python scripts/dev/risk_e2e_smoke.py --report <本目录>/risk-api.md
本目录内的两份是报告定稿前那次复现验证(18:55)的输出,两条跑道同源同批次。 复跑结果与它们逐字一致(顾问
60/3/0退出码 1 · 风控63/0/1退出码 0)。
browser-*.json —— 浏览器脚本 fs.writeFileSync 的原始产物,原样搬运,未改一个字节:
| 包内文件名 | 原文件(仓库外 C:/Users/Windows/e2e-jinrong/) |
产出脚本 |
|---|---|---|
browser-advisor.json |
results-09-advisor.json |
09-advisor-pages.mjs |
browser-risk.json |
results-10-risk.json |
10-risk-pages.mjs |
browser-cross-role.json |
results-11-cross-role.json |
11-cross-role.mjs |
JSON 结构:{ counts: {PASS,FAIL,SKIP}, results: [{ id, name, status, expected, actual, issues }] },
issues 内含该用例期间的 console / pageerror / HTTP≥400 采集。
server-log-evidence.md —— 被测 uvicorn 进程单次 server session 完整 stdout 日志(覆盖 18:19:25 → 18:55:05)的相关片段摘录,非全文(全文 236,333 bytes / 3,592 行)。
摘录动机:D3 的整个诊断建立在这份日志上,而日志原件在临时目录中会被清理 ⇒ 摘录入库,使结论可被第三方查阅。
内含:全局 HTTP 状态分布 · 6 次 MilvusException 的逐字报文与时间戳 · 8 次 IntegrityError (1048) 的失败 SQL 与参数 · 摘录边界声明。
⚠️ 它同时是一处口径更正的依据:D3 原记「日志出现 10 次」实为日志行数(5 次异常 × 2 行:RPC-error + traceback),不是异常次数。详见该文件 §2.1。
shots/ —— 同名脚本 page.screenshot() 的产物,文件名与脚本内路径一一对应。
说明:这 12 张是本轮新增的(09- / 10- / 11- 前缀);仓库外 shots/ 目录里还有 2026-09-10 那轮的旧截图,未纳入本包。
口径提醒(读明细时勿误判)
| 项 | 说明 |
|---|---|
risk-api.md 的行序 |
按脚本执行顺序(R1 → R5 → R2 → R3 → R4 → R6),不是按分组号排序。行数仍是完整 64 行 |
scanned / nav_pending 数值 |
是当时存量,随每轮新增受理单增长 ⇒ 复跑会变大(本目录为 10,主报告浏览器侧记 8)。判据看 confirmed 恒为 0 |
| 唯一 SKIP | 风控 R4 阻断文案 advice/notice —— 该客户/产品组合未触发阻断,非失败 |
match_type 全为 keyword |
是 D3(语义检索降级)的证据,不是断言写错 |
browser-*.json 的 issues |
采集的是该用例期间的 console/HTTP 事件,含页面级容错噪音;判定以 status 字段为准 |
| 中文乱码 | 若在 Windows 终端直接 type JSON 出现乱码,是控制台代码页问题;文件本身为 UTF-8,用编辑器或 python -c ... encoding='utf-8' 读正常 |
不含什么
- 不含任何明文凭据 —— 账号一律以
STAFF-*/CUST-*标识 - 不含两个 SSE 对话页(
/app/advisor/chat、/app/risk/chat)的用例 —— 本轮明示排除 - 不含
agent_tools.py/agent_graph.py—— 无 HTTP 入口,产生 0 个用例