Skip to content

Conversation

@crickman
Copy link
Contributor

@crickman crickman commented Dec 12, 2025

Minor, non-breaking tweak based on API surface review:

image
Microsoft Reviewers: Open in CodeFlow

Corresponds with: microsoft/agent-framework#2819

@crickman crickman requested a review from a team as a code owner December 12, 2025 17:52
Copilot AI review requested due to automatic review settings December 12, 2025 17:52
@github-actions github-actions bot added the area-ai Microsoft.Extensions.AI libraries label Dec 12, 2025
@stephentoub
Copy link
Member

stephentoub commented Dec 12, 2025

It is breaking, actually. Nullable<bool> and bool are different types, making this a binary breaking change (on Experimental surface area). It's also source breaking, as existing code that tried to set the property to a nullable will fail to compile.

As I told @SergeyMenshykh this morning, I'm also not convinced we should change it:
"On the one hand, a provider shouldn't be free to interpret null to mean true, so having a tri-state value to mean yes/no/providerschoice doesn't really make sense here. On the other hand, it's nice to know whether the properties have been set explicitly, and null indicates it hasn't."

Having the null state allows a consumer of the options to infer some amount of intent. And it can be documented that a provider must interpret null as false.

@crickman
Copy link
Contributor Author

Ah ok, sounds good.

@crickman crickman closed this Dec 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-ai Microsoft.Extensions.AI libraries

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants