Skip to content

Improve content type detection from responses#49

Merged
kzu merged 1 commit intomainfrom
dev/content-type
Jan 5, 2026
Merged

Improve content type detection from responses#49
kzu merged 1 commit intomainfrom
dev/content-type

Conversation

@kzu
Copy link
Member

@kzu kzu commented Jan 5, 2026

And also default format to Uri if not provided via request options.

The file extension > mime-type mapping makes this somewhat future-proof if the service ever starts returning non-jpeg format.

We'd need to update the library to provide the desired format anyway since there isn't a way currently of doing so.

And also default format to Uri if not provided via request options.
@kzu kzu added the enhancement New feature or request label Jan 5, 2026
@kzu kzu enabled auto-merge (squash) January 5, 2026 20:24
@kzu
Copy link
Member Author

kzu commented Jan 5, 2026

2 failed 22 passed 2 failed 18 skipped
24 passed 24 passed 18 skipped

🧪 Details on Ubuntu 24.04.3 LTS
❌ xAI.Tests.SanityChecks.IntegrationTest
Grpc.Core.RpcException : Status(StatusCode="Internal", Detail="internal server error")
   at xAI.GrokChatClient.GetResponseAsync(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken) in /_/src/xAI/GrokChatClient.cs:line 40
   at Microsoft.Extensions.AI.FunctionInvokingChatClient.GetResponseAsync(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)
   at xAI.Tests.SanityChecks.IntegrationTest() in /_/src/xAI.Tests/SanityChecks.cs:line 167
❌ xAI.Tests.SanityChecks.IntegrationTestStreaming
Grpc.Core.RpcException : Status(StatusCode="Internal", Detail="internal server error")
   at Grpc.Net.Client.Internal.HttpContentClientStreamReader`2.MoveNextCore(CancellationToken cancellationToken)
   at Grpc.Core.AsyncStreamReaderExtensions.ReadAllAsyncCore[[T]](IAsyncStreamReader`1 streamReader, CancellationToken cancellationToken)+MoveNext()
   at Grpc.Core.AsyncStreamReaderExtensions.ReadAllAsyncCore[[T]](IAsyncStreamReader`1 streamReader, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
   at xAI.GrokChatClient.<GetStreamingResponseAsync>g__CompleteChatStreamingCore|8_0(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+MoveNext() in /_/src/xAI/GrokChatClient.cs:line 68
   at xAI.GrokChatClient.<GetStreamingResponseAsync>g__CompleteChatStreamingCore|8_0(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+MoveNext() in /_/src/xAI/GrokChatClient.cs:line 68
   at xAI.GrokChatClient.<GetStreamingResponseAsync>g__CompleteChatStreamingCore|8_0(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
   at Microsoft.Extensions.AI.FunctionInvokingChatClient.GetStreamingResponseAsync(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+MoveNext()
   at Microsoft.Extensions.AI.FunctionInvokingChatClient.GetStreamingResponseAsync(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+MoveNext()
   at Microsoft.Extensions.AI.FunctionInvokingChatClient.GetStreamingResponseAsync(IEnumerable`1 messages, ChatOptions options, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
   at System.Linq.AsyncEnumerable.<ToListAsync>g__Impl|188_0[[TSource]](ConfiguredCancelableAsyncEnumerable`1 source)
   at System.Linq.AsyncEnumerable.<ToListAsync>g__Impl|188_0[[TSource]](ConfiguredCancelableAsyncEnumerable`1 source)
   at xAI.Tests.SanityChecks.IntegrationTestStreaming() in /_/src/xAI.Tests/SanityChecks.cs:line 177
🧪 Details on Ubuntu 24.04.3 LTS

from retest v1.1.0 on .NET 10.0.1 with 💜 by @devlooped

@kzu kzu merged commit 1ecea39 into main Jan 5, 2026
11 of 13 checks passed
@kzu kzu deleted the dev/content-type branch January 5, 2026 20:40
@devlooped devlooped locked and limited conversation to collaborators Feb 5, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant