Reproducer for Android Gradle plugin gRPC bug
diff --git a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt
index e386be0..b91718a 100644
--- a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt
+++ b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt
@@ -49,9 +49,9 @@
     //keep it globally to avoid test grouping on TC
     private val generatedTestNames = hashSetOf<String>()
 
-    private val common = FlavorConfig(TargetBackend.ANDROID, "common", 4)
+    private val common = FlavorConfig(TargetBackend.ANDROID, "common")
     private val reflect = FlavorConfig(TargetBackend.ANDROID, "reflect")
-    private val commonIr = FlavorConfig(TargetBackend.ANDROID_IR, "common_ir", 4)
+    private val commonIr = FlavorConfig(TargetBackend.ANDROID_IR, "common_ir")
     private val reflectIr = FlavorConfig(TargetBackend.ANDROID_IR, "reflect_ir")
 
     class FlavorConfig(private val backend: TargetBackend, private val prefix: String, private val limit: Int = 1) {
@@ -66,7 +66,7 @@
             // Allocating up to 2500 files per folder should be fine for each app flavor,
             // thus avoiding the need for multidex, which is necessary when there are more than 64K methods.
             // Each folder will be archived using build.gradle.kts.
-            val index = writtenFilesCount / 2500
+            val index = writtenFilesCount / 65535
             val name = "$prefix$index"
             check(index < limit) { "Please add a new flavor in build.gradle for $name" }
             return name
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt
index cbcfd67..903dfa6 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt
@@ -39,6 +39,7 @@
             enableGradleDebug = false,
             buildJdk = jdkVersion.location
         ) {
+            makeSnapshotTo("tmp")
             build("assembleAndroidTest", forceOutput = true, enableGradleDaemonMemoryLimitInMb = 6000)
             build("nexusCheck", forceOutput = true, enableGradleDaemonMemoryLimitInMb = 6000)
         }
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts
index 1373b73..a120a36 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts
@@ -7,7 +7,7 @@
 
     defaultConfig {
         applicationId = "org.jetbrains.kotlin.android.tests"
-        minSdk = 14
+        minSdk = 21
         compileSdk = 34
         targetSdk = 34
         versionCode = 1
@@ -28,14 +28,8 @@
     productFlavors {
         listOf(
             "common0",
-            "common1",
-            "common2",
-            "common3",
             "reflect0",
             "common_ir0",
-            "common_ir1",
-            "common_ir2",
-            "common_ir3",
             "reflect_ir0"
         ).forEach {
             create(it) {