Skip to content

ci: split apiCheck into its own CI step for cost visibility#72

Merged
OmarAlJarrah merged 2 commits into
mainfrom
ci/split-apicheck-visibility
Jul 13, 2026
Merged

ci: split apiCheck into its own CI step for cost visibility#72
OmarAlJarrah merged 2 commits into
mainfrom
ci/split-apicheck-visibility

Conversation

@OmarAlJarrah

Copy link
Copy Markdown
Member

Summary

  • Splits the static-analysis job's bundled ktlint, detekt, binary-compatibility and JVM coverage floor step into two: ktlint, detekt, and JVM coverage floor (runs ktlintCheck detekt jvmTest koverVerify) and a new apiCheck (binary compatibility, incl. Android + native KLIB ABI) step (runs apiCheck alone).
  • No gates are added or removed and no caching behavior changes — this is purely a CI-visibility change.

Why

apiCheck now transitively compiles the Android target (androidApiCheck -> androidApiBuild -> compileAndroidMain) as part of its binary-compatibility checking, a real new cost that was previously invisible because it was folded into one opaque ~176s bundled step. Splitting it into its own step surfaces that cost as its own line in the job's timing, so it's attributable instead of hidden inside the combined ktlint/detekt/jvmTest/koverVerify block.

apiCheck now transitively compiles the Android target via
androidApiCheck -> androidApiBuild -> compileAndroidMain, but its cost
was folded into one bundled ktlint/detekt/apiCheck/jvmTest/koverVerify
step, making it invisible in the job's timing. Splitting it into its
own step surfaces that cost on its own line without changing what
runs or how it's cached.
The apiCheck step now carries its own task graph, separate from the
ktlint/detekt/jvmTest/koverVerify step, so it can hit or miss the
configuration cache independently. Surface that signal the same way
the other step already does instead of leaving it only in the raw log.
@OmarAlJarrah OmarAlJarrah merged commit d67cc0b into main Jul 13, 2026
11 of 13 checks passed
@OmarAlJarrah OmarAlJarrah deleted the ci/split-apicheck-visibility branch July 13, 2026 19:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant