namespace AIStudio.Tools.ToolCallingSystem.Harness;
///
/// The outcome of one round of a tool calling conversation, in a shape that no longer depends on
/// the provider API it came from.
///
///
/// The text the model produced, empty when it only requested tool calls. The loop reads this to
/// tell an answered round from a silent one; it does not show it, because the very same text has
/// already reached the user as deltas while the round was running.
///
/// The tool calls the model requested, empty when it answered instead.
/// Sources the provider itself attached, such as those of a provider-native web search.
public sealed record ToolCallingRound(string TextOutput, IReadOnlyList Calls, IReadOnlyList Sources);