SuperAPI AI 工具集

lean-review

测试与质量

查看项目

更新于 10-23 23:06

技能介绍

用途

lean-review 是 CocoLean 体系下的差异范围过度设计审计。它只审查当前未提交的 git diff(暂存与未暂存改动),不对整个代码库做审计,目的是在开发者提交前这一最易接受反馈的时刻给出可操作结论。

运行前提

执行前需确认 .cocoplus/ 目录存在。若不存在,应输出“CocoPlus is not initialized. Run $pod init first.”并停止。

主要能力

第一步运行确定性差异扫描器:调用 cocolean/lean-review-engine。该脚本读取 git diff,进行 AST 级模式匹配,输出 JSON 发现列表。若没有未提交改动,则提示无改动并停止。

第二步按五类标签对发现进行分类,按严重程度分三层:

第一层(存在性,优先展示):

  • delete:没有调用方、没有测试、spec.md 或 discuss.md 中也没有声明未来用途的代码。若触及信任边界则为 blocking,否则为 important。
  • yagni:为当前规格中不存在的需求而投机添加的抽象、配置开关、扩展点或泛化层。无安全风险时为 nit;若扩大攻击面或增加未测试代码路径则为 important。

第二层(正确性,其次展示):

  • stdlib:重新实现 Snowflake 内置函数或标准 SQL 已有功能的逻辑,需在发现中给出具体替代构造。严重程度 important。
  • native:用自定义 AI 函数完成更适合用原生 Snowflake 对象(物化视图、stream、task、动态表、策略、alert)表达的任务,需给出推荐的原生对象类型。严重程度 important。

第三层(风格,最后展示):

  • shrink:执行单一逻辑操作但代码超出所需,实现正确但过于冗长。严重程度 nit。

第三步按严重程度顺序展示发现,包含标签、文件与行号、严重程度、问题说明和 Action 建议。若没有发现,输出 clean diff 提示。

第四步例外条款检查:在展示任何发现前,确认其不针对以下构造:信任边界验证、数据丢失防护机制、安全控制、法规合规要求、防止静默数据损坏的错误处理、spec.md 中明确要求的能力。命中例外则静默丢弃该发现。

第五步模式相关行为:读取 .cocoplus/modes/lean.mode。lite 模式仅作建议展示,开发者可照常提交;full 模式建议先处理第一层(delete、yagni),第二三层为建议;ultra 模式下 blocking 发现会阻止提交,important 发现需显式确认并给出理由。

使用方式

在 .cocoplus/ 已初始化的仓库中,对存在未提交改动的仓库执行 lean review。技能内部调用 cocolean/lean-review-engine 扫描差异,再依上述步骤分类、排序、过滤并展示结果。

适用场景

适用于 Snowflake 相关代码提交前的快速审查,帮助识别无调用方代码、投机性抽象、重复实现内置功能、可用原生对象替代的自定义逻辑以及可简化的冗长实现。

限制

仅覆盖当前 diff,不做全库审计;需要 .cocoplus/ 初始化;无未提交改动时不产生结果;存在例外条款的构造不会被报告;不同模式下的执行强度不同。具体价格、平台支持范围等资料暂未提供。