← ClaudeAtlas

android-screenshot-baseline-recordlisted

Use when recording or re-recording screenshot-test baselines (golden images) in any Android/Compose project — Roborazzi, Paparazzi, or AGP's Compose Preview Screenshot Testing. Fire when the user says "record the baselines", "regenerate the screenshots", "update the snapshots", "the goldens are stale", or stages a new screenshot test with no images beside it. Skip when the project ships its own recording skill — that one knows its build's wiring. For checking existing baselines still pass, use android-screenshot-baseline-verify.
damson/hard-won-skills · ★ 1 · Code & Development · score 67
Install: claude install-skill damson/hard-won-skills
# Record Android screenshot baselines A record run that writes nothing still exits 0 — skipped task, filter matching zero tests, or output going somewhere you are not looking. Step 4 is what settles it. ## Procedure ### 1. Identify the framework before running anything Its name decides the task, the baseline directory, and the failure modes: ```bash grep -rn "roborazzi\|paparazzi\|screenshotTest" --include="*.gradle*" --include="*.toml" . ``` | Signal | Framework | Record task | Baselines live in | |---|---|---|---| | `io.github.takahirom.roborazzi` | Roborazzi | `recordRoborazzi<Variant>` | configured; often `src/test/screenshots` | | `app.cash.paparazzi` | Paparazzi | `recordPaparazzi<Variant>` | `src/test/snapshots/images` | | `com.android.compose.screenshot` | AGP preview screenshots | `update<Variant>ScreenshotTest` | `src/<variant>ScreenshotTest/reference` | Where the variant sits differs by framework — last for Roborazzi and Paparazzi (`recordRoborazziDebug`), in the middle for AGP (`updateDebugScreenshotTest`). There is no single rule, so resolve the real names rather than assuming — `./gradlew :<module>:tasks --all | grep -i "screenshot\|roborazzi\|paparazzi"`. A task that does not appear is not wired to that module, and invoking it anyway is the quiet no-op this skill exists to catch. ### 2. Locate the baseline directory, then count what is in it Do not guess it from the table — find where the PNGs actually are: `<module>` is a Gradle path (`:app`, `:libra