Fix CreateMessageRule.Role to be of type Role (#264)

This commit is contained in:
Stephen Toub 2025-04-10 10:51:41 -04:00 • committed by GitHub
commit 45dcfe07ca
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 13 additions and 13 deletions

View file

@ -926,7 +926,7 @@ public static class McpClientExtensions
{
Content = content,
Model = chatResponse.ModelId ?? "unknown",
Role = lastMessage?.Role == ChatRole.User ? "user" : "assistant",
Role = lastMessage?.Role == ChatRole.User ? Role.User : Role.Assistant,
StopReason = chatResponse.FinishReason == ChatFinishReason.Length ? "maxTokens" : "endTurn",
};
}

View file

@ -50,5 +50,5 @@ public class CreateMessageResult
/// Gets or sets the role of the user who generated the message.
/// </summary>
[JsonPropertyName("role")]
public required string Role { get; init; }
public required Role Role { get; init; }
}

View file

@ -142,7 +142,7 @@ public static class McpServerExtensions
ModelPreferences = modelPreferences,
}, cancellationToken).ConfigureAwait(false);
return new(new ChatMessage(new(result.Role), [result.Content.ToAIContent()]))
return new(new ChatMessage(result.Role is Role.User ? ChatRole.User : ChatRole.Assistant, [result.Content.ToAIContent()]))
{
ModelId = result.Model,
FinishReason = result.StopReason switch