Gradle compiles Kotlin to bytecode, uses the ASM library to strip out all private internals leaving only the public skeleton, then SHA-256 hashes that skeleton. If the hash matches the cached value, dependent modules are skipped entirely — only a public signature change produces a different hash and triggers downstream recompilation.
#android #gradle #kotlin
https://proandroiddev.com/how-gradle-decides-what-to-recompile-the-multi-module-secret-that-surprises-most-android-devs-353a5437488b