enforcing-stability-in-ci

Check Jetpack Compose UI stability regressions against a baseline during CI builds.

8|Updated May 18, 2025
One-click install
npx skills add https://github.com/decoutkhanqindev/DexReader --skill enforcing-stability-in-ci-decoutkhanqindev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: enforcing-stability-in-ci
Source: https://github.com/decoutkhanqindev/DexReader/tree/main/.claude/skills/enforcing-stability-in-ci
Command: npx skills add https://github.com/decoutkhanqindev/DexReader --skill enforcing-stability-in-ci-decoutkhanqindev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires skydoves/compose-stability-analyzer, j-roskopf/ComposeGuard, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill ensures that stability regressions in Jetpack Compose code are caught early in the CI process, preventing issues from reaching production.

Core Features & Use Cases

  • CI Integration: Fails the build in CI when stability regressions are detected.
  • Baseline Management: Generates and commits stability baselines for comparison.
  • Customization: Configurable to ignore specific packages or classes.
  • Use Case: Use this Skill to maintain a stable Jetpack Compose UI by automatically checking for regressions in CI and failing the build if any are found.

Quick Start

Run the skill by executing ./gradlew :app:stabilityCheck.

Frequently Asked Questions about enforcing-stability-in-ci

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent Jetpack Compose stability regressions in CI?

To prevent Jetpack Compose stability regressions in CI, you can configure a Gradle task to check your UI code against a committed stability baseline. The build fails automatically if any new stability regressions are detected.

What is a Compose stability baseline and how is it used?

A Compose stability baseline is a committed record of your UI's stability status used for comparison during CI builds. It is generated by a Gradle task and ensures new code changes do not introduce stability issues.

Can I ignore specific classes or packages during Compose stability checks?

Yes, you can configure the stability checks to ignore specific packages or classes. This allows you to bypass certain parts of your Jetpack Compose code that you do not want to evaluate during the CI build.

Does this CI stability check require specific Gradle plugins for Android?

Yes, automating Jetpack Compose stability checks requires Gradle and specific analyzer plugins. These dependencies evaluate your Android UI code against the baseline and fail the build if regressions are found.

What is the best way to automate Compose UI stability checks in a build pipeline?

The best way to automate Compose UI stability checks is to run a dedicated Gradle task during your CI builds. This task compares the current code against a baseline and fails the pipeline if stability regressions are detected.

Why does my Jetpack Compose build fail in CI when stability regressions are found?

Your Jetpack Compose build fails in CI because stability checks are configured to catch regressions against a baseline. This mechanism prevents unstable UI code from being merged and reaching production.