Skip to content

Fix/aio sandbox url and sse - #1209

Merged
yaozheng-fang merged 2 commits into
volcengine:mainfrom
xgtcode:fix/aio-sandbox-url-and-sse-id
Nov 5, 2026
Merged

yaozheng-fang merged 2 commits into
volcengine:mainfrom
xgtcode:fix/aio-sandbox-url-and-sse-id

Conversation

@xgtcode

@xgtcode xgtcode commented Nov 5, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Update AIO sandbox image defaults and related Studio environment handling.
  • Make /run_sse SSE payload event IDs unique for streaming partial events by appending :veid:<n> at the interface layer.
  • Keep final non-partial ADK event IDs unchanged when possible so feedback/session lookup continues to use the original ADK event ID.

Details

ADK 2.6+ may reuse the same Event.id across streaming partial: true chunks. Studio currently deduplicates streamed events by payload id, so repeated partial IDs can cause later streamed content to be dropped.

This PR fixes the compatibility issue at the SSE output boundary:

  • partial: true events are emitted with derived IDs like original-id:veid:0.
  • first non-partial/final events keep their original ADK ID.
  • duplicate IDs within the same SSE response are rewritten with :veid:<n>.
  • ADK session event IDs are not modified.

Covered paths:

  • AgentKit dynamic /run_sse
  • generated runtime dynamic /run_sse
  • harness /run_sse override
  • matching /invoke SSE output paths

Compatibility

This does not change ADK runner/session internals. Final event IDs remain compatible with feedback and session-based lookup in the normal path.

Native A2A protocol fields are not changed; only ADK-like SSE payloads emitted to Studio are adapted.

Verification

  • uv run --extra dev pre-commit run --all-files passed
  • uv run --extra dev pytest tests/integrations/agentkit/test_app.py tests/cloud/test_harness_app_http.py tests/cli/test_generated_agent_backend_codegen_extended.py -q passed
    • 121 passed

@yaozheng-fang
yaozheng-fang merged commit e5bfe04 into volcengine:main Nov 5, 2026
17 checks passed
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.

2 participants