用途:运行项目完整验证流水线,自动修复琐碎问题并重跑,直到通过或发现真实失败。
主要能力与步骤: 0. 安装依赖:make install-deps 2>&1 | tail -10(确保虚拟环境与 lockfile 一致,避免虚假导入错误)。
- 单元测试:make test-unit 2>&1 | tail -40;全部通过则进入第 3 步。
- 分类并修复失败。可自动修复的包括:异步调用缺少 await(补 await,标记测试为 async def,加 @pytest.mark.asyncio)、测试断言旧默认值(更新断言)。真实失败不自动修复,包括生产代码逻辑错误、反映实际行为变化的断言失败、缺依赖导致的导入错误、非本次修改代码中的失败;报告测试名、文件、错误摘要后停止。
- 集成测试:make test-integration 2>&1 | tail -20;集成测试失败几乎都是真实失败,报告并停止。
- 校验:make verify 2>&1 | tail -30,运行 black --check、ruff、woke、pylint、mypy。常见修复:black 格式用 uv run black .;未使用导入(ruff F401)删除导入;未使用变量(ruff F841)删除赋值;多余 noqa(RUF100)删除注释;其他可用 ruff 修复的用 uv run ruff check . --fix;改动代码的 pylint 问题就地修复。每次修复后重跑 make verify,通过后进入第 5 步。
- 报告内容:make test-unit 通过/失败数、make verify 结果、make test-integration 通过/失败数、已应用的自动修复(文件与内容)、使用轮次 N/3。
规则与限制:绝不为修复测试而改生产逻辑,只修测试期望、导入、格式与 lint;不跳过或删除失败测试;超过 3 轮自动修复即停止以避免循环;清晰报告真实失败,不做猜测性修复;不输出无关诊断或建议。具体运行环境与依赖版本等资料暂未提供。