Skip to content

Releases

v1.0.0-rc4

Choose a tag to compare

@github-actions github-actions released this 09 Nov 18:07
a08cde7

What's Changed

Bug Fixes

Other Changes

  • ci: backport unit test performance improvements to v1.0.x by @EItanya in #3559

Full Changelog: v1.0.0-rc3...v1.0.0-rc4

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 18:43
a08cde7

What's Changed

Features

Read more

v1.0.0-rc3

Choose a tag to compare

@github-actions github-actions released this 06 Nov 16:18
3548b7a

What's Changed

Features

Bug Fixes

  • fix(cli): confirm before deleting self-managed WorkerPools on uninstall by @iplay88keys in #3511
  • fix(mcp): drop invoke_agent's top-level oneOf so Gemini accepts it by @jotacamou in #3534
  • fix(taskstore): finalize failed tasks after execution cancellation by @EItanya in #3541

Other Changes

  • session/lifecycle: support force deletion without suspension by @shashankram in #3530
  • chore(deps): upgrade Substrate to rc4 and install Atelet separately by @EItanya in #3548
  • chore(deps): upgrade Substrate to v1.0.0 by @EItanya in #3555

Upgrading from v1.0.0-rc2

This release moves Substrate from v1.0.0-rc2 to v1.0.0. kagent install now installs atelet as its own substrate-atelet release, so atelet can be upgraded before ate-api-server, as Substrate's version skew policy requires.

To upgrade an install from v1.0.0-rc2, upgrade Substrate first, moving atelet to substrate-atelet, then upgrade kagent. The steps need Helm 3.17 or later. The commands use the release names and namespaces that kagent install creates.

SUBSTRATE=oci://ghcr.io/kagent-dev/substrate/helm
KAGENT=oci://ghcr.io/kagent-dev/kagent/helm
helm get values substrate -n ate-system -o yaml > substrate-values.yaml
helm get values substrate-podcert -n podcertificate-controller-system -o yaml > podcert-values.yaml

Add GoldenEgressPolicy to the preview list in substrate-values.yaml. kagent v1.0.0-rc3 needs it, and kagent install sets it for new installs.

# substrate-atelet reads the RustFS credentials from a Secret.
rustfs_key() { helm get values substrate -n ate-system -a -o json | jq -r ".rustfs.$1"; }
kubectl create secret generic kagent-rustfs-credentials -n ate-system \
  --from-literal=AWS_ACCESS_KEY_ID="$(rustfs_key accessKey)" \
  --from-literal=AWS_SECRET_ACCESS_KEY="$(rustfs_key secretKey)"
cat > atelet-values.yaml <<EOF
objectStore:
  endpoint: http://rustfs.ate-system.svc:9000
  region: us-east-1
  pathStyle: true
  credentialsSecret: kagent-rustfs-credentials
EOF

ATELET=(substrate-atelet $SUBSTRATE/substrate-atelet --version 1.0.0 -n ate-system \
  -f substrate-values.yaml -f atelet-values.yaml)
atelet_objects() { helm template "${ATELET[@]}" | kubectl get -f - --ignore-not-found -o name; }

# 1. Upgrade the certificate controller.
helm upgrade substrate-podcert $SUBSTRATE/substrate-podcert --version 1.0.0 \
  -n podcertificate-controller-system -f podcert-values.yaml --wait
# 2. Keep the atelet objects when the substrate release stops rendering them.
kubectl annotate -n ate-system --overwrite $(atelet_objects) helm.sh/resource-policy=keep
# 3. Adopt atelet in its own release and upgrade it.
helm upgrade --install "${ATELET[@]}" --take-ownership --wait
kubectl rollout status daemonset/atelet -n ate-system --timeout=5m
# 4. Upgrade the worker image, still with the v1.0.0-rc2 kagent chart.
helm upgrade kagent $KAGENT/kagent --version 1.0.0-rc2 -n kagent --reuse-values \
  --set substrateWorkerPool.workerImage=ghcr.io/kagent-dev/substrate/ateworker-gvisor:v1.0.0 \
  --wait
# 5. Upgrade the Substrate CRDs and control plane without atelet.
helm upgrade substrate-crds $SUBSTRATE/substrate-crds --version 1.0.0 -n ate-system --wait
helm upgrade substrate $SUBSTRATE/substrate --version 1.0.0 -n ate-system \
  -f substrate-values.yaml --set atelet.enabled=false --wait
# 6. Remove the keep policy.
kubectl annotate -n ate-system $(atelet_objects) helm.sh/resource-policy-
# 7. Upgrade kagent.
helm get values kagent -n kagent -o yaml > kagent-values.yaml
helm upgrade kagent-crds $KAGENT/kagent-crds --version 1.0.0-rc3 -n kagent --wait
helm upgrade kagent $KAGENT/kagent --version 1.0.0-rc3 -n kagent -f kagent-values.yaml --wait

Step 2 is required. Without it, step 5 deletes the atelet DaemonSet even though substrate-atelet owns it, because Helm deletes every object the old release listed. atelet_objects lists only objects that exist, so it skips ones Substrate v1.0.0 adds.

