SuperAPI AI 工具集

compare-cache-runs

通用与其它

查看项目

更新于 10-15 22:10

技能介绍

用途:对比两次 tuist cache 运行,找出缓存命中率变化、时长与状态差异,并分析缓存失效原因。

主要能力:按 base/head 解析缓存运行;比较时长、状态、cacheable_targets、本地与远程命中数等指标;计算命中率及差值;区分直接变更的根因目标与因依赖哈希变化被级联失效的目标;给出减少缓存失效的建议。

用法:先运行 tuist cache-run list --json 查找各分支的缓存运行;对 base 与 head 各执行 tuist cache-run show <id> --json 获取详情。若传入分支名,可用 tuist cache-run list --git-branch <branch> --json --page-size 1。未提供 base 时默认使用项目默认分支,未提供 head 时检测当前 git 分支。

命中率公式:(local_hits + remote_hits) / cacheable_targets * 100,差值取 head 减 base。时长若 head 慢于 10% 以上则标记。

根因分析:通过 base 与 head 提交间的 git diff 判断哪些文件变更,映射到 Tuist 目标/模块;有直接源码变更的目标可能是根因,仅因依赖哈希变化失效的属于次级级联。常见根因包括源码、资源、构建设置、依赖版本、Info.plist、entitlements、部署目标、头文件、项目设置变更。

输出:总体结论、命中率对比、时长变化、根因目标、级联影响数量与改进建议。

限制:缺少模块缓存目标详情端点时需依赖启发式判断;其余收费、平台等信息资料未提供。