SuperAPI AI 工具集

generate-snapshot

通用与其它

查看项目

更新于 10-16 00:32

技能介绍

用途:在规划阶段识别工作项、查找重构热点(高变更+高复杂度)、跟踪技术债随时间变化、在大版本发布前评估代码健康度,以及发现知识孤岛(bus factor 风险)。

主要能力:快照包含多个部分。summary 提供高层指标,如含 git 变更的文件数、总 churn、高复杂度文件数、TODO/FIXME 计数、循环依赖数、单作者文件比例。priority_hotspots 列出按 priority_score = change_count × max_complexity 排序的前 20 个重构候选文件。git_analysis 分析变更模式,含 hotspots、temporal_coupling(一起变更的隐藏依赖)、bus_factor。complexity 给出按语言的复杂度指标(max_complexity、avg_complexity、function_count)及圈复杂度大于 10 的高复杂度函数。debt_indicators 统计 TODO、FIXME、HACK 注释,超过 500 行的文件和超过 50 行的长函数。dependencies 分析循环依赖、扇出大于 10 的高耦合模块、扇入大于 10 的枢纽模块以及层违规。

使用方式:在仓库根目录运行 python -m analysis.snapshot --output analysis-snapshot.json,加 --pretty 可同时输出到 stdout。快照写入仓库根目录的 analysis-snapshot.json,该路径已被 .gitignore 忽略。

结果解读:priority_score 越高说明文件既常变更又复杂,适合拆分模块、先补测试再改动或简化复杂函数。coupling_ratio 大于 0.8 的一起变更文件暗示隐藏依赖、应共享的复制粘贴代码或分散在无关文件中的功能。author_count 为 1 且 change_count 不小于 3 的文件是知识单点,建议补充文档或结对编程。导入图中的任何循环都表示紧耦合,难以测试,可考虑引入接口或重构结构。

限制:资料未提供运行所需的依赖环境、分析支持的语言范围或快照生成失败时的处理方式等信息。