Step 3 restarts atelet once, as a rolling update, because substrate-atelet reads the RustFS credentials from the Secret.

Upgrade kagent last. kagent v1.0.0-rc3 sets golden egress policies, which ate-api-server rejects until step 5 enables the GoldenEgressPolicy gate.

For microVM WorkerPools, use ateworker-microvm:v1.0.0 in step 4. Update any other WorkerPools through the configuration that owns them. If you set rustfs.enabled=false, skip the Secret and set objectStore for your store instead. See the substrate-atelet values.

New Contributors

Full Changelog: v1.0.0-rc2...v1.0.0-rc3

v0.10.6

Choose a tag to compare

@github-actions github-actions released this 05 Nov 22:41
e362463

What's Changed

Bug Fixes

  • fix: move Python ADK images to Wolfi and disable Substrate on release/v0.10.x by @iplay88keys in #3539

Full Changelog: v0.10.5...v0.10.6

v1.0.0-rc2

Choose a tag to compare

@github-actions github-actions released this 04 Nov 17:35
4a5c758

What's Changed

Features

Bug Fixes

Documentation

  • docs(test): add Given/When/AssertThat testing skill by @jjamroga in #3448

Testing

  • test(e2e): deflake egress policy probes by @EItanya in #3488
  • test(secretmaterial): cover ownership checks and Secret write paths by @vedantlavale in #3451

Other Changes

  • adk/models: support Gemini endpoint overrides and Actor JWT auth by @shashankram in #3458
  • chore(deps): update google-adk[a2a] requirement from <3,>=2.12.0 to >=2.13.0,<3 in /python by @dependabot[bot] in #3478
  • chore(deps): bump opentelemetry-instrumentation-grpc from 0.66b1 to 0.66b2 in /python by @dependabot[bot] in #3482
  • chore(deps): bump google-genai from 2.33.0 to 2.34.0 in /python in the python-google-ai group across 1 directory by @dependabot[bot] in #3485
  • chore(deps): bump opentelemetry-api from 1.45.1 to 1.45.2 in /python in the python-opentelemetry group across 1 directory by @dependabot[bot] in #3473
  • chore(deps): update anthropic[vertex] requirement from >=2.2.0 to >=2.3.0 in /python by @dependabot[bot] in #3481
  • api/models: update ModelProviderConfig discovery contract by @shashankram in #3494
  • ci: scope GITHUB_TOKEN to read-only in image-scan and migration-immutability by @ayushgharat234 in #3492
  • Update metadata docs by @Stevenjin8 in #3447
  • ci: run image scans daily instead of on every push by @timflannagan in #3496
  • chore(deps): bump the npm-minor-patch group in /ui with 8 updates by @dependabot[bot] in #3472
  • chore(deps): update langsmith[otel] requirement from >=0.14.11 to >=0.14.16 in /python by @dependabot[bot] in #3480
  • chore(deps): bump astral-sh/setup-uv from 10.3.0 to 10.3.3 in the actions group across 1 directory by @dependabot[bot] in #3347
  • chore(deps): bump the python-minor-patch group across 1 directory with 5 updates by @dependabot[bot] in #3476
  • chore(deps): bump the go-minor-patch group across 1 directory with 17 updates by @dependabot[bot] in #3474
  • chore(deps): upgrade Substrate to v1.0.0-rc2 by @EItanya in #3520

New Contributors

Full Changelog: v1.0.0-rc1...v1.0.0-rc2

v0.10.5

Choose a tag to compare

@github-actions github-actions released this 04 Nov 19:49
46bedf7

What's Changed

Bug Fixes

Full Changelog: v0.10.4...v0.10.5

v1.0.0-rc1

Choose a tag to compare

@github-actions github-actions released this 30 Oct 18:50
eed2723

What's Changed

Features

Bug Fixes

  • fix(substrate): scope Substrate reads and page tokens to the watched namespaces by @danielle-mustillo in #3261
  • fix(session): expire abandoned input and auth waits by @adalundhe in #3254
  • fix(ui): keep following a chat turn when its stream breaks by @garlicKim21 in #3198
  • fix(a2a): deliver push notifications concurrently by @EItanya in #3366
  • fix(build): set the version -X targets from the Go module path by @fiunchinho in #3376
  • fix(codex): report the turn's error message by @fiunchinho in #3377
  • fix(ui): show one loading state in the agent switcher by @vedantlavale in #3237
  • fix: honor configured controller service account during install by @iplay88keys in #3406
  • fix(ui): show consistent empty states for denied substrate inventory by @supreme-gg-gg in #3392
  • fix(cli): preserve Substrate CLI access alongside controller grants by @iplay88keys in #3420
  • fix: include image pull secrets in substrate worker pool service account by @jcopi in #3443
  • fix(install): keep model credentials out of process arguments by @iplay88keys in #3446
  • fix(api): remove unused Harness status and ADK fields by @EItanya in #3454
  • fix(ci): enforce protobuf compatibility after pre-RC cleanup by @EItanya in #3455

