Skip to content

fix: allow disabling kagent model streaming - #3028

Merged
EItanya merged 2 commits into
mainfrom
fix/modelconfig-streaming
Oct 1, 2026
Merged

EItanya merged 2 commits into
mainfrom
fix/modelconfig-streaming

Conversation

@EItanya

@EItanya EItanya commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

Model endpoints that reject streaming currently fail every kagent turn because the translator always enables it. This adds ModelConfig.spec.stream, defaulting to true, so stream: false works with OpenAI Chat Completions and Responses. A2A task events remain streamable.

The root model's setting applies to shared subagents through the runner. Changes prepare a new revision, so a new session is needed to use the updated setting. CRDs, Helm copies, and usage documentation are included.

Validated with the translator and v1alpha3 API tests, Go ADK model and A2A tests, and make -C go lint (0 issues). The runtime regression completes a real Go ADK turn against a mock that rejects streaming for both OpenAI API formats. Cluster E2E coverage is added but has not been run locally.

Signed-off-by: Eitan Yarmush <eitan.yarmush@solo.io>
@EItanya
EItanya requested review from a team and supreme-gg-gg as code owners September 30, 2026 23:13
@github-actions github-actions Bot added the bug Something isn't working label Sep 30, 2026
@blacksmith-sh

This comment has been minimized.

Signed-off-by: Eitan Yarmush <eitan.yarmush@solo.io>
@EItanya
EItanya added this pull request to the merge queue Oct 1, 2026
Merged via the queue into main with commit ee0db68 Oct 1, 2026
30 checks passed
@EItanya
EItanya deleted the fix/modelconfig-streaming branch October 1, 2026 01:26
teemow added a commit to teemow/kagent that referenced this pull request Oct 2, 2026
* upstream/main: (79 commits)
  fix(translator): accept Mistral ModelConfigs in v1alpha3 (kagent-dev#3008)
  fix: allow disabling kagent model streaming (kagent-dev#3028)
  feat(helm): make the controller ServiceAccount optional (kagent-dev#3022)
  chore: bump retired gemini 2.5 default models to 3.5 (kagent-dev#3027)
  fix(api): defer unsupported configuration fields (kagent-dev#3007)
  docs: update README for the v1 architecture (kagent-dev#2996)
  fix: keep Go ADK SQLite connections out of VM snapshots (kagent-dev#3004)
  fix(ui): report harness delete failures (kagent-dev#2964)
  fix: repair image scans and use uv-managed Python (kagent-dev#2995)
  fix(e2e): wait for controller health and parallelize independent tests (kagent-dev#2993)
  fix(adk): pass MCP embedded resource text to OpenAI-compatible models (kagent-dev#2992)
  fix(controller): simplify agent preparation and retry handling (kagent-dev#2994)
  chore(deps): bump filelock from 3.29.4 to 4.0.3 in /python (kagent-dev#2982)
  chore(deps): bump the python-minor-patch group in /python with 6 updates (kagent-dev#2977)
  chore(deps): bump the python-google-ai group in /python with 2 updates (kagent-dev#2975)
  chore(deps): update wheel requirement from >=0.47.0 to >=0.48.0 in /python (kagent-dev#2981)
  chore(deps): update anthropic[vertex] requirement from >=0.120.0 to >=1.8.0 in /python (kagent-dev#2985)
  chore(deps): bump mcp from 1.29.0 to 2.2.0 in /python (kagent-dev#2984)
  fix(adk): keep Ollama tool call argument order stable across requests (kagent-dev#2988)
  chore(deps): update google-adk[a2a] requirement from <3,>=2.6.2 to >=2.9.2,<3 in /python (kagent-dev#2983)
  ...

Signed-off-by: Timo Derstappen <teemow@gmail.com>

# Conflicts:
#	go/adk/pkg/models/anthropic_adk.go
#	go/adk/pkg/models/anthropic_adk_test.go
#	go/core/internal/translator/adkconfig/model_test.go
#	python/packages/kagent-adk/src/kagent/adk/models/_anthropic.py
teemow added a commit to teemow/kagent that referenced this pull request Oct 2, 2026
* upstream/main: (79 commits)
  fix(translator): accept Mistral ModelConfigs in v1alpha3 (kagent-dev#3008)
  fix: allow disabling kagent model streaming (kagent-dev#3028)
  feat(helm): make the controller ServiceAccount optional (kagent-dev#3022)
  chore: bump retired gemini 2.5 default models to 3.5 (kagent-dev#3027)
  fix(api): defer unsupported configuration fields (kagent-dev#3007)
  docs: update README for the v1 architecture (kagent-dev#2996)
  fix: keep Go ADK SQLite connections out of VM snapshots (kagent-dev#3004)
  fix(ui): report harness delete failures (kagent-dev#2964)
  fix: repair image scans and use uv-managed Python (kagent-dev#2995)
  fix(e2e): wait for controller health and parallelize independent tests (kagent-dev#2993)
  fix(adk): pass MCP embedded resource text to OpenAI-compatible models (kagent-dev#2992)
  fix(controller): simplify agent preparation and retry handling (kagent-dev#2994)
  chore(deps): bump filelock from 3.29.4 to 4.0.3 in /python (kagent-dev#2982)
  chore(deps): bump the python-minor-patch group in /python with 6 updates (kagent-dev#2977)
  chore(deps): bump the python-google-ai group in /python with 2 updates (kagent-dev#2975)
  chore(deps): update wheel requirement from >=0.47.0 to >=0.48.0 in /python (kagent-dev#2981)
  chore(deps): update anthropic[vertex] requirement from >=0.120.0 to >=1.8.0 in /python (kagent-dev#2985)
  chore(deps): bump mcp from 1.29.0 to 2.2.0 in /python (kagent-dev#2984)
  fix(adk): keep Ollama tool call argument order stable across requests (kagent-dev#2988)
  chore(deps): update google-adk[a2a] requirement from <3,>=2.6.2 to >=2.9.2,<3 in /python (kagent-dev#2983)
  ...

Signed-off-by: Timo Derstappen <teemow@gmail.com>
alexdarbyshire pushed a commit to alexdarbyshire/kagent that referenced this pull request Oct 5, 2026
Model endpoints that reject streaming currently fail every kagent turn
because the translator always enables it. This adds
`ModelConfig.spec.stream`, defaulting to `true`, so `stream: false`
works with OpenAI Chat Completions and Responses. A2A task events remain
streamable.

The root model's setting applies to shared subagents through the runner.
Changes prepare a new revision, so a new session is needed to use the
updated setting. CRDs, Helm copies, and usage documentation are
included.

Validated with the translator and v1alpha3 API tests, Go ADK model and
A2A tests, and `make -C go lint` (0 issues). The runtime regression
completes a real Go ADK turn against a mock that rejects streaming for
both OpenAI API formats. Cluster E2E coverage is added but has not been
run locally.

---------

Signed-off-by: Eitan Yarmush <eitan.yarmush@solo.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants