1. Partial Events — Real-time Text Streaming
Yield ADK events withpartial=True to stream text chunks to the client in real time. Each chunk
is forwarded as a transitory STREAM_DELTA artifact update:
STREAM_DELTA artifact is transitory — it is not persisted to the Task’s durable state.
The final response is determined by a2a_outbox, non-partial event content, or accumulated delta
text. See Message Mapping for outbound precedence rules.
2. Non-partial Events
When a non-partial ADK event is yielded:- The open
STREAM_DELTAstream is closed (if streaming was active). - Content parts are emitted as a
TaskStatusUpdateEvent(working, message=...). - Artifacts declared in
event.actions.artifact_deltaare loaded and forwarded asTaskArtifactUpdateEvent.
3. File and Data Artifacts
Usectx.artifact_service to save file or data artifacts. Saved artifacts are automatically
forwarded to the client as TaskArtifactUpdateEvent:
artifact_delta maps a filename to its saved version. Aion Server automatically
forwards each declared artifact to the client as a TaskArtifactUpdateEvent.
4. Artifact Namespaces
The filename prefix controls artifact scope:| Prefix | Scope |
|---|---|
user:... | User-scoped — shared across all sessions for this user |
| (none) | Session-scoped — private to the current context |