SuperAPI AI 工具集

gitnexus-impact-analysis

编程与开发

查看项目

更新于 10-16 01:57

技能介绍

用途

GitNexus Impact Analysis 用于在修改代码前判断改动的“爆炸半径”(blast radius)。它回答的问题包括:修改这个函数是否安全、修改 X 会破坏什么、这段代码谁在用,以及当前的代码变更会影响哪些部分。它特别适合在做出非平凡代码改动之前,或提交代码之前使用,以便先理解改动的影响范围。

主要能力

该技能围绕两个核心工具组织:

  • gitnexus_impact:符号爆炸半径分析的主工具,用于查找某个目标符号的上游依赖。可指定 target、direction、minConfidence、maxDepth 等参数。输出会按深度分层,例如 d=1(WILL BREAK,直接调用方/导入方)、d=2(LIKELY AFFECTED,间接依赖),并标注关系类型与置信度。
  • gitnexus_detect_changes:基于 git diff 的影响分析,可按 scope(如 staged)查看当前变更映射到的受影响流程,并给出风险等级。

此外,还可以读取 gitnexus://repo/{name}/processes,检查受影响的执行流程。

使用方式

典型工作流为:

  1. 用 gitnexus_impact({target: "X", direction: "upstream"}) 查找依赖该目标的代码。
  2. READ gitnexus://repo/{name}/processes 检查受影响的执行流程。
  3. 用 gitnexus_detect_changes() 将当前 git 变更映射到受影响流程。
  4. 评估风险并报告给用户。

如果提示“Index is stale”,需在终端运行 npx gitnexus analyze。

使用检查清单包括:用 gitnexus_impact 查找依赖方;优先查看 d=1 的项(这些会直接损坏);检查高置信度(>0.8)依赖;读取 processes 检查受影响流程;用 gitnexus_detect_changes 做提交前检查;最后评估风险等级并报告。

适用场景

  • 判断修改某函数是否安全。
  • 了解改动会破坏哪些代码。
  • 查询某段代码的使用者。
  • 在非平凡改动前、提交前评估影响。

限制

该技能依赖索引,若索引过期需重新分析。风险等级与深度含义(d=1 直接破坏、d=2 可能受影响、d=3 可能需要测试)用于辅助判断,具体结果取决于依赖置信度与涉及流程数量。其余未在资料中说明的实现细节暂未提供。