用途:作为 Xcode 构建优化工作的入口,以“先建议、后实施”的方式编排整套优化流程。核心指标是开发者实际等待的墙钟构建时间,而非累计任务耗时。\n\n主要能力:分两阶段。阶段一为只读分析:收集 workspace 或 project、scheme、配置、目标设备与痛点;用 xcode-build-benchmark 建立基准;检查 timing_summary_categories 是否为空并处理解析失败;对 clean、cached clean、incremental 做方差检查,若 min-max 跨度超过中位数 20% 则标记高方差并建议增加 5 次以上重复;判断编译任务是阻塞关键路径还是并行占用 CPU;按证据运行 xcode-compilation-analyzer、xcode-project-analyzer、spm-build-analysis;合并为优先级计划并生成 .build-benchmark/optimization-plan.md,随后停下等待开发者审阅确认。阶段二在获批后调用 xcode-build-fixer 仅实施已勾选项,应用后验证编译并复测,把前后中位数、绝对值与百分比变化追加到报告中。\n\n使用方式:先跑基准,例如\n\npython3 scripts/benchmark_builds.py --project App.xcodeproj --scheme MyApp --configuration Debug --destination "platform=iOS Simulator,name=iPhone 16" --output-dir .build-benchmark\n\n增量构建可加 --touch-file path/to/SomeFile.swift。诊断用\n\npython3 scripts/diagnose_compilation.py --project App.xcodeproj --scheme MyApp --configuration Debug --destination "platform=iOS Simulator,name=iPhone 16" --threshold 100 --output-dir .build-benchmark\n\n报告用 generate_optimization_report.py 生成。\n\n限制:未经开发者明确批准,不得修改项目、源码、包或脚本;阶段一只允许在 .build-benchmark/ 写基准产物与计划;每条建议须给出预期等待时间影响;仅在变更后中位数落在基准 min-max 范围外才可宣称改进;并行编译收益不应作为首要影响指标。费用、价格等暂未提供。
xcode-build-orchestrator
编程与开发
更新于 10-15 23:34