Other Changes

  • chore: fix stale issue close message by @timflannagan in #3308
  • chore(helm): remove bundled grafana-mcp chart by @shaktisingh404 in #3294
  • build(ui): serve the UI from distroless nginx with a Go entrypoint by @Charlesthebird in #3316
  • chore(deps): update Substrate to v0.6.0 by @EItanya in #3325
  • [Helm] Use full DNS name for kagent tools MCP server by @Stevenjin8 in #3334
  • fix helm full DNS name tests by @Stevenjin8 in #3336
  • chore(deps): upgrade Substrate to v0.7.0-alpha1 by @EItanya in #3338
  • chore(deps): update setuptools requirement from >=84.0.0 to >=84.2.1 in /python by @dependabot[bot] in #3352
  • build: Remove redundant Go module downloads by @timflannagan in #3346
  • chore(deps): bump google-genai from 2.31.0 to 2.33.0 in /python in the python-google-ai group by @dependabot[bot] in #3349
  • chore(deps): bump the python-minor-patch group in /python with 5 updates by @dependabot[bot] in #3351
  • Add a helm configuration option for SandboxConfig ref by @jcopi in #3357
  • chore(deps): update anthropic[vertex] requirement from >=1.15.0 to >=2.2.0 in /python by @dependabot[bot] in #3353
  • chore(deps): bump the npm-minor-patch group in /ui with 5 updates by @dependabot[bot] in #3348
  • build(ui): build the UI on node:24.22.1-alpine by @Charlesthebird in #3383
  • build: decouple protobuf generation from builds by @timflannagan in #3381
  • refactor(session)!: remove public suspend and resume controls by @EItanya in #3409
  • refactor(cli): share chart name between rendering and installation by @iplay88keys in #3410
  • core: support cross-namespace ModelConfig and RemoteMCPServer with allowedNamespaces by @shashankram in #3382
  • refactor(cli): extract reusable installation library by @iplay88keys in #3427
  • chore: remove generated env var docs and check by @timflannagan in #3434
  • chore(deps): upgrade Substrate to v0.7.0-alpha2 by @EItanya in #3444
  • refactor(api)!: make pre-RC API breaks for future machine principals by @EItanya in #3453
  • chore: upgrade Substrate to v1.0.0-rc1 by @EItanya in #3457

New Contributors

Full Changelog: v1.0.0-alpha17...v1.0.0-rc1

v1.0.0-alpha17

Choose a tag to compare

@github-actions github-actions released this 21 Oct 17:07
8392184

What's Changed

Features

  • feat: support gateway token passthrough for embedded controllers by @codyhartsook in #3263
  • feat(auth): authenticate Substrate actor calls to the control plane by @EItanya in #3282

Bug Fixes

  • fix(adk): enable default tools and simplify sandbox execution by @supreme-gg-gg in #3283
  • fix(cli): uninstall everything kagent install creates by @iplay88keys in #3285
  • fix(auth): enforce scoped authorization for Kubernetes-backed resources by @supreme-gg-gg in #3281
  • fix(substrate): check existing atespaces before creating them by @spichen in #3260
  • fix(docker): give the Go runtime user a writable HOME by @teemow in #3161
  • fix(deps): bump Go to 1.27.3 for security fixes by @EItanya in #3304

Testing

  • test(core): cover token threshold compaction through harnesses by @adalundhe in #3291

Other Changes

  • ci: run migration immutability check on every PR so it can be required by @iplay88keys in #3293

Full Changelog: v1.0.0-alpha16...v1.0.0-alpha17

v0.10.4

Choose a tag to compare

@jjamroga jjamroga released this 21 Oct 22:46
79fd597

This is an incomplete release. All necessary runtime artifacts are available, minus CLI. We plan to do a followup release.

What's Changed

Bug Fixes

  • fix(controller): accept a RemoteMCPServer labeled kagent.dev/discovery=disabled without listing its tools (backport to release/v0.10.x) by @teemow in #2753
  • fix(go): require patched certificate verification in v0.10.x by @jjamroga in #3310

Full Changelog: v0.10.3...v0.10.4

v1.0.0-alpha16

Choose a tag to compare

@github-actions github-actions released this 19 Oct 19:11
1f7dd92

What's Changed

Features

Other Changes

  • chore(deps): update anthropic[vertex] requirement from >=1.13.0 to >=1.15.0 in /python by @dependabot[bot] in #3272
  • chore(deps): bump astral-sh/setup-uv from 7.6.0 to 10.3.0 by @dependabot[bot] in #3266
  • chore(deps): update google-adk[a2a] requirement from <3,>=2.11.0 to >=2.12.0,<3 in /python by @dependabot[bot] in #3273
  • chore(deps): bump the go-minor-patch group across 1 directory with 6 updates by @dependabot[bot] in #3265
  • chore(deps): bump the npm-minor-patch group across 1 directory with 10 updates by @dependabot[bot] in #3280

Full Changelog: v1.0.0-alpha15...v1.0.0-alpha16

⌂ 换网址