lzf_0626 b5b068065f 修掉合并带入的 3 个 mypy 错(全在袁聪的场外邮件模块,各一行、不动逻辑)
1. offsite_document_recognition_adapter.py:788 —— 冗余 cast。
   `value in ("summary", ...)` 已经把类型收窄到那个字面量联合,cast 多余,删掉即可。
   该文件另有 13 处 cast,删这一个不影响 import。

2. offsite_fund_service.py:1203 —— dict 不变型。
   字面量里只有一个 bool,mypy 推断成 dict[str, bool | None],而 dict 是**不变型**,
   不是 dict[str, object] 的子类型。运行时本来就是合法值,加一行显式标注即可。

3. offsite_fund_service.py:1240 —— 标注宽于实际。
   `get_content()` 只定义在 EmailMessage 上,而调用方传的是
   BytesParser(policy=policy.default).parsebytes(...) 的返回值(本来就是 EmailMessage)。
   形参从基类 Message 改成 EmailMessage;import 同步替换(Message 仅此一处使用)。

三条都不影响运行:tests/unit/worker/test_offsite_mail_worker.py 的 6 个用例覆盖的正是
这条路径,修前修后都通过。修的意义在于——strict=true 下留着这 3 个错,mypy 在这个文件上
就失去价值,而 offsite_* 是刚合并进来、最需要类型检查兜底的新域。

验证:mypy 163 文件 0 错 / ruff 干净 / unit+contract 810 passed / integration 76 passed。

(另:本机 pytest 默认 basetemp 被权限占住的问题仍在,用重定向 TEMP 绕开,注意先建目录;
NL_develop 的 conftest 修复合并后可根治。)
2026-09-11 20:15:17 +08:00
2026-09-11 19:37:26 +08:00
2026-09-09 21:55:37 +08:00
S
Description
番茄炒蛋组
18 MiB
Languages
Python 99.9%