SuperAPI AI 工具集

ln-812-query-optimizer

数据与分析

查看项目

更新于 10-15 23:59

技能介绍

用途:修复由 ln-651-query-efficiency-auditor 审计发现的查询效率问题,属于 8XX 优化类,父级为 ln-810-performance-optimization-coordinator。核心指标是查询数量减少,而非运行时基准测试。

主要能力:处理 N+1 查询(批量加载、预加载、.Include()、prefetch_related)、重复获取(传对象而非 ID、缓存结果)、过度获取(字段投影、.Select())、缺失索引提示(索引注解/迁移)以及无界查询(.Take()、LIMIT、分页)。

使用方式:输入为 docs/project/persistence_audit.md 中的 ln-651 审计发现或目标文件。工作流分五阶段:预检、加载发现、优先级排序、修复循环、报告。预检要求存在审计发现或目标文件、测试基础设施和干净的 Git 状态,否则阻止优化。修复循环对每个发现执行:应用外科式修改、运行测试,测试通过则保留,失败则回滚丢弃;无测试覆盖的发现跳过并记录。优先级依次为热路径 N+1、重复获取、过度获取、面向用户端点的缺失分页。配置项包括 audit_report、target_file、run_tests 和 fix_types 过滤。

适用场景:已有查询效率审计结果或明确目标文件,且项目具备测试基础设施和干净 Git 状态时,用于结构性减少查询次数。

限制:无审计发现时报告无可优化项;未知 ORM 需查阅文档;索引添加需要迁移时记录为手动步骤并跳过;修复引入新 N+1 则丢弃。不进行基准测试,验证依赖测试通过和结构改进。