Skip to content

Release Notes - v0.3.3

Choose a tag to compare

@zhixiangxue zhixiangxue released this 22 Apr 08:03
· 22 commits to main since this release

chakpy 0.3.3 Release Notes

Date: 2026-04-22


Bug fix: streaming mode attachments not propagated to AIMessage

Affected version: 0.3.2
Fixed in: 0.3.3

In streaming mode (stream=True or event=True), when a tool call returned attachment:// URIs, the resulting Attachment objects were correctly placed on the final MessageChunk but not on the AIMessage. As a result, response.attachments was always empty for any streaming call that involved tool-produced attachments.

Non-streaming mode (execute_loop) was not affected.

Fix: attachments=all_attachments is now also passed to the AIMessage constructor in the streaming path (execute_loop_stream, manager.py), consistent with the non-streaming path.

# Before (0.3.2) — streaming path
final_message = AIMessage(
    content=accumulated_content,
    metadata=_dict_to_metadata(last_metadata),
    # attachments missing
)

# After (0.3.3) — streaming path
final_message = AIMessage(
    content=accumulated_content,
    metadata=_dict_to_metadata(last_metadata),
    attachments=all_attachments,  # fixed
)