DO_NOT_MERGE Temporarily use 2.3.0-dev-3121 as a custom compiler version
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index a4d82a5..e9221bf 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -3722,6 +3722,12 @@
             <sha256 value="5732eb2f476a2b0280d571ccdd29d95f2f5ef54bb8c11c3f9ff52a1566300971" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-compiler-embeddable" version="2.3.0-dev-3121">
+         <artifact name="kotlin-compiler-embeddable-2.3.0-dev-3121.jar">
+            <md5 value="65901b87269b9b9f1f380c3e985fa6f6" origin="Generated by Gradle"/>
+            <sha256 value="bfca5716b07a3606a2fe8005a5c31c7dc6f5b9be3ba3c0e6686965075e90f7ff" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-compiler-runner" version="2.0.21">
          <artifact name="kotlin-compiler-runner-2.0.21.jar">
             <md5 value="4b11396f7f44616b2d2133011ac4825e" origin="Generated by Gradle"/>
@@ -3800,6 +3806,12 @@
             <sha256 value="ff3cdbd09ff446be6156a1c02e14cf6f2954334d75ea8dc243f6201a557c8a99" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-daemon-embeddable" version="2.3.0-dev-3121">
+         <artifact name="kotlin-daemon-embeddable-2.3.0-dev-3121.jar">
+            <md5 value="24b38ccabc255ddee6de9df94958f640" origin="Generated by Gradle"/>
+            <sha256 value="79561a8332f56955d68dcd2aff5b685f2840d79cea854bebbf94a783e35f0c16" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-gradle-plugin" version="2.0.21">
          <artifact name="kotlin-gradle-plugin-2.0.21-gradle85.jar">
             <md5 value="cb72ff428ac0ed819cab4fd55bbf0a54" origin="Generated by Gradle"/>
@@ -4082,6 +4094,12 @@
             <sha256 value="fe54508db6591e46f8e0634c47afa34a2025f610f3cda1ce0272119ce7b4edc2" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-script-runtime" version="2.3.0-dev-3121">
+         <artifact name="kotlin-script-runtime-2.3.0-dev-3121.jar">
+            <md5 value="c3f4ad280ba35956a39f79ac06b7fd4a" origin="Generated by Gradle"/>
+            <sha256 value="bfcfeab7a6af4c762a7aba981d3964be5a3a10c4828defd786802266fb209dd4" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-scripting-common" version="2.0.21">
          <artifact name="kotlin-scripting-common-2.0.21.jar">
             <md5 value="5311595520653b0792287d9235527cc8" origin="Generated by Gradle"/>
@@ -4274,6 +4292,12 @@
             <sha256 value="a70b2860e48e226333a267a317d9c6191a2b7f67ca6b0767dea05deb2caac37a" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="2.3.0-dev-3121">
+         <artifact name="kotlin-stdlib-2.3.0-dev-3121.jar">
+            <md5 value="15b4a5bad77c74547a085d601595d2bb" origin="Generated by Gradle"/>
+            <sha256 value="99ccd1ef3d5c506d6e2490d1978982c1ee194dc93a69ca3bcb291881a8c72f1c" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.6.0">
          <artifact name="kotlin-stdlib-common-1.6.0.jar">
             <md5 value="05517b4cdeff2fc7c359a6148ac5dc38" origin="Generated by Gradle"/>
@@ -4382,6 +4406,12 @@
             <sha256 value="88524a4f8c9ef7666f8390aae6271c961a405fb614a5828ecf52e13a69f0464a" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-stdlib-js" version="2.3.0-dev-3121">
+         <artifact name="kotlin-stdlib-js-2.3.0-dev-3121.klib">
+            <md5 value="eafd964e0ee25afb630543ea59b63ed5" origin="Generated by Gradle"/>
+            <sha256 value="4da3391c2a6ca8ce575b8526f0d0732917c0d53a7c9ffeca39af0b28d35563e5" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-stdlib-wasm-js" version="1.9.20">
          <artifact name="kotlin-stdlib-wasm-js-1.9.20.klib">
             <md5 value="826ab5ca407761e6a52aa232c307f2f4" origin="Generated by Gradle"/>
@@ -4422,6 +4452,12 @@
             <sha256 value="97febf96080565efc336c279446f6d33b67a141e72c543f3ad2c4dae4a7ea47c" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.jetbrains.kotlin" name="kotlin-test-js" version="2.3.0-dev-3121">
+         <artifact name="kotlin-test-js-2.3.0-dev-3121.klib">
+            <md5 value="b8f2cee14f438928aa917c9bf12c2e92" origin="Generated by Gradle"/>
+            <sha256 value="f5c83f993231d259008afae6aa58f5cc979c4dcd682795ab143edd606a880f08" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.jetbrains.kotlin" name="kotlin-test-junit" version="2.3.0-dev-1330">
          <artifact name="kotlin-test-junit-2.3.0-dev-1330.jar">
             <md5 value="7abf601321d6239f9e09b95752da37f7" origin="Generated by Gradle"/>
diff --git a/js/js.tests/klib-compatibility/build.gradle.kts b/js/js.tests/klib-compatibility/build.gradle.kts
index 6c230df..885e617 100644
--- a/js/js.tests/klib-compatibility/build.gradle.kts
+++ b/js/js.tests/klib-compatibility/build.gradle.kts
@@ -17,6 +17,10 @@
     }
 }
 
+repositories {
+    maven("https://packages.jetbrains.team/maven/p/kt/experimental")
+}
+
 dependencies {
     testApi(platform(libs.junit.bom))
     testImplementation(libs.junit.jupiter.api)
diff --git a/js/js.tests/klib-compatibility/gradle.properties b/js/js.tests/klib-compatibility/gradle.properties
index 4ab0013..8826f37 100644
--- a/js/js.tests/klib-compatibility/gradle.properties
+++ b/js/js.tests/klib-compatibility/gradle.properties
@@ -1,2 +1,2 @@
 # the version used in klib compatibility tests
-kotlin.internal.js.test.compat.customCompilerVersion=2.2.0
+kotlin.internal.js.test.compat.customCompilerVersion=2.3.0-dev-3121
diff --git a/js/js.tests/testFixtures/org/jetbrains/kotlin/js/test/klib/CustomWebCompilerUtils.kt b/js/js.tests/testFixtures/org/jetbrains/kotlin/js/test/klib/CustomWebCompilerUtils.kt
index abfcd45..e32faeb 100644
--- a/js/js.tests/testFixtures/org/jetbrains/kotlin/js/test/klib/CustomWebCompilerUtils.kt
+++ b/js/js.tests/testFixtures/org/jetbrains/kotlin/js/test/klib/CustomWebCompilerUtils.kt
@@ -81,6 +81,9 @@
                 // Since Kotlin 2.1.0, the compiler's CLI requires the Coroutines library during the runtime.
                 artifacts.resolve("kotlinx-coroutines-core-jvm", "jar", sameVersionAsCompiler = false, optional = true),
 
+                // Since Kotlin 2.3.0, the compiler's CLI requires kotlin-reflect library during the runtime.
+                artifacts.resolve("kotlin-reflect", "jar", sameVersionAsCompiler = false, optional = true),
+
                 // This artifact was removed in Kotlin 2.2.0-Beta1.
                 // But it is still available in older compiler versions, where we need to load it.
                 artifacts.resolve("trove4j", "jar", sameVersionAsCompiler = false, optional = true),