What problem does it solve? Profiling iOS app launch and runtime latency on the simulator is difficult when traces are unsymbolicated, overwritten between runs, or mixed with idle thread noise. This Skill provides a repeatable workflow to link ETTrace into a simulator app, collect UUID-matched dSYMs, capture one focused trace, and analyze the processed flamegraph JSON for CPU-heavy stacks. ## Core Features & Use Cases - Guided ETTrace Capture: Step-by-step workflow for building a simulator ETTrace.xcframework, linking it into the app target, and capturing launch or runtime traces with the Homebrew ettrace runner. - dSYM Collection and Symbolication Gate: The collect_ios_dsyms.sh script gathers UUID-matched dSYMs for the app executable and embedded frameworks, failing loudly when required symbols are missing. - Flamegraph Analysis: The analyze_flamegraph_json.py script validates the ETTrace v1.1.0 processed JSON shape and reports top active self frames and inclusive stacks, excluding idle and unattributed frames. - Use Case: An engineer investigating slow cold launch links ETTrace into the debug simulator build, captures a launch trace with matched dSYMs, and reads the ranked hotspot summary to find the first-party functions dominating startup time. ## Quick Start Ask the assistant to capture a symbolicated ETTrace profile of one focused flow in your iOS simulator app and report the top CPU-heavy stacks.