What problem does it solve? Jetpack Compose skips recomposition only when parameters are provably stable, and when skipping breaks down the cause is invisible without compiler output. This Skill walks through enabling and interpreting the Compose Compiler Reports (classes.txt, composables.txt, composables.csv, module.json) so you can pinpoint exactly which unstable parameters and non-skippable composables cause jank, dropped frames, and excessive recomposition. ## Core Features & Use Cases - Report Enablement: Configure the composeCompiler Gradle DSL (Kotlin 2.0+ plugin) scoped to release builds only, avoiding Live Literals noise from debug variants. - Report Interpretation: Decode per-class stability prefixes (stable, unstable, runtime) and per-composable flags (restartable, skippable, readonly, @static, @dynamic) with full grammar references. - Root-Cause Triage: Trace each unstable parameter in composables.txt back to its offending field in classes.txt, then prioritize by hot path (e.g., LazyColumn items) before handing off to a fix workflow. - Use Case: A developer sees scroll stutter in a feed screen. The Skill guides building :app:assembleRelease with reports enabled, finds unstable snacks: List<Snack> blocking skippability in HighlightedSnacks, and identifies the List interface as the root cause to fix. ## Quick Start Ask the AI to enable Compose Compiler Reports on your release build and diagnose why a specific composable keeps recomposing.