AC QA Reviewer 用于对功能实现执行质量保证审查。其目的是在将功能标记为完成之前,审查已完成的特性是否符合代码质量、标准遵循、安全问题及最佳实践要求。
【使用方式】 通过导入脚本中的 QAReviewer 类进行调用,示例代码为:
from scripts.qa_reviewer import QAReviewer
reviewer = QAReviewer(project_dir) result = await reviewer.review_feature("auth-001")
完整的实现可参考 scripts/qa_reviewer.py。
【审查维度】 审查覆盖五个维度:
-
代码质量:包括简洁代码原则、DRY(不要重复自己)原则、SOLID 原则、代码复杂度指标。
-
安全性:包括输入验证、SQL 注入防护、XSS 防护、安全认证。
-
性能:包括算法效率、数据库查询优化、内存使用、缓存机会。
-
测试:包括测试覆盖率、测试质量、边界情况覆盖、集成测试。
-
文档:包括代码注释、API 文档、README 更新、类型注解。
【审查结果】 审查结果以结构化数据返回,包含功能 ID、是否通过、总分、各维度分数与问题列表、阻塞性问题、建议以及可自动修复项。示例结果结构如下:
{ "feature_id": "auth-001", "approved": true, "score": 85, "dimensions": { "code_quality": {"score": 90, "issues": []}, "security": {"score": 85, "issues": ["Consider rate limiting"]}, "performance": {"score": 80, "issues": []}, "testing": {"score": 88, "issues": []}, "documentation": {"score": 82, "issues": ["Add docstring to validate_token"]} }, "blocking_issues": [], "suggestions": [ "Consider extracting authentication middleware", "Add rate limiting for login endpoint" ], "auto_fixable": ["missing_docstring"] }
【QA 工作流】
- SCAN(扫描)→ 对变更文件进行静态分析
- ANALYZE(分析)→ 对照质量规则进行检查
- SECURITY(安全)→ 执行安全专项检查
- REVIEW(审查)→ 结合上下文进行代码审查
- REPORT(报告)→ 生成审查报告
- FIX(修复)→ 自动修复简单问题(可选)
- APPROVE(批准)→ 标记为 QA 通过或请求修改
【质量门禁】 质量门禁配置示例:
gates: minimum_score: 70 blocking_categories: - security_critical - test_failures required_checks: - linting_passes - type_checks_pass - tests_pass - coverage_minimum
【自动修复能力】 审查器可以自动修复以下内容:
- 缺失的类型提示
- 格式问题
- 简单的代码风格违规
- 缺失的文档字符串(基础级别)
【集成关系】
- 输入:来自 ac-task-executor 的已完成功能
- 使用:ac-code-validator 进行静态分析
- 报告至:ac-state-tracker
【适用场景】 适用于审查代码质量、检查实现标准、执行 QA 周期或验证功能等场景。