Skip to content

[DO NOT MERGE until 1.0 ships] Bump adk-docs to adk-kotlin 1.0.0 - #2152

Draft
happyhuman wants to merge 2 commits into
mainfrom
docs-kotlin-adk-1.0-pin
Draft

[DO NOT MERGE until 1.0 ships] Bump adk-docs to adk-kotlin 1.0.0#2152
happyhuman wants to merge 2 commits into
mainfrom
docs-kotlin-adk-1.0-pin

Conversation

@happyhuman

@happyhuman happyhuman commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

Warning

Do not merge before adk-kotlin 1.0 is published. This PR pins versions that
do not exist yet, so the Kotlin examples project cannot resolve its
dependencies until the release lands. Opened as a draft deliberately;
earliest merge is 2026-09-02, and only once 1.0.0 is on Maven Central.

Summary

KT-23, the prerequisite that unblocks every 1.0 feature. adk-docs compiles its
Kotlin snippets against the pinned SDK, so nothing new can be documented until
this moves. No snippets and no 1.0 prose here — just the pin, so the review is
small and the risky part is the verification that has to happen after the
release.

  • examples/kotlin/build.gradle.kts: core, webserver, processor and a2a
    0.8.0 → 1.0.0.
  • The install instructions readers copy: docs/get-started/kotlin.md,
    docs/get-started/installation.md, docs/agents/models/litert-lm.md,
    docs/a2a/quickstart-consuming-kotlin.md. These track the pin for the same
    reason they did at 0.8.0 — leaving them behind hands a newcomer an SDK older
    than the snippets on the same page.

Seventeen coordinates in docs, five in the build file, and nothing left below
1.0.0 anywhere in the repo.

What is deliberately not bumped

  • The Kotlin vX.Y.Z support badges (~40 of them). Those record the release
    a feature landed in, not the current version — bumping them would assert
    that e.g. LlmAgent first appeared in 1.0. Same for the "Since adk-kotlin
    0.7.0" comment in CountInvocationPlugin.kt.
  • Skill-script help text and test fixtures — examples rather than pins.
  • The README's Maven Central badge, which is dynamic.

The API reference has to ship with this, and cannot be built yet

docs/api-reference/kotlin/ is generated Dokka output — 1,721 files — and its
index still renders 0.5.0, five releases behind. Leaving it means "adk-docs
is on 1.0" would be false the moment this merges, so it belongs in this PR, not
a follow-up.

It cannot be produced today, for the same reason the pin cannot be compiled:

tools/kotlin-api-docs/generate.sh  ->  git clone --depth 1 --branch v1.0.0 …

git ls-remote --tags https://github.com/google/adk-kotlin returns v0.8.0 as
the newest tag; there is no v1.0.0 to clone. The generator also needs
ANDROID_HOME with platforms;android-34, because adk-kotlin has androidMain
source sets — so whoever runs it needs the Android command-line tools installed
first.

This does not build yet, and that is expected

> Could not find com.google.adk:google-adk-kotlin-core:1.0.0.
> Could not find com.google.adk:google-adk-kotlin-webserver:1.0.0.
> Could not find com.google.adk:google-adk-kotlin-a2a:1.0.0.

Maven Central lists 0.8.0 as the newest release for every google-adk-kotlin-*
artifact today, and google/adk-kotlin has no v1.0.0 tag. Nothing is wrong
with the change; the artifacts simply are not there.

