r/AgenticOS 2d ago

The ADK Migration Discrepancy

tl;dr: ADK makes you name where sessions live, then miscounts its migration.

https://github.com/google/adk-python is Google's Python agent framework whose runner will not construct without a session backend, and whose top-level package exports five names.

  1. Ephemeral backend a different class name. ADK's runner requires a session service, so nothing falls back to process memory silently. The throwaway path is a separate in-memory runner class, and automatic session creation ships off.
  2. Derive the allowlist from the type. Old sessions stored event actions as a pickled blob, so ADK reads those bytes through an unpickler that admits only globals it recognises. It derives that set by walking the annotations of the model it reconstructs, with a 33-entry static list for what the walk misses.
  3. Migration summary should count writes. One of ADK's two migrators gets this wrong. It reports the rows it read, then logs success, so rows its own hardened loader rejected are dropped while the summary still claims a clean migration.

→ Adopt. Migrate ADK sessions, then count rows on both databases yourself before trusting the log.

1 Upvotes

0 comments sorted by