github google/adk-go v2.6.0

5 hours ago

What's Changed

  • fix(artifact): keep session filenames out of shared listings by @ktsoator in #1673
  • test(workflow): enable TestRunNode_ErrInvalidRunNodeContext_OnStaticContext by @sushant-me in #1679
  • fix(mcptoolset): validate connection configuration during construction by @ktsoator in #1687
  • test(telemetry): replace hand-written telemetry expectations with record/replay goldens by @RKest in #1640
  • fix(workflow): build route edges in a deterministic order by @wolo-lab in #1268
  • fix(workflow): single-flight RunNode idempotency cache by @wolo-lab in #1043
  • fix(skilltoolset): count skill metadata limits in runes by @Harbor404 in #1709
  • fix(artifact): keep session filenames out of GCS shared listings by @ktsoator in #1708
  • fix(launcher): check Host and Origin on every web launcher route by @jjsasha63 in #1641
  • chore(deps): bump google.golang.org/genai from 1.71.0 to 1.72.0 by @baptmont in #1714
  • feat(remoteagent): apply per-request auth to A2A via Config.Auth by @wolo-lab in #1150
  • fix(utils): respect Nullable field on nil values during schema validation by @moritzwilhelm in #1566
  • fix(examples): return an error for missing image data by @ktsoator in #1509
  • test(compaction): actually run two writers at once by @baptmont in #1485
  • fix(server): default a zero SSE write timeout to 120s by @Vivek1106-04 in #1686
  • fix(llminternal): re-evaluate toolsets on every step in toolProcessor by @nuthalapativarun in #785
  • docs(workflow): correct doc comments that describe fields and behaviour that do not exist by @sushant-me in #1711
  • chore(deps): bump the go-minor-patch group with 5 updates by @dependabot[bot] in #1725
  • fix(session/inmemory): holding sess.mu accross the eventCopy creation in AppendEvent by @dhakad22klx in #1575
  • fix(runner): preserve buffered live events at stream end by @Ultronen in #1547
  • fix(llmagent): clone Tools and Toolsets slices in constructor to prevent backing array aliasing by @somuai in #1493
  • fix(session/database): surface JSON marshal errors on state writes by @Huang-404-Q in #1551
  • fix(llminternal): classify a dropped live connection by type, not error text by @harshitwandhare in #1603
  • fix(mcptoolset): allow callers to close MCP sessions by @ktsoator in #1713
  • fix(llminternal): omit foreign thoughts from agent context by @jabrailkhalil in #1719
  • fix(mcptoolset): honor context cancellation while waiting for sessions by @via2004 in #1717
  • docs: fix stale method names in doc comments by @PratikDhanave in #1721
  • fix(server/triggers): honor MaxConcurrentRuns in PubSubController by @PratikDhanave in #1720
  • chore(lint): forbid process-wide logging in library code by @jjsasha63 in #1649
  • fix(sequentialagent): serialize live completion tool injection by @jabrailkhalil in #1722
  • fix(llminternal): leave ${var} and {var} placeholders literal by @Vivek1106-04 in #1682
  • docs(memory): fix stale "string" wording on MemoryEntry.Timestamp by @PratikDhanave in #1745
  • test(agentanalytics): cover the retry that opens a fresh stream by @Trainingcqy in #1527
  • fix(vertexai): preserve ExecutableCode and CodeExecutionResult in session storage by @karthik-0306 in #1729
  • test(examples): cover image precedence and empty results by @ktsoator in #1567
  • fix(model/gemini): preserve empty text on thought-signature parts by @adilalperenciftci in #1639
  • feat(mcptoolset): forward request-scoped metadata to MCP tool calls by @jjsasha63 in #1429
  • fix(workflowagents): stop loop and sequential agents on sub-agent error by @Vivek1106-04 in #1684
  • fix(adkrest): render nested workflow clusters in graph images by @leilei3167 in #1724
  • fix(adkrest): bound /run_live messages, dead peers and concurrent sessions by @jjsasha63 in #1648
  • test(vertexai): keep RPC replay independent of external network by @Ultronen in #1548
  • fix(memory): normalize punctuation in in-memory search by @tejas5038 in #1565
  • chore(lint): add misspell linter and perform US spelling sweep by @somuai in #1465
  • test(llminternal): cover the nil RunConfig branch in callLLM by @baptmont in #1368
  • fix(session/database): lock app and user state rows in AppendEvent by @Vivek1106-04 in #1743
  • test(llmagent): drive tail retention end to end against a recorded model by @baptmont in #1438
  • fix(runner): preserve BeforeRun plugin responses by @ktsoator in #1598
  • fix(agent): synchronize concurrent artifact saves by @ktsoator in #1756
  • docs(workflow): fix Run signature in NewRequestInputEvent example by @PratikDhanave in #1746
  • refactor(agent): remove redundant Context method declarations by @moodbased in #1758
  • docs(agent): clarify agent callback error behavior by @ktsoator in #1761
  • chore(deps): bump the go-minor-patch group with 12 updates by @dependabot[bot] in #1798
  • fix(llminternal): correct misleading "global" in appendInstructions error by @PratikDhanave in #1804
  • fix(agenttool): wrap the runner.New error instead of discarding it by @PratikDhanave in #1803
  • docs(telemetry): fix StartNodeSpan doc for invoke_workflow by @PratikDhanave in #1805
  • fix(llminternal): guard nil first candidate in streaming aggregator by @PratikDhanave in #1802
  • docs(mcptoolset): fix constructor example and schema comment by @ktsoator in #1779
  • feat(exp): add the experimental /apps/{app_name}/app-info endpoint by @wojtas000 in #1404
  • fix(loopagent): return when there are no sub-agents by @anzal1 in #1780
  • chore(deps): bump google.golang.org/grpc from 1.83.1 to 1.83.2 in /plugin/agentanalytics in the go_modules group across 1 directory by @dependabot[bot] in #1814
  • Align vertexai session service via ADK REST API with other impl by @kdroste-google in #1571
  • fix: reject Cloud Run service name beginning with '-' by @herdiyana256 in #1505
  • chore(version): bump the tagged version constant to 2.6.0 by @wolo-lab in #1817
  • feat(auth): refresh and retry once on a downstream 401/403 by @wolo-lab in #1136
  • docs(artifact): clarify missing-version deletion behavior by @ktsoator in #1767
  • fix(runner): drop nil parts from live requests by @Trainingcqy in #1795
  • fix(server/triggers): let the Pub/Sub and Eventarc endpoints require a Google OIDC token by @wolo-lab in #1737
  • fix(model/gemini): let the genai SDK resume paused generations by @baptmont in #1822

New Contributors

Full Changelog: v2.5.0...v2.6.0

Don't miss a new adk-go release

NewReleases is sending notifications on new releases.