Note that CI will go green anyway, and that is not evidence. The
kotlin-snippets-pr-check job only builds .kt files changed in the PR, and
this PR changes none — so it will compile nothing at all. Exactly the gap that
let the 0.8.0 bump (#2143) merge with a snippet that no longer compiled.

Pre-merge checklist

Once 1.0.0 is on Maven Central, before merging:

  • Confirm the published version string really is 1.0.0 and not 1.0.0-rc.1
    or similar — five coordinates here assume it.
  • JAVA_HOME=<jdk17> ./tools/kotlin-snippets/runner.sh build — the full
    regression, not the changed-files subset. All 29 registered snippets.
  • JAVA_HOME=<jdk17> ./tools/kotlin-snippets/runner.sh lint.
  • Re-check the two third-party pins whose comments this PR marks as stale:
    Ktor 2.3.13 and a2a-java-sdk-client:1.0.0.Final. A major release is
    where a transitive version moves.
  • Diff the public API for source-breaking changes before assuming the
    snippets survive. At 0.8.0, BaseTool.run widened its args from
    Map<String, Any> to Map<String, Any?> and broke MultiAgentExample.kt;
    a major release is likelier to carry more.
  • Re-run verify_snippets.py across the pages with Kotlin tabs.
  • Regenerate the API reference and commit it here:
    bash tools/kotlin-api-docs/generate.sh 1.0.0 (needs JDK 17 and
    ANDROID_HOME with platforms;android-34). Confirm afterwards that
    docs/api-reference/kotlin/index.html renders 1.0.0, not 0.5.0.

As of today, adk-kotlin main sits 13 commits past v0.8.0 and none of them
touch core/src/commonMain, core/src/jvmMain, a2a/src or integrations/src
— so there is no known breakage yet. That is a snapshot, not a guarantee: 1.0
has not been cut.

Interaction with the open Kotlin PRs

Three PRs in flight add or touch Kotlin dependencies and will need the same
version once they land:

Verification

Honestly: none is possible today beyond what is stated. The only command run was
the compile, and it failed with the resolution errors quoted above — which is the
correct outcome for an unpublished version, and the reason this is a draft.

One process note, since it nearly cost this PR a file: the first sweep used
google-adk-kotlin[a-z-]*:0\.8\.0. That character class excludes digits, so it
skipped google-adk-kotlin-a2a — the only artifact with a digit in its name —
while matching everything else, which made the search look complete. Commit
c0a56767 fixes the coordinate and records the corrected pattern:
google-adk-kotlin[a-z0-9-]*:[0-9]+\.[0-9]+\.[0-9]+. Worth reusing at the next
bump.

KT-23. adk-docs compiles its Kotlin snippets against the pinned SDK, so no 1.0
feature can be documented until this pin moves. Prerequisite only - no snippets,
no prose about 1.0 features.

Moves the examples pin (core, webserver, processor, a2a) and the install
instructions readers copy from, which track the pin for the same reason they did
at 0.8.0: leaving them behind hands newcomers an SDK older than the snippets on
the same page.

THIS DOES NOT BUILD YET, and cannot until the artifacts are published:

    > Could not find com.google.adk:google-adk-kotlin-core:1.0.0.
    > Could not find com.google.adk:google-adk-kotlin-webserver:1.0.0.
    > Could not find com.google.adk:google-adk-kotlin-a2a:1.0.0.

Maven Central carries 0.8.0 as the newest release for every artifact today, and
google/adk-kotlin has no v1.0.0 tag. The PR is a draft until the release lands.

Two comments that pinned third-party versions against adk-kotlin 0.8.0's
catalog - Ktor 2.3.13 and a2a-java-sdk-client 1.0.0.Final - now say the match
was made against 0.8.0 and needs re-checking, rather than restating it as though
it still held. A major release is exactly where a transitive version moves.

Also note the version string is assumed to be `1.0.0`. If the release is cut as
`1.0.0-rc.1` or similar, these five coordinates need to match it.
@netlify

netlify Bot commented Aug 19, 2026

Copy link
Copy Markdown

Deploy Preview for adk-docs-preview ready!

Name Link
🔨 Latest commit c0a5676
🔍 Latest deploy log https://app.netlify.com/projects/adk-docs-preview/deploys/6a862dffbeb4b800084c5e06
😎 Deploy Preview https://deploy-preview-2152--adk-docs-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Missed on the first pass, and the reason is worth recording: the sweep used
`google-adk-kotlin[a-z-]*:0\.8\.0`, whose character class has no digits, so it
silently skipped `google-adk-kotlin-a2a` - the one artifact with a digit in its
name. Every other coordinate matched, so the search looked exhaustive and was
not.

The corrected pattern is `google-adk-kotlin[a-z0-9-]*:[0-9]+\.[0-9]+\.[0-9]+`.
Run repo-wide it now finds five live coordinates in the examples build file and
seventeen in the docs, all at 1.0.0, and nothing left below it.
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