Skip to content

Prepare 10.8.1 servicing release#7646

Merged
jeffhandley merged 3 commits into
release/10.8from
jeffhandley/prepare-10.8.1
Jul 20, 2026
Merged

Prepare 10.8.1 servicing release#7646
jeffhandley merged 3 commits into
release/10.8from
jeffhandley/prepare-10.8.1

Conversation

@jeffhandley

@jeffhandley jeffhandley commented Jul 20, 2026

Copy link
Copy Markdown
Member

Prepare the 10.8.1 servicing release for the following packages:

  • Microsoft.Extensions.AI
  • Microsoft.Extensions.AI.Abstractions
  • Microsoft.Extensions.AI.OpenAI

Commits included

jeffhandley and others added 3 commits July 20, 2026 15:43
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 725eeebf-4d23-444d-b6eb-5260d7492cd0
…se) encrypted reasoning (#7629)

* Fix OpenAI Responses encrypted reasoning id round-trip for store=false resume

The streaming path dropped the reasoning item's service assigned id, so on a
stateless (store=false) resume the reconstructed reasoning item had no id and the
Azure AI Foundry project scoped Responses endpoint rejected the request with
HTTP 400 invalid_payload. RawRepresentation could not carry the id because it is
[JsonIgnore] and does not survive session serialization between turns.

Carry the reasoning item id in the reasoning content's AdditionalProperties, which
survives both content coalescing and JSON serialization, and restore it on the
outgoing request (handling both string and JsonElement values). Adds a streaming
round-trip test that serializes and rehydrates the history to model a persisted
human in the loop approval session.

Refs #7628, microsoft/agent-framework#7067

* Use first-class TextReasoningContent.ItemId to roundtrip reasoning id

Replaces the AdditionalProperties based carrier from the previous commit with a
first class optional TextReasoningContent.ItemId property, marked [Experimental]
(MEAI001). Content coalescing preserves it, and the OpenAI Responses client
populates and consumes it, so the reasoning item id survives both coalescing and
JSON serialization of the chat history and is sent back on stateless (store=false)
resume. The typed, serializable property also removes the need to special case
JsonElement values when reading the id back.

The AdditionalProperties approach is kept in history (previous commit) for backtrack.

Refs #7628, microsoft/agent-framework#7067

* Fix stale test comment to reference TextReasoningContent.ItemId

The roundtrip test comment still referenced the AdditionalProperties carrier from
the earlier commit; the current implementation roundtrips the reasoning item id via
the TextReasoningContent.ItemId property. Addresses PR review feedback.

Refs #7628, microsoft/agent-framework#7067

* Revert "Fix stale test comment to reference TextReasoningContent.ItemId"

This reverts commit bc42d22.

* Revert "Use first-class TextReasoningContent.ItemId to roundtrip reasoning id"

This reverts commit 6fe9943.

* Use named arguments for CreateReasoningContent encrypted-content call

Pass protectedData and itemId by name at the streaming encrypted-content call site to avoid misreading the positional encrypted-content argument. No behavior change.

---------

Co-authored-by: Tarek Mahmoud Sayed <tarekms@microsoft.com>
…chat history (#7617)

* Address fcc/frc ordering bug when using approvals and service stored chat history

* Address PR comments

* Address PR comments

@tarekgh tarekgh left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@jeffhandley
jeffhandley enabled auto-merge (rebase) July 20, 2026 23:25
@jeffhandley
jeffhandley merged commit e9be58a into release/10.8 Jul 20, 2026
5 checks passed
@jeffhandley
jeffhandley deleted the jeffhandley/prepare-10.8.1 branch July 20, 2026 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants