WorkBuddy
0742eef52e
fix(quality): 质量检查引用已删除的 MatchStats.id 必然 500 + 检查无日志
生产实测: POST /admin/data-quality/run 100% 失败,且日志无任何记录。
根因链:
1. P0-02 把 MatchStats 主键改为 match_id(无 id 属性),但质量检查
查询仍写 MatchStats.id.is_(None) → AttributeError → 500
2. handler 无 logger 调用;未捕获异常走 uvicorn.error(默认
propagate=False),不经过 root handler → 内存日志页/文件日志
都看不到 traceback,排障无据可查
修复:
- MatchStats.id → MatchStats.match_id(与 P0-02 模型对齐)
- 成功路径记 info 日志(检查名=通过/未通过(计数))
- setup_logging 打开 uvicorn/uvicorn.error 的 propagate,
未捕获异常 traceback 进入内存缓冲与滚动文件
- 回归测试 3 例(mock session):修复前红(3 failed),修复后绿;
全量 329 passed 8 skipped 零回归
2026-09-22 18:03:20 +08:00
..
2026-09-19 22:51:35 +08:00
2026-09-22 03:13:32 +08:00
2026-09-21 17:31:36 +08:00
2026-09-19 22:51:35 +08:00
2026-09-21 23:27:48 +08:00
2026-09-22 03:13:32 +08:00
2026-09-19 22:51:35 +08:00
2026-09-21 17:13:57 +08:00
2026-09-19 09:40:24 +00:00
2026-09-15 00:14:24 +08:00
2026-09-22 03:13:32 +08:00
2026-09-22 18:03:20 +08:00
2026-09-19 09:40:24 +00:00
2026-09-22 09:43:48 +08:00
2026-09-22 01:33:14 +08:00
2026-09-19 22:51:35 +08:00
2026-09-21 18:36:43 +08:00
2026-09-19 08:02:57 +00:00
2026-09-20 19:40:20 +08:00
2026-09-22 12:18:03 +08:00
2026-09-19 22:51:35 +08:00
2026-09-22 01:33:14 +08:00
2026-09-22 03:13:32 +08:00
2026-09-22 01:33:14 +08:00
2026-09-19 06:43:55 +00:00
2026-09-22 03:13:32 +08:00
2026-09-22 02:32:53 +08:00
2026-09-22 12:18:03 +08:00
2026-09-22 03:23:41 +08:00
2026-09-22 03:31:40 +08:00
2026-09-22 03:39:36 +08:00
2026-09-22 03:44:09 +08:00
2026-09-22 08:49:30 +08:00
2026-09-22 08:57:20 +08:00
2026-09-22 09:08:35 +08:00
2026-09-22 09:08:35 +08:00
2026-09-19 06:43:55 +00:00
2026-09-22 03:13:32 +08:00
2026-09-21 20:55:26 +08:00
2026-09-22 01:33:14 +08:00
2026-09-19 08:02:57 +00:00
2026-09-22 09:43:48 +08:00
2026-09-21 17:04:04 +08:00
2026-09-19 22:51:35 +08:00
2026-09-22 09:43:48 +08:00
2026-09-19 08:02:57 +00:00
2026-09-20 08:45:35 +08:00