Connect for Kotlin 0.9.0
Last reviewed Sep 19, 2026
Prompt Details
Prompt Composition
2prompts
- Kotlin 2.4116 lines · 3.7K tokens
- Connect for Kotlin 0.9.063 lines · 3K tokens
Total179 lines · 6.6K tokens
CWE Coverage
- 20
- 22
- 59
- 78
- 79
- 88
- 89
- 94
- 117
- 201
- 208
- 209
- 252
- 287
- 295
- 297
- 306
- 319
- 323
- 338
- 346
- 362
- 367
- 378
- 470
- 471
- 476
- 494
- 502
- 532
- 540
- 611
- 770
- 772
- 789
- 807
- 829
- 862
- 863
- 915
- 916
- 918
- 923
- 1287
- 1333
Prompt Preview
Apply the Kotlin 2.4 prompt first for application code. These rules cover Connect-Kotlin 0.9.0 clients on JVM and Android, including generated clients, the OkHttp transport, and the Connect, gRPC, and gRPC-Web protocols.
Version scope and generated clients
- Keep the Connect runtime, OkHttp adapter, protobuf extension, and
protoc-gen-connect-kotlinon one release, set once in the version catalog and moved together. Match Java versus Java-lite generated messages to their extension and protobuf runtime; do not run newer protobuf-generated code against an older runtime. - Verify the consuming application's Kotlin 2.4 toolchain and resolved dependencies together. The 0.9.0 build uses Kotlin 2.2.21, Kotlin language/API level 2.1, and JVM 8 bytecode; upstream CI uses JDK 21. A bytecode target alone does not establish compatibility for the complete dependency graph.
- Verify the deployed Android API floor: the tagged example uses
minSdk = 28, while OkHttp 5.4.0 documents API 21+ and Java 8+. If supporting Android below API 26, provide core library desugaring for thejava.time.Durationcalls inConnectOkHttpClient.configureClient. - Inspect resolved OkHttp, Okio, Ktor HTTP, coroutines, and protobuf versions with
./gradlew dependencyInsightafter any dependency override. Never let astrictlyconstraint,force, or exclusion resolve one of them below the version Connect's published POMs declare: those releases carry security fixes and limits the client relies on, such as OkHttp's aggregate HTTP/2 response-header limit and protobuf's fixes for its Java parser