name: python-code-review description: 对 Python 改动做“问题优先”的代码审查。适用于审查 diff、定位行为回归、评估风险、检查测试覆盖缺口,尤其是 crawlers、storage、fish_intel_mvp 相关改动。
Python Code Review
概览
聚焦“会出错/会回归/会丢数据”的问题,先给结论再给证据。输出以发现项为主,摘要为辅。
中文输出风格
- 第一行先给审查结论:
存在阻断问题/可合并但有风险/未发现阻断问题。 - 发现项按严重级别排序:
严重、高、中、低。 - 每个发现项必须包含:
文件位置、问题原因、触发场景、最小修复建议。 - 若无发现项,必须明确写出“未发现阻断问题”,并补充剩余风险或测试盲区。
命令习惯(Windows / PowerShell)
优先使用以下命令风格:
git diff --name-only
git diff
rg -n "TODO|FIXME|timeout|retry|except|commit|rollback" crawlers fish_intel_mvp storage tests
.\.venv\Scripts\python -m pytest
.\.venv\Scripts\python -m pytest tests/test_storage.py -v
.\.venv\Scripts\python -m ruff check .
.\.venv\Scripts\python -m mypy crawlers storage query --ignore-missing-imports
工作流
- 确认范围。
- 明确改动文件、业务目标、潜在受影响模块。
- 先读 diff,再读上下文。
- 从改动行扩展到调用链、异常处理、写库路径。
- 标注风险等级。
- 严重:数据损坏、数据丢失、生产主路径不可用、安全问题。
- 高:常见路径崩溃或明显行为回归。
- 中:边界场景错误或稳定性风险。
- 低:可维护性问题或次要改进。
- 核验证据。
- 每条发现必须有文件和行号定位,且给出可复现场景。
- 检查测试缺口。
- 明确已覆盖与未覆盖的高风险路径,给最小测试建议。
输出约定
按以下顺序输出:
- 审查结论
- 发现项(按严重级别排序)
- 开放问题或假设
- 建议补测
- 可选修复计划
仓库重点
优先关注:
- 爬虫稳定性:超时、重试、选择器漂移、反爬处理。
- 存储正确性:MySQL/SQLite 行为一致性、去重、事务边界。
- 配置安全性:环境变量默认值、回退路径、日志泄露敏感信息。
- 指标完整性:items 计数、run 状态、失败记录是否一致。
参考资料
references/review-checklist.mdreferences/test-gap-patterns.md