Skip to content

Preserve supplied Responses fields in saved trajectories - #938

Merged
bradhilton merged 2 commits into
mainfrom
thanos/responses-wire-serialization-20260922
Sep 23, 2026
Merged

bradhilton merged 2 commits into
mainfrom
thanos/responses-wire-serialization-20260922

Conversation

@bradhilton

@bradhilton bradhilton commented Sep 22, 2026 •

Copy link
Copy Markdown
Collaborator

Saving and reloading a Responses trajectory currently materializes SDK defaults that were absent from the provider response. A reasoning item without status can therefore return as status: null, causing the next tool follow-up to be rejected. Serialize only supplied Responses fields while preserving explicitly supplied nulls, extra metadata, tool IDs, and encrypted reasoning content.

The serializer is scoped to ResponsesExchange; existing Chat serialization and the adopted Dynamo response validator remain intact. This PR is stacked on #937 (aaf74102) over current ART main b66b3d67, preserving the adopted inference and planner changes.

Validation: Python 3.12 AST and exact source-parity checks passed on 3bad3d90. The 28 focused cases cover compact/full Python and JSON persistence, nested include/exclude, explicit nulls, legacy tapes, and unchanged Chat output. Their source is unchanged from its previously qualified version; CI is pending on this new head. No native or provider execution was used for this rebase.

@bradhilton
bradhilton force-pushed the thanos/responses-wire-serialization-20260922 branch from a138bf2 to 9236132 Compare September 22, 2026 20:58
@bradhilton
bradhilton changed the base branch from main to thanos/tinker-inference-lazy-20260922 September 22, 2026 21:00
@bradhilton
bradhilton force-pushed the thanos/tinker-inference-lazy-20260922 branch from 51d071b to aaf7410 Compare September 22, 2026 23:45
@bradhilton
bradhilton force-pushed the thanos/responses-wire-serialization-20260922 branch from 9236132 to 3bad3d9 Compare September 22, 2026 23:46
@bradhilton
bradhilton changed the base branch from thanos/tinker-inference-lazy-20260922 to main September 23, 2026 13:58
@bradhilton
bradhilton marked this pull request as ready for review September 23, 2026 13:59
@bradhilton
bradhilton merged commit 376c68b into main Sep 23, 2026
7 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.

1 participant