用途:对比两次 tuist generate 运行,识别缓存命中率变化,并对缓存失效进行根因分析。
主要能力:解析 base 与 head 两次生成记录;比较耗时、状态、可缓存目标数、本地与远程缓存命中数;计算缓存命中率及其差值;定位导致失效级联的根因目标;评估影响并给出减少缓存未命中的建议。
使用方式:先运行 tuist generate list --json 查找各分支上的生成记录;对 base 和 head 分别运行 tuist generate show <id> --json;若提供的是分支名,可用 tuist generate list --git-branch <branch> --json --page-size 1 获取最近记录再取详情。未提供 base 时默认使用项目默认分支(通常为 main),未提供 head 时检测当前 git 分支。随后比较顶层指标:head 耗时慢于 10% 需标记,base 成功而 head 失败需标记,并注意目标数、本地/远程命中数及是否 CI 的变化。命中率公式为 (local_hits + remote_hits) / cacheable_targets * 100。
缓存失效分析:根因目标指有直接变更(源文件、资源、构建设置、依赖版本、Info.plist、entitlements、部署目标、头文件、项目设置等)的目标;依赖它的目标会因依赖哈希变化被级联失效。缺少模块缓存目标详情端点(可通过 MCP 获取)时,可用 git diff 对比 base 与 head 提交,将变更文件映射到 Tuist 目标/模块,直接变更的目标很可能是根因,仅因依赖哈希变化的目标属于次级失效。
适用场景:排查生成变慢或缓存命中率下降,区分预期失效、意外失效与级联失效,并输出包含总体结论、命中率对比、耗时变化、根因目标、级联影响与建议的摘要。
限制:资料未提供该技能的安装方式、平台支持、收费信息及具体实现细节;根因识别在无 MCP 端点时依赖启发式方法。