From 8dc2645ad93349cfa0b9947ca267c3179fae457e Mon Sep 17 00:00:00 2001 From: Matthias Howell Date: Thu, 23 Apr 2026 15:40:30 -0400 Subject: [PATCH 01/25] Adds Valkey to chat message history --- .gitignore | 1 + dotnet/Directory.Packages.props | 2 + dotnet/agent-framework-dotnet.slnx | 4 + ...WithMemory_Step03_MemoryUsingValkey.csproj | 22 + .../Program.cs | 80 +++ .../README.md | 31 ++ ...ry_Step03_MemoryUsingValkey_Bedrock.csproj | 20 + .../Program.cs | 79 +++ .../README.md | 42 ++ .../Microsoft.Agents.AI.Valkey.csproj | 40 ++ .../ValkeyChatHistoryProvider.cs | 314 +++++++++++ .../ValkeyContextProvider.cs | 493 ++++++++++++++++++ .../ValkeyProviderScope.cs | 58 +++ ...icrosoft.Agents.AI.Valkey.UnitTests.csproj | 11 + .../TestHelpers.cs | 57 ++ .../ValkeyChatHistoryProviderTests.cs | 325 ++++++++++++ .../ValkeyContextProviderTests.cs | 277 ++++++++++ 17 files changed, 1856 insertions(+) create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/AgentWithMemory_Step03_MemoryUsingValkey.csproj create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock.csproj create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs create mode 100644 dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md create mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj create mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs create mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs create mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs create mode 100644 dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/Microsoft.Agents.AI.Valkey.UnitTests.csproj create mode 100644 dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs create mode 100644 dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs create mode 100644 dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs diff --git a/.gitignore b/.gitignore index 9cb714813a2..582f8ff1087 100644 --- a/.gitignore +++ b/.gitignore @@ -213,6 +213,7 @@ WARP.md **/memory-bank/ **/projectBrief.md **/tmpclaude* +.kiro/ # Dependency-bound validation reports python/scripts/dependency-*-results.json python/scripts/dependencies/dependency-*-results.json diff --git a/dotnet/Directory.Packages.props b/dotnet/Directory.Packages.props index e4e4b83e713..4d1c7d2c3a1 100644 --- a/dotnet/Directory.Packages.props +++ b/dotnet/Directory.Packages.props @@ -142,6 +142,8 @@ + + diff --git a/dotnet/agent-framework-dotnet.slnx b/dotnet/agent-framework-dotnet.slnx index e395627bc98..95276ccb72f 100644 --- a/dotnet/agent-framework-dotnet.slnx +++ b/dotnet/agent-framework-dotnet.slnx @@ -194,6 +194,8 @@ + + @@ -622,6 +624,7 @@ + @@ -675,5 +678,6 @@ + diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/AgentWithMemory_Step03_MemoryUsingValkey.csproj b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/AgentWithMemory_Step03_MemoryUsingValkey.csproj new file mode 100644 index 00000000000..1217591bc1b --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/AgentWithMemory_Step03_MemoryUsingValkey.csproj @@ -0,0 +1,22 @@ + + + + Exe + net10.0 + + enable + enable + + + + + + + + + + + + + + diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs new file mode 100644 index 00000000000..f53675eb1fb --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs @@ -0,0 +1,80 @@ +// Copyright (c) Microsoft. All rights reserved. + +// This sample demonstrates using Valkey for both persistent chat history and long-term memory +// context with the Agent Framework. It shows: +// 1. ValkeyChatHistoryProvider — persists conversation history across sessions using Valkey lists +// 2. ValkeyContextProvider — stores and retrieves memories using Valkey's full-text search (FT.SEARCH) +// +// Prerequisites: +// - Valkey 9.1+ with valkey-search module (for the context provider): +// docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +// - Azure OpenAI endpoint and deployment configured via environment variables + +using Azure.AI.OpenAI; +using Azure.Identity; +using Microsoft.Agents.AI; +using Microsoft.Agents.AI.Valkey; +using Microsoft.Extensions.AI; +using OpenAI.Chat; + +var endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? throw new InvalidOperationException("AZURE_OPENAI_ENDPOINT is not set."); +var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-4o-mini"; +var valkeyConnection = Environment.GetEnvironmentVariable("VALKEY_CONNECTION") ?? "localhost:6379"; + +// --- Part 1: Chat History with ValkeyChatHistoryProvider --- +Console.WriteLine("=== Part 1: ValkeyChatHistoryProvider — Persistent Chat History ===\n"); + +await using var historyProvider = new ValkeyChatHistoryProvider( + valkeyConnection, + stateInitializer: _ => new ValkeyChatHistoryProvider.State($"sample-{Guid.NewGuid():N}"), + keyPrefix: "sample_chat") +{ + MaxMessages = 20 +}; + +AIAgent historyAgent = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) + .GetChatClient(deploymentName) + .AsAIAgent(new ChatClientAgentOptions() + { + ChatOptions = new() { Instructions = "You are a helpful assistant that remembers our conversation." }, + ChatHistoryProvider = historyProvider + }); + +AgentSession session1 = await historyAgent.CreateSessionAsync(); +Console.WriteLine(await historyAgent.RunAsync("Hello! My name is Alex and I'm a software engineer.", session1)); +Console.WriteLine(await historyAgent.RunAsync("I'm working on a project using Valkey for caching.", session1)); +Console.WriteLine(await historyAgent.RunAsync("What do you remember about me?", session1)); + +var messageCount = await historyProvider.GetMessageCountAsync(session1); +Console.WriteLine($"\n Stored {messageCount} messages in Valkey.\n"); + +// --- Part 2: Context Provider with ValkeyContextProvider --- +Console.WriteLine("=== Part 2: ValkeyContextProvider — Long-Term Memory ===\n"); + +await using var contextProvider = new ValkeyContextProvider( + valkeyConnection, + stateInitializer: _ => new ValkeyContextProvider.State( + new ValkeyProviderScope { ApplicationId = "sample-app", UserId = "sample-user" }), + indexName: "sample_memory_idx", + keyPrefix: "sample_mem:"); + +AIAgent memoryAgent = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) + .GetChatClient(deploymentName) + .AsAIAgent(new ChatClientAgentOptions() + { + ChatOptions = new() { Instructions = "You are a friendly assistant. Use known memories about the user when responding." }, + AIContextProviders = [contextProvider] + }); + +// Conversation 1 — store some facts +AgentSession memSession1 = await memoryAgent.CreateSessionAsync(); +Console.WriteLine("[Conversation 1] Storing facts..."); +Console.WriteLine(await memoryAgent.RunAsync("I'm planning a trip to Japan in December. I love sushi and hiking.", memSession1)); +Console.WriteLine(await memoryAgent.RunAsync("My favorite programming language is C# and I use .NET daily.", memSession1)); + +// Conversation 2 — new session, agent should recall from Valkey +AgentSession memSession2 = await memoryAgent.CreateSessionAsync(); +Console.WriteLine("\n[Conversation 2] Testing recall across sessions..."); +Console.WriteLine(await memoryAgent.RunAsync("What do you know about my upcoming travel plans?", memSession2)); + +Console.WriteLine("\nDone!"); diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md new file mode 100644 index 00000000000..cece6e26927 --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md @@ -0,0 +1,31 @@ +# Agent with Memory Using Valkey + +This sample demonstrates using Valkey for both persistent chat history and long-term memory context with the Agent Framework. + +## Components + +- **ValkeyChatHistoryProvider** — Persists conversation history across sessions using Valkey lists. Works with any Valkey or Redis OSS server (no search module required). +- **ValkeyContextProvider** — Stores and retrieves memories using Valkey's native full-text search (`FT.SEARCH`). Requires valkey-search >= 1.2. + +## Prerequisites + +- Azure OpenAI endpoint and deployment +- Valkey 9.1+ with valkey-search module: + +```bash +docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +``` + +## Environment Variables + +| Variable | Description | Default | +|---|---|---| +| `AZURE_OPENAI_ENDPOINT` | Azure OpenAI endpoint URL | (required) | +| `AZURE_OPENAI_DEPLOYMENT_NAME` | Model deployment name | `gpt-5.4-mini` | +| `VALKEY_CONNECTION` | Valkey connection string | `localhost:6379` | + +## Running + +```bash +dotnet run +``` diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock.csproj b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock.csproj new file mode 100644 index 00000000000..274ac15c97c --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock.csproj @@ -0,0 +1,20 @@ + + + + Exe + net10.0 + + enable + enable + + + + + + + + + + + + diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs new file mode 100644 index 00000000000..ba98270b16c --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs @@ -0,0 +1,79 @@ +// Copyright (c) Microsoft. All rights reserved. + +// This sample demonstrates using Valkey for both persistent chat history and long-term memory +// context with the Agent Framework, powered by Amazon Bedrock. +// +// Prerequisites: +// - Valkey 9.1+ with valkey-search module (for the context provider): +// docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +// - AWS credentials configured (environment variables, AWS profile, or IAM role) +// - Access to an Amazon Bedrock model (e.g., Anthropic Claude) + +using Amazon; +using Amazon.BedrockRuntime; +using Microsoft.Agents.AI; +using Microsoft.Agents.AI.Valkey; +using Microsoft.Extensions.AI; + +var awsRegion = Environment.GetEnvironmentVariable("AWS_REGION") ?? "us-east-1"; +var modelId = Environment.GetEnvironmentVariable("BEDROCK_MODEL_ID") ?? "anthropic.claude-3-5-sonnet-20241022-v2:0"; +var valkeyConnection = Environment.GetEnvironmentVariable("VALKEY_CONNECTION") ?? "localhost:6379"; + +// Create the Bedrock runtime client. +// Uses the default credential chain: env vars, AWS profile, IAM role, etc. +var bedrockRuntime = new AmazonBedrockRuntimeClient(RegionEndpoint.GetBySystemName(awsRegion)); +IChatClient chatClient = bedrockRuntime.AsIChatClient(modelId); + +// --- Part 1: Chat History with ValkeyChatHistoryProvider --- +Console.WriteLine("=== Part 1: ValkeyChatHistoryProvider — Persistent Chat History (Bedrock) ===\n"); + +await using var historyProvider = new ValkeyChatHistoryProvider( + valkeyConnection, + stateInitializer: _ => new ValkeyChatHistoryProvider.State($"bedrock-sample-{Guid.NewGuid():N}"), + keyPrefix: "bedrock_chat") +{ + MaxMessages = 20 +}; + +AIAgent historyAgent = chatClient.AsAIAgent(new ChatClientAgentOptions() +{ + ChatOptions = new() { Instructions = "You are a helpful assistant that remembers our conversation." }, + ChatHistoryProvider = historyProvider +}); + +AgentSession session1 = await historyAgent.CreateSessionAsync(); +Console.WriteLine(await historyAgent.RunAsync("Hello! My name is Alex and I'm a software engineer.", session1)); +Console.WriteLine(await historyAgent.RunAsync("I'm working on a project using Valkey for caching.", session1)); +Console.WriteLine(await historyAgent.RunAsync("What do you remember about me?", session1)); + +var messageCount = await historyProvider.GetMessageCountAsync(session1); +Console.WriteLine($"\n Stored {messageCount} messages in Valkey.\n"); + +// --- Part 2: Context Provider with ValkeyContextProvider --- +Console.WriteLine("=== Part 2: ValkeyContextProvider — Long-Term Memory (Bedrock) ===\n"); + +await using var contextProvider = new ValkeyContextProvider( + valkeyConnection, + stateInitializer: _ => new ValkeyContextProvider.State( + new ValkeyProviderScope { ApplicationId = "bedrock-sample-app", UserId = "sample-user" }), + indexName: "bedrock_memory_idx", + keyPrefix: "bedrock_mem:"); + +AIAgent memoryAgent = chatClient.AsAIAgent(new ChatClientAgentOptions() +{ + ChatOptions = new() { Instructions = "You are a friendly assistant. Use known memories about the user when responding." }, + AIContextProviders = [contextProvider] +}); + +// Conversation 1 — store some facts +AgentSession memSession1 = await memoryAgent.CreateSessionAsync(); +Console.WriteLine("[Conversation 1] Storing facts..."); +Console.WriteLine(await memoryAgent.RunAsync("I'm planning a trip to Japan in December. I love sushi and hiking.", memSession1)); +Console.WriteLine(await memoryAgent.RunAsync("My favorite programming language is C# and I use .NET daily.", memSession1)); + +// Conversation 2 — new session, agent should recall from Valkey +AgentSession memSession2 = await memoryAgent.CreateSessionAsync(); +Console.WriteLine("\n[Conversation 2] Testing recall across sessions..."); +Console.WriteLine(await memoryAgent.RunAsync("What do you know about my upcoming travel plans?", memSession2)); + +Console.WriteLine("\nDone!"); diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md new file mode 100644 index 00000000000..3f3c8d2d26b --- /dev/null +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md @@ -0,0 +1,42 @@ +# Agent with Memory Using Valkey + Amazon Bedrock + +This sample demonstrates using Valkey for both persistent chat history and long-term memory context with the Agent Framework, powered by Amazon Bedrock via the `AWSSDK.Extensions.Bedrock.MEAI` adapter. + +## Components + +- **ValkeyChatHistoryProvider** — Persists conversation history across sessions using Valkey lists. Works with any Valkey or Redis OSS server (no search module required). +- **ValkeyContextProvider** — Stores and retrieves memories using Valkey's native full-text search (`FT.SEARCH`). Requires valkey-search >= 1.2. +- **Amazon Bedrock** — Provides the LLM via `AWSSDK.Extensions.Bedrock.MEAI`, which implements `IChatClient` from `Microsoft.Extensions.AI`. + +## Prerequisites + +- AWS credentials configured (environment variables, AWS CLI profile, or IAM role) +- Access to an Amazon Bedrock model (e.g., Anthropic Claude 3.5 Sonnet) +- Valkey 9.1+ with valkey-search module: + +```bash +docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +``` + +## Environment Variables + +| Variable | Description | Default | +|---|---|---| +| `AWS_REGION` | AWS region for Bedrock | `us-east-1` | +| `BEDROCK_MODEL_ID` | Bedrock model identifier | `anthropic.claude-3-5-sonnet-20241022-v2:0` | +| `VALKEY_CONNECTION` | Valkey connection string | `localhost:6379` | +| `AWS_ACCESS_KEY_ID` | AWS access key (if not using profile/role) | — | +| `AWS_SECRET_ACCESS_KEY` | AWS secret key (if not using profile/role) | — | + +## Running + +```bash +# Using default AWS credential chain (profile, env vars, or IAM role) +dotnet run + +# Or with explicit credentials +export AWS_ACCESS_KEY_ID="your-access-key" +export AWS_SECRET_ACCESS_KEY="your-secret-key" +export AWS_REGION="us-east-1" +dotnet run +``` diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj new file mode 100644 index 00000000000..646533fb604 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj @@ -0,0 +1,40 @@ + + + + $(TargetFrameworksCore) + Microsoft.Agents.AI.Valkey + preview + $(NoWarn);CA1873 + + + + true + true + + + + + + false + + + + + Microsoft Agent Framework - Valkey integration + Provides Valkey integration for Microsoft Agent Framework, including chat history persistence and context provider with full-text search. + + + + + + + + + + + + + + + + diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs new file mode 100644 index 00000000000..30b1f61d279 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs @@ -0,0 +1,314 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.AI; +using Microsoft.Extensions.Logging; +using Microsoft.Shared.Diagnostics; +using StackExchange.Redis; + +namespace Microsoft.Agents.AI.Valkey; + +/// +/// Provides a Valkey-backed implementation of for persistent chat history storage. +/// +/// +/// +/// Uses basic Valkey list operations via StackExchange.Redis (protocol-compatible with Valkey). +/// No search module is required — this provider works with any Valkey or Redis OSS server. +/// +/// +/// Data retention: Stored messages have no TTL and persist indefinitely. +/// Use to limit per-conversation storage, and +/// for explicit cleanup. Callers are responsible for implementing data retention policies. +/// +/// +/// Security considerations: +/// +/// PII and sensitive data: Chat history stored in Valkey may contain PII and sensitive +/// conversation content. Ensure the Valkey server is configured with appropriate access controls and encryption in transit +/// (TLS). The property can limit stored messages per conversation. +/// Compromised store risks: Agent Framework does not validate or filter messages loaded +/// from the store — they are accepted as-is. If the Valkey store is compromised, adversarial content could be injected +/// into the conversation context. +/// +/// +/// +[RequiresUnreferencedCode("The ValkeyChatHistoryProvider uses JSON serialization which is incompatible with trimming.")] +[RequiresDynamicCode("The ValkeyChatHistoryProvider uses JSON serialization which is incompatible with NativeAOT.")] +public sealed class ValkeyChatHistoryProvider : ChatHistoryProvider, IAsyncDisposable +{ + private readonly ProviderSessionState _sessionState; + private IReadOnlyList? _stateKeys; + private readonly IConnectionMultiplexer _connection; + private readonly bool _ownsConnection; + private readonly string _keyPrefix; + private readonly ILogger? _logger; + private bool _disposed; + + /// + /// Gets or sets the maximum number of messages to retain per conversation. + /// When exceeded, oldest messages are automatically trimmed. Null means unlimited. + /// + public int? MaxMessages { get; set; } + + /// + /// Gets or sets the maximum number of messages to retrieve from the provider. + /// Null means no limit. + /// + public int? MaxMessagesToRetrieve { get; set; } + + /// + /// Initializes a new instance of the class using a connection string. + /// + /// The Valkey connection string (e.g., "localhost:6379"). + /// A delegate that initializes the provider state on the first invocation. + /// Prefix for Valkey keys. Defaults to "chat_history". + /// An optional key for storing state in the session's StateBag. + /// Optional logger factory. + /// An optional filter for messages when retrieving from history. + /// An optional filter for request messages before storing. + /// An optional filter for response messages before storing. + /// + /// This constructor opens a synchronous connection to Valkey. For ASP.NET Core / DI scenarios, + /// prefer the overload with a pre-connected instance to + /// avoid blocking the thread pool. + /// + public ValkeyChatHistoryProvider( + string connectionString, + Func stateInitializer, + string keyPrefix = "chat_history", + string? stateKey = null, + ILoggerFactory? loggerFactory = null, + Func, IEnumerable>? provideOutputMessageFilter = null, + Func, IEnumerable>? storeInputRequestMessageFilter = null, + Func, IEnumerable>? storeInputResponseMessageFilter = null) + : base(provideOutputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) + { + Throw.IfNullOrWhitespace(connectionString); + this._sessionState = new ProviderSessionState( + Throw.IfNull(stateInitializer), + stateKey ?? this.GetType().Name); + this._connection = ConnectionMultiplexer.Connect(connectionString); + this._ownsConnection = true; + this._keyPrefix = keyPrefix; + this._logger = loggerFactory?.CreateLogger(); + } + + /// + /// Initializes a new instance of the class using an existing connection. + /// + /// An existing instance. + /// A delegate that initializes the provider state on the first invocation. + /// Prefix for Valkey keys. Defaults to "chat_history". + /// An optional key for storing state in the session's StateBag. + /// Optional logger factory. + /// An optional filter for messages when retrieving from history. + /// An optional filter for request messages before storing. + /// An optional filter for response messages before storing. + public ValkeyChatHistoryProvider( + IConnectionMultiplexer connection, + Func stateInitializer, + string keyPrefix = "chat_history", + string? stateKey = null, + ILoggerFactory? loggerFactory = null, + Func, IEnumerable>? provideOutputMessageFilter = null, + Func, IEnumerable>? storeInputRequestMessageFilter = null, + Func, IEnumerable>? storeInputResponseMessageFilter = null) + : base(provideOutputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) + { + this._sessionState = new ProviderSessionState( + Throw.IfNull(stateInitializer), + stateKey ?? this.GetType().Name); + this._connection = Throw.IfNull(connection); + this._ownsConnection = false; + this._keyPrefix = keyPrefix; + this._logger = loggerFactory?.CreateLogger(); + } + + /// + public override IReadOnlyList StateKeys => this._stateKeys ??= [this._sessionState.StateKey]; + + /// + protected override async ValueTask> ProvideChatHistoryAsync(InvokingContext context, CancellationToken cancellationToken = default) + { + Throw.IfNull(context); + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + + var state = this._sessionState.GetOrInitializeState(context.Session); + var db = this._connection.GetDatabase(); + var key = this.BuildKey(state); + + // Fetch only the tail when MaxMessagesToRetrieve is set [Low: avoid fetching all then trimming] + RedisValue[] values; + if (this.MaxMessagesToRetrieve.HasValue) + { + values = await db.ListRangeAsync(key, -this.MaxMessagesToRetrieve.Value, -1).ConfigureAwait(false); + } + else + { + values = await db.ListRangeAsync(key).ConfigureAwait(false); + } + + var messages = new List(values.Length); + + foreach (var value in values) + { + cancellationToken.ThrowIfCancellationRequested(); + + if (value.IsNullOrEmpty) + { + continue; + } + + try + { + var message = JsonSerializer.Deserialize(value.ToString()); + if (message is not null) + { + messages.Add(message); + } + } + catch (JsonException ex) + { + // Skip malformed entries rather than crashing the session [VERIFY-002] + this._logger?.LogWarning(ex, "ValkeyChatHistoryProvider: Skipping malformed message in conversation '{ConversationId}'.", state.ConversationId); + } + } + + this._logger?.LogInformation( + "ValkeyChatHistoryProvider: Retrieved {Count} messages for conversation.", + messages.Count); + + return messages; + } + + /// + protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, CancellationToken cancellationToken = default) + { + Throw.IfNull(context); + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + + var state = this._sessionState.GetOrInitializeState(context.Session); + var messageList = context.RequestMessages.Concat(context.ResponseMessages ?? []).ToList(); + if (messageList.Count == 0) + { + return; + } + + var db = this._connection.GetDatabase(); + var key = this.BuildKey(state); + + // Batch push — single round-trip [Medium-8] + var serialized = new RedisValue[messageList.Count]; + for (int i = 0; i < messageList.Count; i++) + { + cancellationToken.ThrowIfCancellationRequested(); + serialized[i] = JsonSerializer.Serialize(messageList[i]); + } + + await db.ListRightPushAsync(key, serialized).ConfigureAwait(false); + + // Trim to max messages if configured + if (this.MaxMessages.HasValue) + { + await db.ListTrimAsync(key, -this.MaxMessages.Value, -1).ConfigureAwait(false); + } + + this._logger?.LogInformation( + "ValkeyChatHistoryProvider: Stored {Count} messages for conversation.", + messageList.Count); + } + + /// + /// Clears all messages for the specified session's conversation. + /// + /// The session containing the conversation state. + /// Cancellation token. + /// A task representing the asynchronous operation. + public async Task ClearMessagesAsync(AgentSession? session, CancellationToken cancellationToken = default) + { + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + var state = this._sessionState.GetOrInitializeState(session); + var db = this._connection.GetDatabase(); + var key = this.BuildKey(state); + await db.KeyDeleteAsync(key).ConfigureAwait(false); + } + + /// + /// Gets the count of stored messages for the specified session's conversation. + /// + /// The session containing the conversation state. + /// Cancellation token. + /// The number of stored messages. + public async Task GetMessageCountAsync(AgentSession? session, CancellationToken cancellationToken = default) + { + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + var state = this._sessionState.GetOrInitializeState(session); + var db = this._connection.GetDatabase(); + var key = this.BuildKey(state); + return await db.ListLengthAsync(key).ConfigureAwait(false); + } + + private string BuildKey(State state) => $"{this._keyPrefix}:{state.ConversationId}"; + + private void ThrowIfDisposed() + { +#if NET8_0_OR_GREATER + ObjectDisposedException.ThrowIf(this._disposed, this); +#else + if (this._disposed) + { + throw new ObjectDisposedException(this.GetType().Name); + } +#endif + } + + /// + public async ValueTask DisposeAsync() + { + if (this._disposed) + { + return; + } + + this._disposed = true; + + if (this._ownsConnection) + { + await this._connection.CloseAsync().ConfigureAwait(false); + this._connection.Dispose(); + } + } + + /// + /// Represents the per-session state of a . + /// + public sealed class State + { + /// + /// Initializes a new instance of the class. + /// + /// The unique identifier for this conversation thread. + [JsonConstructor] + public State(string conversationId) + { + this.ConversationId = Throw.IfNullOrWhitespace(conversationId); + } + + /// + /// Gets the conversation ID associated with this state. + /// + public string ConversationId { get; } + } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs new file mode 100644 index 00000000000..ac266cad87a --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs @@ -0,0 +1,493 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.AI; +using Microsoft.Extensions.Logging; +using Microsoft.Shared.Diagnostics; +using StackExchange.Redis; + +namespace Microsoft.Agents.AI.Valkey; + +/// +/// Provides a Valkey-backed that persists conversation messages +/// and retrieves related context using Valkey's native full-text search (FT.SEARCH). +/// +/// +/// +/// This provider stores user, assistant, and system messages as Valkey HASH documents and retrieves +/// relevant context for new invocations using full-text search. Retrieved memories are injected as +/// user messages to the model, prefixed by a configurable context prompt. +/// +/// +/// Server requirements: This provider requires valkey-search >= 1.2 (ships with +/// valkey-bundle >= 9.1.0) for the FT.CREATE and FT.SEARCH commands. +/// +/// +/// Data retention: Stored documents have no TTL and persist indefinitely. +/// Callers are responsible for implementing data retention policies (e.g., periodic cleanup) +/// to limit PII accumulation. +/// +/// +/// Security considerations: +/// +/// PII and sensitive data: Conversation messages are stored in Valkey +/// and may contain PII. Ensure the server is configured with appropriate access controls and TLS. +/// Indirect prompt injection: Memories retrieved from Valkey are injected +/// into the LLM context as user messages. If the store is compromised, adversarial content could influence +/// LLM behavior. +/// +/// +/// +public sealed class ValkeyContextProvider : MessageAIContextProvider, IAsyncDisposable +{ + private const string DefaultContextPrompt = "## Memories\nConsider the following memories when answering user questions:"; + + private static readonly char[] s_specialQueryChars = ['@', '!', '{', '}', '(', ')', '|', '\\', '-', '=', '~', '[', ']', '^', '"', '\'', ':', '*', '$', '>', '+', '/']; + + private readonly ProviderSessionState _sessionState; + private IReadOnlyList? _stateKeys; + private readonly IConnectionMultiplexer _connection; + private readonly bool _ownsConnection; + private readonly string _indexName; + private readonly string _keyPrefix; + private readonly string _contextPrompt; + private readonly ILogger? _logger; + private readonly object _indexLock = new(); + private readonly SemaphoreSlim _indexCreationGate = new(1, 1); + private volatile bool _indexCreated; + private bool _disposed; + + /// + /// Gets or sets the maximum number of search results to return. Defaults to 10. + /// + public int MaxResults { get; set; } = 10; + + /// + /// Initializes a new instance of the class using a connection string. + /// + /// The Valkey connection string (e.g., "localhost:6379"). + /// A delegate that initializes the provider state on the first invocation. + /// The name of the search index. Defaults to "context_idx". + /// The key prefix for stored documents. Defaults to "context:". + /// The prompt to prepend to retrieved memories. + /// An optional key for storing state in the session's StateBag. + /// Optional logger factory. + /// An optional filter for input messages before searching. + /// An optional filter for request messages before storing. + /// An optional filter for response messages before storing. + /// + /// This constructor opens a synchronous connection to Valkey. For ASP.NET Core / DI scenarios, + /// prefer the overload with a pre-connected instance to + /// avoid blocking the thread pool. + /// + public ValkeyContextProvider( + string connectionString, + Func stateInitializer, + string indexName = "context_idx", + string keyPrefix = "context:", + string? contextPrompt = null, + string? stateKey = null, + ILoggerFactory? loggerFactory = null, + Func, IEnumerable>? provideInputMessageFilter = null, + Func, IEnumerable>? storeInputRequestMessageFilter = null, + Func, IEnumerable>? storeInputResponseMessageFilter = null) + : base(provideInputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) + { + Throw.IfNullOrWhitespace(connectionString); + this._sessionState = new ProviderSessionState( + ValidateStateInitializer(Throw.IfNull(stateInitializer)), + stateKey ?? this.GetType().Name); + this._connection = ConnectionMultiplexer.Connect(connectionString); + this._ownsConnection = true; + this._indexName = indexName; + this._keyPrefix = keyPrefix; + this._contextPrompt = contextPrompt ?? DefaultContextPrompt; + this._logger = loggerFactory?.CreateLogger(); + } + + /// + /// Initializes a new instance of the class using an existing connection. + /// + /// An existing instance. + /// A delegate that initializes the provider state on the first invocation. + /// The name of the search index. Defaults to "context_idx". + /// The key prefix for stored documents. Defaults to "context:". + /// The prompt to prepend to retrieved memories. + /// An optional key for storing state in the session's StateBag. + /// Optional logger factory. + /// An optional filter for input messages before searching. + /// An optional filter for request messages before storing. + /// An optional filter for response messages before storing. + public ValkeyContextProvider( + IConnectionMultiplexer connection, + Func stateInitializer, + string indexName = "context_idx", + string keyPrefix = "context:", + string? contextPrompt = null, + string? stateKey = null, + ILoggerFactory? loggerFactory = null, + Func, IEnumerable>? provideInputMessageFilter = null, + Func, IEnumerable>? storeInputRequestMessageFilter = null, + Func, IEnumerable>? storeInputResponseMessageFilter = null) + : base(provideInputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) + { + this._sessionState = new ProviderSessionState( + ValidateStateInitializer(Throw.IfNull(stateInitializer)), + stateKey ?? this.GetType().Name); + this._connection = Throw.IfNull(connection); + this._ownsConnection = false; + this._indexName = indexName; + this._keyPrefix = keyPrefix; + this._contextPrompt = contextPrompt ?? DefaultContextPrompt; + this._logger = loggerFactory?.CreateLogger(); + } + + /// + public override IReadOnlyList StateKeys => this._stateKeys ??= [this._sessionState.StateKey]; + + /// + protected override async ValueTask> ProvideMessagesAsync(InvokingContext context, CancellationToken cancellationToken = default) + { + Throw.IfNull(context); + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + + var state = this._sessionState.GetOrInitializeState(context.Session); + var scope = state.SearchScope; + + string queryText = string.Join( + Environment.NewLine, + context.RequestMessages + .Where(m => !string.IsNullOrWhiteSpace(m.Text)) + .Select(m => m.Text)); + + if (string.IsNullOrWhiteSpace(queryText)) + { + return []; + } + + try + { + await this.EnsureIndexAsync(cancellationToken).ConfigureAwait(false); + var db = this._connection.GetDatabase(); + + // Build filter from scope — includes thread_id for cross-scope isolation [VULN-001] + var filterParts = new List(); + if (!string.IsNullOrEmpty(scope.ApplicationId)) + { + filterParts.Add($"@application_id:{{{EscapeTag(scope.ApplicationId)}}}"); + } + + if (!string.IsNullOrEmpty(scope.AgentId)) + { + filterParts.Add($"@agent_id:{{{EscapeTag(scope.AgentId)}}}"); + } + + if (!string.IsNullOrEmpty(scope.UserId)) + { + filterParts.Add($"@user_id:{{{EscapeTag(scope.UserId)}}}"); + } + + if (!string.IsNullOrEmpty(scope.ThreadId)) + { + filterParts.Add($"@thread_id:{{{EscapeTag(scope.ThreadId)}}}"); + } + + var filterExpr = filterParts.Count > 0 ? string.Join(" ", filterParts) : "*"; + var escapedQuery = $"{filterExpr} {EscapeQuery(queryText)}"; + + cancellationToken.ThrowIfCancellationRequested(); + + var result = await db.ExecuteAsync( + "FT.SEARCH", + this._indexName, + escapedQuery, + "LIMIT", "0", this.MaxResults.ToString(CultureInfo.InvariantCulture)).ConfigureAwait(false); + + var memories = ParseSearchResults(result); + var memoryTexts = memories + .Select(m => m.TryGetValue("content", out var c) ? c : null) + .Where(c => !string.IsNullOrEmpty(c)) + .ToList(); + + this._logger?.LogInformation( + "ValkeyContextProvider: Retrieved {Count} memories.", + memoryTexts.Count); + + if (memoryTexts.Count == 0) + { + return []; + } + + var outputText = $"{this._contextPrompt}\n{string.Join(Environment.NewLine, memoryTexts)}"; + return [new ChatMessage(ChatRole.User, outputText)]; + } + catch (OperationCanceledException) + { + throw; + } + catch (Exception ex) + { + this._logger?.LogError(ex, "ValkeyContextProvider: Failed to search for memories."); + return []; + } + } + + /// + protected override async ValueTask StoreAIContextAsync(InvokedContext context, CancellationToken cancellationToken = default) + { + Throw.IfNull(context); + this.ThrowIfDisposed(); + cancellationToken.ThrowIfCancellationRequested(); + + var state = this._sessionState.GetOrInitializeState(context.Session); + var scope = state.StorageScope; + + try + { + await this.EnsureIndexAsync(cancellationToken).ConfigureAwait(false); + var db = this._connection.GetDatabase(); + + foreach (var message in context.RequestMessages.Concat(context.ResponseMessages ?? [])) + { + cancellationToken.ThrowIfCancellationRequested(); + + if (message.Role != ChatRole.User && message.Role != ChatRole.Assistant && message.Role != ChatRole.System) + { + continue; + } + + if (string.IsNullOrWhiteSpace(message.Text)) + { + continue; + } + + var docId = $"{this._keyPrefix}{Guid.NewGuid():N}"; + var entries = new HashEntry[] + { + new("role", message.Role.Value), + new("content", message.Text), + new("application_id", scope.ApplicationId ?? string.Empty), + new("agent_id", scope.AgentId ?? string.Empty), + new("user_id", scope.UserId ?? string.Empty), + new("thread_id", scope.ThreadId ?? string.Empty), + }; + + await db.HashSetAsync(docId, entries).ConfigureAwait(false); + } + + this._logger?.LogInformation("ValkeyContextProvider: Stored messages."); + } + catch (OperationCanceledException) + { + throw; + } + catch (Exception ex) + { + this._logger?.LogError(ex, "ValkeyContextProvider: Failed to store messages."); + } + } + + private async Task EnsureIndexAsync(CancellationToken cancellationToken) + { + lock (this._indexLock) + { + if (this._indexCreated) + { + return; + } + } + + await this._indexCreationGate.WaitAsync(cancellationToken).ConfigureAwait(false); + try + { + lock (this._indexLock) + { + if (this._indexCreated) + { + return; + } + } + + cancellationToken.ThrowIfCancellationRequested(); + var db = this._connection.GetDatabase(); + + try + { + await db.ExecuteAsync( + "FT.CREATE", + this._indexName, + "ON", "HASH", + "PREFIX", "1", this._keyPrefix, + "SCHEMA", + "role", "TAG", + "content", "TEXT", + "application_id", "TAG", + "agent_id", "TAG", + "user_id", "TAG", + "thread_id", "TAG").ConfigureAwait(false); + } + catch (RedisServerException ex) when (ex.Message.Contains("Index already exists", StringComparison.OrdinalIgnoreCase)) + { + // Index already exists — this is expected + } + + lock (this._indexLock) + { + this._indexCreated = true; + } + } + finally + { + this._indexCreationGate.Release(); + } + } + + internal static List> ParseSearchResults(RedisResult result) + { + var docs = new List>(); + if (result.IsNull) + { + return docs; + } + + var results = (RedisResult[])result!; + if (results.Length < 2) + { + return docs; + } + + // FT.SEARCH returns: [total_count, doc_id, [field, value, ...], doc_id, ...] + for (int i = 1; i < results.Length; i += 2) + { + if (i + 1 >= results.Length) + { + break; + } + + var fields = (RedisResult[])results[i + 1]!; + var doc = new Dictionary(StringComparer.Ordinal); + for (int j = 0; j + 1 < fields.Length; j += 2) + { + doc[(string)fields[j]!] = (string)fields[j + 1]!; + } + + docs.Add(doc); + } + + return docs; + } + + internal static string EscapeTag(string value) + { + return value + .Replace("\\", "\\\\") + .Replace("{", "\\{") + .Replace("}", "\\}") + .Replace("@", "\\@") + .Replace("|", "\\|") + .Replace(" ", "\\ "); + } + + internal static string EscapeQuery(string text) + { + var escaped = new System.Text.StringBuilder(text.Length * 2); + foreach (var ch in text) + { + if (Array.IndexOf(s_specialQueryChars, ch) >= 0) + { + escaped.Append('\\'); + } + + escaped.Append(ch); + } + + return escaped.ToString(); + } + + private static Func ValidateStateInitializer(Func stateInitializer) => + session => + { + var state = stateInitializer(session); + if (state?.StorageScope is null || state.SearchScope is null) + { + throw new InvalidOperationException("State initializer must return a non-null state with valid storage and search scopes."); + } + + var ss = state.StorageScope; + var rs = state.SearchScope; + if (ss.AgentId is null && ss.UserId is null && ss.ApplicationId is null && ss.ThreadId is null) + { + throw new InvalidOperationException("At least one scoping parameter (AgentId, UserId, ApplicationId, or ThreadId) must be set on StorageScope."); + } + + if (rs.AgentId is null && rs.UserId is null && rs.ApplicationId is null && rs.ThreadId is null) + { + throw new InvalidOperationException("At least one scoping parameter (AgentId, UserId, ApplicationId, or ThreadId) must be set on SearchScope."); + } + + return state; + }; + + private void ThrowIfDisposed() + { +#if NET8_0_OR_GREATER + ObjectDisposedException.ThrowIf(this._disposed, this); +#else + if (this._disposed) + { + throw new ObjectDisposedException(this.GetType().Name); + } +#endif + } + + /// + public async ValueTask DisposeAsync() + { + if (this._disposed) + { + return; + } + + this._disposed = true; + this._indexCreationGate.Dispose(); + + if (this._ownsConnection) + { + await this._connection.CloseAsync().ConfigureAwait(false); + this._connection.Dispose(); + } + } + + /// + /// Represents the per-session state of a . + /// + public sealed class State + { + /// + /// Initializes a new instance of the class. + /// + /// The scope to use when storing context. + /// The scope to use when searching. If null, the storage scope is used. + public State(ValkeyProviderScope storageScope, ValkeyProviderScope? searchScope = null) + { + this.StorageScope = Throw.IfNull(storageScope); + this.SearchScope = searchScope ?? storageScope; + } + + /// + /// Gets the scope used when storing context. + /// + public ValkeyProviderScope StorageScope { get; } + + /// + /// Gets the scope used when searching context. + /// + public ValkeyProviderScope SearchScope { get; } + } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs new file mode 100644 index 00000000000..96d2b67d873 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs @@ -0,0 +1,58 @@ +// Copyright (c) Microsoft. All rights reserved. + +using Microsoft.Shared.Diagnostics; + +namespace Microsoft.Agents.AI.Valkey; + +/// +/// Allows scoping of context for the . +/// +/// +/// Context can be scoped by one or more of: application, agent, thread, and user. +/// At least one scope must be provided. +/// +public sealed class ValkeyProviderScope +{ + /// + /// Initializes a new instance of the class. + /// + public ValkeyProviderScope() { } + + /// + /// Initializes a new instance of the class by cloning an existing scope. + /// + /// The scope to clone. + public ValkeyProviderScope(ValkeyProviderScope sourceScope) + { + Throw.IfNull(sourceScope); + + this.ApplicationId = sourceScope.ApplicationId; + this.AgentId = sourceScope.AgentId; + this.ThreadId = sourceScope.ThreadId; + this.UserId = sourceScope.UserId; + } + + /// + /// Gets or sets an optional ID for the application to scope context to. + /// + /// If not set, the scope of the context will span all applications. + public string? ApplicationId { get; set; } + + /// + /// Gets or sets an optional ID for the agent to scope context to. + /// + /// If not set, the scope of the context will span all agents. + public string? AgentId { get; set; } + + /// + /// Gets or sets an optional ID for the thread to scope context to. + /// + /// If not set, the scope of the context will span all threads. + public string? ThreadId { get; set; } + + /// + /// Gets or sets an optional ID for the user to scope context to. + /// + /// If not set, the scope of the context will span all users. + public string? UserId { get; set; } +} diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/Microsoft.Agents.AI.Valkey.UnitTests.csproj b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/Microsoft.Agents.AI.Valkey.UnitTests.csproj new file mode 100644 index 00000000000..4dd4ff1f6c8 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/Microsoft.Agents.AI.Valkey.UnitTests.csproj @@ -0,0 +1,11 @@ + + + + net10.0 + + + + + + + diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs new file mode 100644 index 00000000000..485ebad4391 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System.Collections.Generic; +using Microsoft.Extensions.AI; +using Moq; + +namespace Microsoft.Agents.AI.Valkey.UnitTests; + +internal sealed class TestAgentSession : AgentSession +{ + public TestAgentSession() + { + this.StateBag = new AgentSessionStateBag(); + } +} + +internal static class TestHelpers +{ + internal static readonly AIAgent MockAgent = new Mock().Object; + + internal static ChatHistoryProvider.InvokingContext CreateChatHistoryInvokingContext( + IEnumerable? requestMessages = null) + { +#pragma warning disable MAAI001 + return new ChatHistoryProvider.InvokingContext( + MockAgent, + new TestAgentSession(), + requestMessages ?? [new ChatMessage(ChatRole.User, "test")]); +#pragma warning restore MAAI001 + } + + internal static ChatHistoryProvider.InvokedContext CreateChatHistoryInvokedContext( + IEnumerable requestMessages, + IEnumerable responseMessages) + { +#pragma warning disable MAAI001 + return new ChatHistoryProvider.InvokedContext( + MockAgent, + new TestAgentSession(), + requestMessages, + responseMessages); +#pragma warning restore MAAI001 + } + + internal static AIContextProvider.InvokedContext CreateContextProviderInvokedContext( + IEnumerable requestMessages, + IEnumerable responseMessages) + { +#pragma warning disable MAAI001 + return new AIContextProvider.InvokedContext( + MockAgent, + new TestAgentSession(), + requestMessages, + responseMessages); +#pragma warning restore MAAI001 + } +} diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs new file mode 100644 index 00000000000..813ede791ce --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs @@ -0,0 +1,325 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Linq; +using System.Text.Json; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.AI; +using Moq; +using StackExchange.Redis; + +namespace Microsoft.Agents.AI.Valkey.UnitTests; + +/// +/// Unit tests for . +/// +public sealed class ValkeyChatHistoryProviderTests +{ + private static Mock CreateMockConnection(Mock? dbMock = null) + { + var mockConnection = new Mock(); + dbMock ??= new Mock(); + mockConnection.Setup(c => c.GetDatabase(It.IsAny(), It.IsAny())).Returns(dbMock.Object); + return mockConnection; + } + + // --- Constructor tests --- + + [Fact] + public void Constructor_WithConnection_SetsProperties() + { + // Arrange & Act + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + static (_) => new ValkeyChatHistoryProvider.State("conv-1"), + keyPrefix: "test_prefix"); + + // Assert + Assert.NotNull(provider); + Assert.Null(provider.MaxMessages); + Assert.Null(provider.MaxMessagesToRetrieve); + } + + [Fact] + public void Constructor_WithConnection_NullConnection_Throws() + { + // Act & Assert + Assert.Throws(() => + new ValkeyChatHistoryProvider( + (IConnectionMultiplexer)null!, + static (_) => new ValkeyChatHistoryProvider.State("conv-1"))); + } + + [Fact] + public void Constructor_WithConnection_NullStateInitializer_Throws() + { + // Act & Assert + Assert.Throws(() => + new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + null!)); + } + + // --- State tests --- + + [Fact] + public void State_NullConversationId_Throws() + { + Assert.Throws(() => new ValkeyChatHistoryProvider.State(null!)); + } + + [Fact] + public void State_EmptyConversationId_Throws() + { + Assert.Throws(() => new ValkeyChatHistoryProvider.State("")); + } + + [Fact] + public void State_ValidConversationId_SetsProperty() + { + var state = new ValkeyChatHistoryProvider.State("my-conversation"); + Assert.Equal("my-conversation", state.ConversationId); + } + + [Fact] + public void State_JsonConstructor_RoundTrips() + { + // Arrange + var original = new ValkeyChatHistoryProvider.State("test-conv"); + + // Act + var json = JsonSerializer.Serialize(original); + var deserialized = JsonSerializer.Deserialize(json); + + // Assert + Assert.NotNull(deserialized); + Assert.Equal("test-conv", deserialized.ConversationId); + } + + // --- StateKeys tests --- + + [Fact] + public void StateKeys_ReturnsProviderTypeName() + { + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + var keys = provider.StateKeys; + Assert.Single(keys); + Assert.Equal(nameof(ValkeyChatHistoryProvider), keys[0]); + } + + [Fact] + public void StateKeys_WithCustomKey_ReturnsCustomKey() + { + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1"), + stateKey: "custom_key"); + + var keys = provider.StateKeys; + Assert.Single(keys); + Assert.Equal("custom_key", keys[0]); + } + + // --- Property tests --- + + [Fact] + public void MaxMessages_CanBeSet() + { + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")) + { + MaxMessages = 50 + }; + + Assert.Equal(50, provider.MaxMessages); + } + + // --- Dispose tests --- + + [Fact] + public async Task DisposeAsync_OwnedConnection_ClosesAndDisposesAsync() + { + // Arrange + var mockConnection = CreateMockConnection(); + mockConnection.Setup(c => c.CloseAsync()).Returns(Task.CompletedTask); + mockConnection.Setup(c => c.Dispose()); + + // We can't easily test the connection-string constructor without a server, + // so we test the IConnectionMultiplexer overload (ownsConnection=false) doesn't close. + var provider = new ValkeyChatHistoryProvider( + mockConnection.Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + // Act + await provider.DisposeAsync(); + + // Assert — non-owned connection should NOT be closed + mockConnection.Verify(c => c.CloseAsync(), Times.Never); + } + + [Fact] + public async Task DisposeAsync_CalledTwice_NoOpAsync() + { + // Arrange + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + // Act — should not throw + await provider.DisposeAsync(); + await provider.DisposeAsync(); + } + + // --- ProvideChatHistoryAsync tests --- + + [Fact] + public async Task ProvideChatHistoryAsync_ReturnsDeserializedMessagesAsync() + { + // Arrange + var dbMock = new Mock(); + var msg1 = new ChatMessage(ChatRole.User, "hello"); + var msg2 = new ChatMessage(ChatRole.Assistant, "hi there"); + var values = new RedisValue[] + { + JsonSerializer.Serialize(msg1), + JsonSerializer.Serialize(msg2) + }; + dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .ReturnsAsync(values); + + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection(dbMock).Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + var context = TestHelpers.CreateChatHistoryInvokingContext(); + + // Act — should not throw + var result = await provider.InvokingAsync(context); + var messages = result.ToList(); + + // Assert — only the valid message + request message + Assert.True(messages.Count >= 1); + } + + [Fact] + public async Task ProvideChatHistoryAsync_WithMaxMessagesToRetrieve_UsesRangeQueryAsync() + { + // Arrange + var dbMock = new Mock(); + dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .ReturnsAsync([]); + + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection(dbMock).Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")) + { + MaxMessagesToRetrieve = 5 + }; + + var context = TestHelpers.CreateChatHistoryInvokingContext(); + + // Act + await provider.InvokingAsync(context); + + // Assert — should use -5, -1 range + dbMock.Verify(d => d.ListRangeAsync( + It.IsAny(), -5, -1, It.IsAny()), Times.Once); + } + + [Fact] + public async Task ProvideChatHistoryAsync_CancellationToken_ThrowsAsync() + { + // Arrange + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + var cts = new CancellationTokenSource(); + cts.Cancel(); + + var context = TestHelpers.CreateChatHistoryInvokingContext(); + + // Act & Assert + await Assert.ThrowsAsync(() => + provider.InvokingAsync(context, cts.Token).AsTask()); + } + + // --- StoreChatHistoryAsync tests --- + + [Fact] + public async Task StoreChatHistoryAsync_BatchPushesMessagesAsync() + { + // Arrange + var dbMock = new Mock(); + dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .ReturnsAsync(2); + + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection(dbMock).Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + var context = TestHelpers.CreateChatHistoryInvokedContext( + [new ChatMessage(ChatRole.User, "hello")], + [new ChatMessage(ChatRole.Assistant, "hi")]); + + // Act + await provider.InvokedAsync(context); + + // Assert — batch push called once with array + dbMock.Verify(d => d.ListRightPushAsync( + It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()), Times.Once); + } + + [Fact] + public async Task StoreChatHistoryAsync_WithMaxMessages_TrimsAsync() + { + // Arrange + var dbMock = new Mock(); + dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .ReturnsAsync(1); + dbMock.Setup(d => d.ListTrimAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .Returns(Task.CompletedTask); + + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection(dbMock).Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")) + { + MaxMessages = 10 + }; + + var context = TestHelpers.CreateChatHistoryInvokedContext( + [new ChatMessage(ChatRole.User, "hello")], + [new ChatMessage(ChatRole.Assistant, "hi")]); + + // Act + await provider.InvokedAsync(context); + + // Assert — trim called unconditionally when MaxMessages is set + dbMock.Verify(d => d.ListTrimAsync( + It.IsAny(), -10, -1, It.IsAny()), Times.Once); + } + + // --- Disposed state tests --- + + [Fact] + public async Task ProvideChatHistoryAsync_AfterDispose_ThrowsAsync() + { + // Arrange + var provider = new ValkeyChatHistoryProvider( + CreateMockConnection().Object, + _ => new ValkeyChatHistoryProvider.State("conv-1")); + + await provider.DisposeAsync(); + + var context = TestHelpers.CreateChatHistoryInvokingContext(); + + // Act & Assert + await Assert.ThrowsAsync(() => + provider.InvokingAsync(context).AsTask()); + } +} diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs new file mode 100644 index 00000000000..bc2b24a5283 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs @@ -0,0 +1,277 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Threading.Tasks; +using Moq; +using StackExchange.Redis; + +namespace Microsoft.Agents.AI.Valkey.UnitTests; + +/// +/// Unit tests for . +/// +public sealed class ValkeyContextProviderTests +{ + private static ValkeyContextProvider.State CreateValidState() => + new(new ValkeyProviderScope { UserId = "user-1" }); + + private static Mock CreateMockConnection(Mock? dbMock = null) + { + var mockConnection = new Mock(); + dbMock ??= new Mock(); + mockConnection.Setup(c => c.GetDatabase(It.IsAny(), It.IsAny())).Returns(dbMock.Object); + return mockConnection; + } + + // --- Constructor tests --- + + [Fact] + public void Constructor_WithConnection_SetsProperties() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState(), + indexName: "test_idx", + keyPrefix: "test:"); + + Assert.NotNull(provider); + Assert.Equal(10, provider.MaxResults); + } + + [Fact] + public void Constructor_NullConnection_Throws() + { + Assert.Throws(() => + new ValkeyContextProvider( + (IConnectionMultiplexer)null!, + _ => CreateValidState())); + } + + [Fact] + public void Constructor_NullStateInitializer_Throws() + { + Assert.Throws(() => + new ValkeyContextProvider( + CreateMockConnection().Object, + null!)); + } + + // --- State tests --- + + [Fact] + public void State_ValidScope_SetsProperties() + { + var storageScope = new ValkeyProviderScope { UserId = "user-1", AgentId = "agent-1" }; + var searchScope = new ValkeyProviderScope { UserId = "user-1" }; + + var state = new ValkeyContextProvider.State(storageScope, searchScope); + + Assert.Same(storageScope, state.StorageScope); + Assert.Same(searchScope, state.SearchScope); + } + + [Fact] + public void State_NullSearchScope_DefaultsToStorageScope() + { + var storageScope = new ValkeyProviderScope { UserId = "user-1" }; + var state = new ValkeyContextProvider.State(storageScope); + + Assert.Same(storageScope, state.StorageScope); + Assert.Same(storageScope, state.SearchScope); + } + + [Fact] + public void State_NullStorageScope_Throws() + { + Assert.Throws(() => new ValkeyContextProvider.State(null!)); + } + + // --- StateKeys tests --- + + [Fact] + public void StateKeys_ReturnsProviderTypeName() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState()); + + var keys = provider.StateKeys; + Assert.Single(keys); + Assert.Equal(nameof(ValkeyContextProvider), keys[0]); + } + + [Fact] + public void StateKeys_WithCustomKey_ReturnsCustomKey() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState(), + stateKey: "my_key"); + + var keys = provider.StateKeys; + Assert.Single(keys); + Assert.Equal("my_key", keys[0]); + } + + // --- ValkeyProviderScope tests --- + + [Fact] + public void ValkeyProviderScope_Properties_SetCorrectly() + { + var scope = new ValkeyProviderScope + { + ApplicationId = "app-1", + AgentId = "agent-1", + ThreadId = "thread-1", + UserId = "user-1" + }; + + Assert.Equal("app-1", scope.ApplicationId); + Assert.Equal("agent-1", scope.AgentId); + Assert.Equal("thread-1", scope.ThreadId); + Assert.Equal("user-1", scope.UserId); + } + + [Fact] + public void ValkeyProviderScope_CopyConstructor_ClonesAllProperties() + { + var original = new ValkeyProviderScope + { + ApplicationId = "app-1", + AgentId = "agent-1", + ThreadId = "thread-1", + UserId = "user-1" + }; + + var copy = new ValkeyProviderScope(original); + + Assert.Equal(original.ApplicationId, copy.ApplicationId); + Assert.Equal(original.AgentId, copy.AgentId); + Assert.Equal(original.ThreadId, copy.ThreadId); + Assert.Equal(original.UserId, copy.UserId); + } + + [Fact] + public void ValkeyProviderScope_CopyConstructor_NullSource_Throws() + { + Assert.Throws(() => new ValkeyProviderScope(null!)); + } + + // --- MaxResults tests --- + + [Fact] + public void MaxResults_DefaultsTo10() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState()); + + Assert.Equal(10, provider.MaxResults); + } + + [Fact] + public void MaxResults_CanBeSet() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState()) + { + MaxResults = 25 + }; + + Assert.Equal(25, provider.MaxResults); + } + + // --- EscapeTag tests --- + + [Theory] + [InlineData("simple", "simple")] + [InlineData("has space", "has\\ space")] + [InlineData("has{brace}", "has\\{brace\\}")] + [InlineData("has@at", "has\\@at")] + [InlineData("has|pipe", "has\\|pipe")] + [InlineData("back\\slash", "back\\\\slash")] + public void EscapeTag_EscapesSpecialCharacters(string input, string expected) + { + Assert.Equal(expected, ValkeyContextProvider.EscapeTag(input)); + } + + // --- EscapeQuery tests --- + + [Theory] + [InlineData("simple text", "simple text")] + [InlineData("hello@world", "hello\\@world")] + [InlineData("a*b", "a\\*b")] + [InlineData("(test)", "\\(test\\)")] + [InlineData("no:colons", "no\\:colons")] + public void EscapeQuery_EscapesSpecialCharacters(string input, string expected) + { + Assert.Equal(expected, ValkeyContextProvider.EscapeQuery(input)); + } + + // --- ParseSearchResults tests --- + + [Fact] + public void ParseSearchResults_NullResult_ReturnsEmpty() + { + var result = RedisResult.Create(RedisValue.Null); + var docs = ValkeyContextProvider.ParseSearchResults(result); + Assert.Empty(docs); + } + + [Fact] + public void ParseSearchResults_ValidResult_ParsesDocuments() + { + // FT.SEARCH returns: [total_count, doc_id, [field, value, ...], ...] + var inner = new RedisResult[] + { + RedisResult.Create((RedisValue)"content"), + RedisResult.Create((RedisValue)"hello world"), + RedisResult.Create((RedisValue)"role"), + RedisResult.Create((RedisValue)"user"), + }; + + var results = new RedisResult[] + { + RedisResult.Create((RedisValue)1), // total count + RedisResult.Create((RedisValue)"doc:1"), // doc id + RedisResult.Create(inner), // fields + }; + + var result = RedisResult.Create(results); + var docs = ValkeyContextProvider.ParseSearchResults(result); + + Assert.Single(docs); + Assert.Equal("hello world", docs[0]["content"]); + Assert.Equal("user", docs[0]["role"]); + } + + // --- Dispose tests --- + + [Fact] + public async Task DisposeAsync_CalledTwice_NoOpAsync() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState()); + + await provider.DisposeAsync(); + await provider.DisposeAsync(); + } + + [Fact] + public async Task AfterDispose_ThrowsObjectDisposedExceptionAsync() + { + var provider = new ValkeyContextProvider( + CreateMockConnection().Object, + _ => CreateValidState()); + + await provider.DisposeAsync(); + + await Assert.ThrowsAsync(() => + provider.InvokedAsync( + TestHelpers.CreateContextProviderInvokedContext( + [new Extensions.AI.ChatMessage(Extensions.AI.ChatRole.User, "test")], + [new Extensions.AI.ChatMessage(Extensions.AI.ChatRole.Assistant, "reply")])).AsTask()); + } +} From b0b54701ceac89ac221fee8512d909ff1f712c7c Mon Sep 17 00:00:00 2001 From: Matthias Howell Date: Fri, 22 May 2026 09:23:44 -0400 Subject: [PATCH 02/25] Address review: switch to Valkey.Glide, add options class, remove context provider - Switch from StackExchange.Redis to Valkey.Glide 1.1.0 (official Valkey .NET client) - Extract optional params into ValkeyChatHistoryProviderOptions - Add JsonSerializerOptions support, remove [RequiresUnreferencedCode] - Make MaxMessages/MaxMessagesToRetrieve readonly via options - Remove ValkeyContextProvider (overlaps with ChatHistoryMemoryProvider + MEVD) - Remove ValkeyProviderScope (only used by context provider) - Remove connection string constructors (caller manages IConnectionMultiplexer) - Update samples to use new API and gpt-5.4-mini --- dotnet/Directory.Packages.props | 4 +- .../Program.cs | 65 +-- .../Program.cs | 60 +-- .../Microsoft.Agents.AI.Valkey.csproj | 2 +- .../ValkeyChatHistoryProvider.cs | 142 +---- .../ValkeyChatHistoryProviderOptions.cs | 56 ++ .../ValkeyContextProvider.cs | 493 ------------------ .../ValkeyProviderScope.cs | 58 --- .../TestHelpers.cs | 13 - .../ValkeyChatHistoryProviderTests.cs | 112 +--- .../ValkeyContextProviderTests.cs | 277 ---------- 11 files changed, 144 insertions(+), 1138 deletions(-) create mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs delete mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs delete mode 100644 dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs delete mode 100644 dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs diff --git a/dotnet/Directory.Packages.props b/dotnet/Directory.Packages.props index 4d1c7d2c3a1..6b788c20fce 100644 --- a/dotnet/Directory.Packages.props +++ b/dotnet/Directory.Packages.props @@ -138,8 +138,8 @@ - - + + diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs index f53675eb1fb..6faa02a0f36 100644 --- a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/Program.cs @@ -1,13 +1,11 @@ // Copyright (c) Microsoft. All rights reserved. -// This sample demonstrates using Valkey for both persistent chat history and long-term memory -// context with the Agent Framework. It shows: -// 1. ValkeyChatHistoryProvider — persists conversation history across sessions using Valkey lists -// 2. ValkeyContextProvider — stores and retrieves memories using Valkey's full-text search (FT.SEARCH) +// This sample demonstrates using Valkey for persistent chat history with the Agent Framework. +// ValkeyChatHistoryProvider persists conversation history across sessions using Valkey lists. // // Prerequisites: -// - Valkey 9.1+ with valkey-search module (for the context provider): -// docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +// - A running Valkey server (any version): +// docker run -d --name valkey -p 6379:6379 valkey/valkey:latest // - Azure OpenAI endpoint and deployment configured via environment variables using Azure.AI.OpenAI; @@ -16,21 +14,24 @@ using Microsoft.Agents.AI.Valkey; using Microsoft.Extensions.AI; using OpenAI.Chat; +using Valkey.Glide; var endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? throw new InvalidOperationException("AZURE_OPENAI_ENDPOINT is not set."); -var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-4o-mini"; +var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-5.4-mini"; var valkeyConnection = Environment.GetEnvironmentVariable("VALKEY_CONNECTION") ?? "localhost:6379"; -// --- Part 1: Chat History with ValkeyChatHistoryProvider --- -Console.WriteLine("=== Part 1: ValkeyChatHistoryProvider — Persistent Chat History ===\n"); +var connection = await ConnectionMultiplexer.ConnectAsync(valkeyConnection); -await using var historyProvider = new ValkeyChatHistoryProvider( - valkeyConnection, - stateInitializer: _ => new ValkeyChatHistoryProvider.State($"sample-{Guid.NewGuid():N}"), - keyPrefix: "sample_chat") -{ - MaxMessages = 20 -}; +Console.WriteLine("=== ValkeyChatHistoryProvider — Persistent Chat History ===\n"); + +var historyProvider = new ValkeyChatHistoryProvider( + connection, + _ => new ValkeyChatHistoryProvider.State($"sample-{Guid.NewGuid():N}"), + new ValkeyChatHistoryProviderOptions + { + KeyPrefix = "sample_chat", + MaxMessages = 20 + }); AIAgent historyAgent = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) .GetChatClient(deploymentName) @@ -48,33 +49,7 @@ var messageCount = await historyProvider.GetMessageCountAsync(session1); Console.WriteLine($"\n Stored {messageCount} messages in Valkey.\n"); -// --- Part 2: Context Provider with ValkeyContextProvider --- -Console.WriteLine("=== Part 2: ValkeyContextProvider — Long-Term Memory ===\n"); - -await using var contextProvider = new ValkeyContextProvider( - valkeyConnection, - stateInitializer: _ => new ValkeyContextProvider.State( - new ValkeyProviderScope { ApplicationId = "sample-app", UserId = "sample-user" }), - indexName: "sample_memory_idx", - keyPrefix: "sample_mem:"); - -AIAgent memoryAgent = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) - .GetChatClient(deploymentName) - .AsAIAgent(new ChatClientAgentOptions() - { - ChatOptions = new() { Instructions = "You are a friendly assistant. Use known memories about the user when responding." }, - AIContextProviders = [contextProvider] - }); - -// Conversation 1 — store some facts -AgentSession memSession1 = await memoryAgent.CreateSessionAsync(); -Console.WriteLine("[Conversation 1] Storing facts..."); -Console.WriteLine(await memoryAgent.RunAsync("I'm planning a trip to Japan in December. I love sushi and hiking.", memSession1)); -Console.WriteLine(await memoryAgent.RunAsync("My favorite programming language is C# and I use .NET daily.", memSession1)); - -// Conversation 2 — new session, agent should recall from Valkey -AgentSession memSession2 = await memoryAgent.CreateSessionAsync(); -Console.WriteLine("\n[Conversation 2] Testing recall across sessions..."); -Console.WriteLine(await memoryAgent.RunAsync("What do you know about my upcoming travel plans?", memSession2)); +// Clean up +connection.Dispose(); -Console.WriteLine("\nDone!"); +Console.WriteLine("Done!"); diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs index ba98270b16c..6f3027681fd 100644 --- a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/Program.cs @@ -1,11 +1,11 @@ // Copyright (c) Microsoft. All rights reserved. -// This sample demonstrates using Valkey for both persistent chat history and long-term memory -// context with the Agent Framework, powered by Amazon Bedrock. +// This sample demonstrates using Valkey for persistent chat history with the Agent Framework, +// powered by Amazon Bedrock. // // Prerequisites: -// - Valkey 9.1+ with valkey-search module (for the context provider): -// docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +// - A running Valkey server (any version): +// docker run -d --name valkey -p 6379:6379 valkey/valkey:latest // - AWS credentials configured (environment variables, AWS profile, or IAM role) // - Access to an Amazon Bedrock model (e.g., Anthropic Claude) @@ -14,26 +14,28 @@ using Microsoft.Agents.AI; using Microsoft.Agents.AI.Valkey; using Microsoft.Extensions.AI; +using Valkey.Glide; var awsRegion = Environment.GetEnvironmentVariable("AWS_REGION") ?? "us-east-1"; var modelId = Environment.GetEnvironmentVariable("BEDROCK_MODEL_ID") ?? "anthropic.claude-3-5-sonnet-20241022-v2:0"; var valkeyConnection = Environment.GetEnvironmentVariable("VALKEY_CONNECTION") ?? "localhost:6379"; // Create the Bedrock runtime client. -// Uses the default credential chain: env vars, AWS profile, IAM role, etc. var bedrockRuntime = new AmazonBedrockRuntimeClient(RegionEndpoint.GetBySystemName(awsRegion)); IChatClient chatClient = bedrockRuntime.AsIChatClient(modelId); -// --- Part 1: Chat History with ValkeyChatHistoryProvider --- -Console.WriteLine("=== Part 1: ValkeyChatHistoryProvider — Persistent Chat History (Bedrock) ===\n"); +var connection = await ConnectionMultiplexer.ConnectAsync(valkeyConnection); -await using var historyProvider = new ValkeyChatHistoryProvider( - valkeyConnection, - stateInitializer: _ => new ValkeyChatHistoryProvider.State($"bedrock-sample-{Guid.NewGuid():N}"), - keyPrefix: "bedrock_chat") -{ - MaxMessages = 20 -}; +Console.WriteLine("=== ValkeyChatHistoryProvider — Persistent Chat History (Bedrock) ===\n"); + +var historyProvider = new ValkeyChatHistoryProvider( + connection, + _ => new ValkeyChatHistoryProvider.State($"bedrock-sample-{Guid.NewGuid():N}"), + new ValkeyChatHistoryProviderOptions + { + KeyPrefix = "bedrock_chat", + MaxMessages = 20 + }); AIAgent historyAgent = chatClient.AsAIAgent(new ChatClientAgentOptions() { @@ -49,31 +51,7 @@ var messageCount = await historyProvider.GetMessageCountAsync(session1); Console.WriteLine($"\n Stored {messageCount} messages in Valkey.\n"); -// --- Part 2: Context Provider with ValkeyContextProvider --- -Console.WriteLine("=== Part 2: ValkeyContextProvider — Long-Term Memory (Bedrock) ===\n"); - -await using var contextProvider = new ValkeyContextProvider( - valkeyConnection, - stateInitializer: _ => new ValkeyContextProvider.State( - new ValkeyProviderScope { ApplicationId = "bedrock-sample-app", UserId = "sample-user" }), - indexName: "bedrock_memory_idx", - keyPrefix: "bedrock_mem:"); - -AIAgent memoryAgent = chatClient.AsAIAgent(new ChatClientAgentOptions() -{ - ChatOptions = new() { Instructions = "You are a friendly assistant. Use known memories about the user when responding." }, - AIContextProviders = [contextProvider] -}); - -// Conversation 1 — store some facts -AgentSession memSession1 = await memoryAgent.CreateSessionAsync(); -Console.WriteLine("[Conversation 1] Storing facts..."); -Console.WriteLine(await memoryAgent.RunAsync("I'm planning a trip to Japan in December. I love sushi and hiking.", memSession1)); -Console.WriteLine(await memoryAgent.RunAsync("My favorite programming language is C# and I use .NET daily.", memSession1)); - -// Conversation 2 — new session, agent should recall from Valkey -AgentSession memSession2 = await memoryAgent.CreateSessionAsync(); -Console.WriteLine("\n[Conversation 2] Testing recall across sessions..."); -Console.WriteLine(await memoryAgent.RunAsync("What do you know about my upcoming travel plans?", memSession2)); +// Clean up +connection.Dispose(); -Console.WriteLine("\nDone!"); +Console.WriteLine("Done!"); diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj index 646533fb604..06e8e95e840 100644 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj @@ -29,7 +29,7 @@ - + diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs index 30b1f61d279..ab640f71af6 100644 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs @@ -11,7 +11,7 @@ using Microsoft.Extensions.AI; using Microsoft.Extensions.Logging; using Microsoft.Shared.Diagnostics; -using StackExchange.Redis; +using Valkey.Glide; namespace Microsoft.Agents.AI.Valkey; @@ -20,12 +20,12 @@ namespace Microsoft.Agents.AI.Valkey; /// /// /// -/// Uses basic Valkey list operations via StackExchange.Redis (protocol-compatible with Valkey). -/// No search module is required — this provider works with any Valkey or Redis OSS server. +/// Uses basic Valkey list operations via Valkey.Glide. +/// No search module is required — this provider works with any Valkey server. /// /// /// Data retention: Stored messages have no TTL and persist indefinitely. -/// Use to limit per-conversation storage, and +/// Use to limit per-conversation storage, and /// for explicit cleanup. Callers are responsible for implementing data retention policies. /// /// @@ -33,102 +33,45 @@ namespace Microsoft.Agents.AI.Valkey; /// /// PII and sensitive data: Chat history stored in Valkey may contain PII and sensitive /// conversation content. Ensure the Valkey server is configured with appropriate access controls and encryption in transit -/// (TLS). The property can limit stored messages per conversation. +/// (TLS). The property can limit stored messages per conversation. /// Compromised store risks: Agent Framework does not validate or filter messages loaded /// from the store — they are accepted as-is. If the Valkey store is compromised, adversarial content could be injected /// into the conversation context. /// /// /// -[RequiresUnreferencedCode("The ValkeyChatHistoryProvider uses JSON serialization which is incompatible with trimming.")] -[RequiresDynamicCode("The ValkeyChatHistoryProvider uses JSON serialization which is incompatible with NativeAOT.")] -public sealed class ValkeyChatHistoryProvider : ChatHistoryProvider, IAsyncDisposable +public sealed class ValkeyChatHistoryProvider : ChatHistoryProvider { private readonly ProviderSessionState _sessionState; private IReadOnlyList? _stateKeys; private readonly IConnectionMultiplexer _connection; - private readonly bool _ownsConnection; private readonly string _keyPrefix; + private readonly int? _maxMessages; + private readonly int? _maxMessagesToRetrieve; private readonly ILogger? _logger; - private bool _disposed; /// - /// Gets or sets the maximum number of messages to retain per conversation. - /// When exceeded, oldest messages are automatically trimmed. Null means unlimited. - /// - public int? MaxMessages { get; set; } - - /// - /// Gets or sets the maximum number of messages to retrieve from the provider. - /// Null means no limit. - /// - public int? MaxMessagesToRetrieve { get; set; } - - /// - /// Initializes a new instance of the class using a connection string. - /// - /// The Valkey connection string (e.g., "localhost:6379"). - /// A delegate that initializes the provider state on the first invocation. - /// Prefix for Valkey keys. Defaults to "chat_history". - /// An optional key for storing state in the session's StateBag. - /// Optional logger factory. - /// An optional filter for messages when retrieving from history. - /// An optional filter for request messages before storing. - /// An optional filter for response messages before storing. - /// - /// This constructor opens a synchronous connection to Valkey. For ASP.NET Core / DI scenarios, - /// prefer the overload with a pre-connected instance to - /// avoid blocking the thread pool. - /// - public ValkeyChatHistoryProvider( - string connectionString, - Func stateInitializer, - string keyPrefix = "chat_history", - string? stateKey = null, - ILoggerFactory? loggerFactory = null, - Func, IEnumerable>? provideOutputMessageFilter = null, - Func, IEnumerable>? storeInputRequestMessageFilter = null, - Func, IEnumerable>? storeInputResponseMessageFilter = null) - : base(provideOutputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) - { - Throw.IfNullOrWhitespace(connectionString); - this._sessionState = new ProviderSessionState( - Throw.IfNull(stateInitializer), - stateKey ?? this.GetType().Name); - this._connection = ConnectionMultiplexer.Connect(connectionString); - this._ownsConnection = true; - this._keyPrefix = keyPrefix; - this._logger = loggerFactory?.CreateLogger(); - } - - /// - /// Initializes a new instance of the class using an existing connection. + /// Initializes a new instance of the class. /// /// An existing instance. /// A delegate that initializes the provider state on the first invocation. - /// Prefix for Valkey keys. Defaults to "chat_history". - /// An optional key for storing state in the session's StateBag. + /// Optional configuration options. /// Optional logger factory. - /// An optional filter for messages when retrieving from history. - /// An optional filter for request messages before storing. - /// An optional filter for response messages before storing. public ValkeyChatHistoryProvider( IConnectionMultiplexer connection, Func stateInitializer, - string keyPrefix = "chat_history", - string? stateKey = null, - ILoggerFactory? loggerFactory = null, - Func, IEnumerable>? provideOutputMessageFilter = null, - Func, IEnumerable>? storeInputRequestMessageFilter = null, - Func, IEnumerable>? storeInputResponseMessageFilter = null) - : base(provideOutputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) + ValkeyChatHistoryProviderOptions? options = null, + ILoggerFactory? loggerFactory = null) + : base(options?.ProvideOutputMessageFilter, options?.StoreInputRequestMessageFilter, options?.StoreInputResponseMessageFilter) { this._sessionState = new ProviderSessionState( Throw.IfNull(stateInitializer), - stateKey ?? this.GetType().Name); + options?.StateKey ?? this.GetType().Name, + options?.JsonSerializerOptions); this._connection = Throw.IfNull(connection); - this._ownsConnection = false; - this._keyPrefix = keyPrefix; + this._keyPrefix = options?.KeyPrefix ?? "chat_history"; + this._maxMessages = options?.MaxMessages; + this._maxMessagesToRetrieve = options?.MaxMessagesToRetrieve; this._logger = loggerFactory?.CreateLogger(); } @@ -136,10 +79,11 @@ public ValkeyChatHistoryProvider( public override IReadOnlyList StateKeys => this._stateKeys ??= [this._sessionState.StateKey]; /// + [UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "ChatMessage serialization uses known types.")] + [UnconditionalSuppressMessage("AOT", "IL3050", Justification = "ChatMessage serialization uses known types.")] protected override async ValueTask> ProvideChatHistoryAsync(InvokingContext context, CancellationToken cancellationToken = default) { Throw.IfNull(context); - this.ThrowIfDisposed(); cancellationToken.ThrowIfCancellationRequested(); var state = this._sessionState.GetOrInitializeState(context.Session); @@ -147,10 +91,10 @@ protected override async ValueTask> ProvideChatHistoryA var key = this.BuildKey(state); // Fetch only the tail when MaxMessagesToRetrieve is set [Low: avoid fetching all then trimming] - RedisValue[] values; - if (this.MaxMessagesToRetrieve.HasValue) + ValkeyValue[] values; + if (this._maxMessagesToRetrieve.HasValue) { - values = await db.ListRangeAsync(key, -this.MaxMessagesToRetrieve.Value, -1).ConfigureAwait(false); + values = await db.ListRangeAsync(key, -this._maxMessagesToRetrieve.Value, -1).ConfigureAwait(false); } else { @@ -191,10 +135,11 @@ protected override async ValueTask> ProvideChatHistoryA } /// + [UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "ChatMessage serialization uses known types.")] + [UnconditionalSuppressMessage("AOT", "IL3050", Justification = "ChatMessage serialization uses known types.")] protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, CancellationToken cancellationToken = default) { Throw.IfNull(context); - this.ThrowIfDisposed(); cancellationToken.ThrowIfCancellationRequested(); var state = this._sessionState.GetOrInitializeState(context.Session); @@ -208,7 +153,7 @@ protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, var key = this.BuildKey(state); // Batch push — single round-trip [Medium-8] - var serialized = new RedisValue[messageList.Count]; + var serialized = new ValkeyValue[messageList.Count]; for (int i = 0; i < messageList.Count; i++) { cancellationToken.ThrowIfCancellationRequested(); @@ -218,9 +163,9 @@ protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, await db.ListRightPushAsync(key, serialized).ConfigureAwait(false); // Trim to max messages if configured - if (this.MaxMessages.HasValue) + if (this._maxMessages.HasValue) { - await db.ListTrimAsync(key, -this.MaxMessages.Value, -1).ConfigureAwait(false); + await db.ListTrimAsync(key, -this._maxMessages.Value, -1).ConfigureAwait(false); } this._logger?.LogInformation( @@ -236,7 +181,6 @@ protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, /// A task representing the asynchronous operation. public async Task ClearMessagesAsync(AgentSession? session, CancellationToken cancellationToken = default) { - this.ThrowIfDisposed(); cancellationToken.ThrowIfCancellationRequested(); var state = this._sessionState.GetOrInitializeState(session); var db = this._connection.GetDatabase(); @@ -252,7 +196,6 @@ public async Task ClearMessagesAsync(AgentSession? session, CancellationToken ca /// The number of stored messages. public async Task GetMessageCountAsync(AgentSession? session, CancellationToken cancellationToken = default) { - this.ThrowIfDisposed(); cancellationToken.ThrowIfCancellationRequested(); var state = this._sessionState.GetOrInitializeState(session); var db = this._connection.GetDatabase(); @@ -262,35 +205,6 @@ public async Task GetMessageCountAsync(AgentSession? session, Cancellation private string BuildKey(State state) => $"{this._keyPrefix}:{state.ConversationId}"; - private void ThrowIfDisposed() - { -#if NET8_0_OR_GREATER - ObjectDisposedException.ThrowIf(this._disposed, this); -#else - if (this._disposed) - { - throw new ObjectDisposedException(this.GetType().Name); - } -#endif - } - - /// - public async ValueTask DisposeAsync() - { - if (this._disposed) - { - return; - } - - this._disposed = true; - - if (this._ownsConnection) - { - await this._connection.CloseAsync().ConfigureAwait(false); - this._connection.Dispose(); - } - } - /// /// Represents the per-session state of a . /// diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs new file mode 100644 index 00000000000..cffb0b5d92c --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs @@ -0,0 +1,56 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Collections.Generic; +using System.Text.Json; +using Microsoft.Extensions.AI; + +namespace Microsoft.Agents.AI.Valkey; + +/// +/// Options for configuring . +/// +public sealed class ValkeyChatHistoryProviderOptions +{ + /// + /// Gets or sets the prefix for Valkey keys. Defaults to "chat_history". + /// + public string KeyPrefix { get; set; } = "chat_history"; + + /// + /// Gets or sets the maximum number of messages to retain per conversation. + /// When exceeded, oldest messages are automatically trimmed. Null means unlimited. + /// + public int? MaxMessages { get; set; } + + /// + /// Gets or sets the maximum number of messages to retrieve from the provider. + /// Null means no limit. + /// + public int? MaxMessagesToRetrieve { get; set; } + + /// + /// Gets or sets an optional key for storing state in the session's StateBag. + /// + public string? StateKey { get; set; } + + /// + /// Gets or sets optional JSON serializer options for serializing the state of this provider. + /// + public JsonSerializerOptions? JsonSerializerOptions { get; set; } + + /// + /// Gets or sets an optional filter for messages when retrieving from history. + /// + public Func, IEnumerable>? ProvideOutputMessageFilter { get; set; } + + /// + /// Gets or sets an optional filter for request messages before storing. + /// + public Func, IEnumerable>? StoreInputRequestMessageFilter { get; set; } + + /// + /// Gets or sets an optional filter for response messages before storing. + /// + public Func, IEnumerable>? StoreInputResponseMessageFilter { get; set; } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs deleted file mode 100644 index ac266cad87a..00000000000 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyContextProvider.cs +++ /dev/null @@ -1,493 +0,0 @@ -// Copyright (c) Microsoft. All rights reserved. - -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.AI; -using Microsoft.Extensions.Logging; -using Microsoft.Shared.Diagnostics; -using StackExchange.Redis; - -namespace Microsoft.Agents.AI.Valkey; - -/// -/// Provides a Valkey-backed that persists conversation messages -/// and retrieves related context using Valkey's native full-text search (FT.SEARCH). -/// -/// -/// -/// This provider stores user, assistant, and system messages as Valkey HASH documents and retrieves -/// relevant context for new invocations using full-text search. Retrieved memories are injected as -/// user messages to the model, prefixed by a configurable context prompt. -/// -/// -/// Server requirements: This provider requires valkey-search >= 1.2 (ships with -/// valkey-bundle >= 9.1.0) for the FT.CREATE and FT.SEARCH commands. -/// -/// -/// Data retention: Stored documents have no TTL and persist indefinitely. -/// Callers are responsible for implementing data retention policies (e.g., periodic cleanup) -/// to limit PII accumulation. -/// -/// -/// Security considerations: -/// -/// PII and sensitive data: Conversation messages are stored in Valkey -/// and may contain PII. Ensure the server is configured with appropriate access controls and TLS. -/// Indirect prompt injection: Memories retrieved from Valkey are injected -/// into the LLM context as user messages. If the store is compromised, adversarial content could influence -/// LLM behavior. -/// -/// -/// -public sealed class ValkeyContextProvider : MessageAIContextProvider, IAsyncDisposable -{ - private const string DefaultContextPrompt = "## Memories\nConsider the following memories when answering user questions:"; - - private static readonly char[] s_specialQueryChars = ['@', '!', '{', '}', '(', ')', '|', '\\', '-', '=', '~', '[', ']', '^', '"', '\'', ':', '*', '$', '>', '+', '/']; - - private readonly ProviderSessionState _sessionState; - private IReadOnlyList? _stateKeys; - private readonly IConnectionMultiplexer _connection; - private readonly bool _ownsConnection; - private readonly string _indexName; - private readonly string _keyPrefix; - private readonly string _contextPrompt; - private readonly ILogger? _logger; - private readonly object _indexLock = new(); - private readonly SemaphoreSlim _indexCreationGate = new(1, 1); - private volatile bool _indexCreated; - private bool _disposed; - - /// - /// Gets or sets the maximum number of search results to return. Defaults to 10. - /// - public int MaxResults { get; set; } = 10; - - /// - /// Initializes a new instance of the class using a connection string. - /// - /// The Valkey connection string (e.g., "localhost:6379"). - /// A delegate that initializes the provider state on the first invocation. - /// The name of the search index. Defaults to "context_idx". - /// The key prefix for stored documents. Defaults to "context:". - /// The prompt to prepend to retrieved memories. - /// An optional key for storing state in the session's StateBag. - /// Optional logger factory. - /// An optional filter for input messages before searching. - /// An optional filter for request messages before storing. - /// An optional filter for response messages before storing. - /// - /// This constructor opens a synchronous connection to Valkey. For ASP.NET Core / DI scenarios, - /// prefer the overload with a pre-connected instance to - /// avoid blocking the thread pool. - /// - public ValkeyContextProvider( - string connectionString, - Func stateInitializer, - string indexName = "context_idx", - string keyPrefix = "context:", - string? contextPrompt = null, - string? stateKey = null, - ILoggerFactory? loggerFactory = null, - Func, IEnumerable>? provideInputMessageFilter = null, - Func, IEnumerable>? storeInputRequestMessageFilter = null, - Func, IEnumerable>? storeInputResponseMessageFilter = null) - : base(provideInputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) - { - Throw.IfNullOrWhitespace(connectionString); - this._sessionState = new ProviderSessionState( - ValidateStateInitializer(Throw.IfNull(stateInitializer)), - stateKey ?? this.GetType().Name); - this._connection = ConnectionMultiplexer.Connect(connectionString); - this._ownsConnection = true; - this._indexName = indexName; - this._keyPrefix = keyPrefix; - this._contextPrompt = contextPrompt ?? DefaultContextPrompt; - this._logger = loggerFactory?.CreateLogger(); - } - - /// - /// Initializes a new instance of the class using an existing connection. - /// - /// An existing instance. - /// A delegate that initializes the provider state on the first invocation. - /// The name of the search index. Defaults to "context_idx". - /// The key prefix for stored documents. Defaults to "context:". - /// The prompt to prepend to retrieved memories. - /// An optional key for storing state in the session's StateBag. - /// Optional logger factory. - /// An optional filter for input messages before searching. - /// An optional filter for request messages before storing. - /// An optional filter for response messages before storing. - public ValkeyContextProvider( - IConnectionMultiplexer connection, - Func stateInitializer, - string indexName = "context_idx", - string keyPrefix = "context:", - string? contextPrompt = null, - string? stateKey = null, - ILoggerFactory? loggerFactory = null, - Func, IEnumerable>? provideInputMessageFilter = null, - Func, IEnumerable>? storeInputRequestMessageFilter = null, - Func, IEnumerable>? storeInputResponseMessageFilter = null) - : base(provideInputMessageFilter, storeInputRequestMessageFilter, storeInputResponseMessageFilter) - { - this._sessionState = new ProviderSessionState( - ValidateStateInitializer(Throw.IfNull(stateInitializer)), - stateKey ?? this.GetType().Name); - this._connection = Throw.IfNull(connection); - this._ownsConnection = false; - this._indexName = indexName; - this._keyPrefix = keyPrefix; - this._contextPrompt = contextPrompt ?? DefaultContextPrompt; - this._logger = loggerFactory?.CreateLogger(); - } - - /// - public override IReadOnlyList StateKeys => this._stateKeys ??= [this._sessionState.StateKey]; - - /// - protected override async ValueTask> ProvideMessagesAsync(InvokingContext context, CancellationToken cancellationToken = default) - { - Throw.IfNull(context); - this.ThrowIfDisposed(); - cancellationToken.ThrowIfCancellationRequested(); - - var state = this._sessionState.GetOrInitializeState(context.Session); - var scope = state.SearchScope; - - string queryText = string.Join( - Environment.NewLine, - context.RequestMessages - .Where(m => !string.IsNullOrWhiteSpace(m.Text)) - .Select(m => m.Text)); - - if (string.IsNullOrWhiteSpace(queryText)) - { - return []; - } - - try - { - await this.EnsureIndexAsync(cancellationToken).ConfigureAwait(false); - var db = this._connection.GetDatabase(); - - // Build filter from scope — includes thread_id for cross-scope isolation [VULN-001] - var filterParts = new List(); - if (!string.IsNullOrEmpty(scope.ApplicationId)) - { - filterParts.Add($"@application_id:{{{EscapeTag(scope.ApplicationId)}}}"); - } - - if (!string.IsNullOrEmpty(scope.AgentId)) - { - filterParts.Add($"@agent_id:{{{EscapeTag(scope.AgentId)}}}"); - } - - if (!string.IsNullOrEmpty(scope.UserId)) - { - filterParts.Add($"@user_id:{{{EscapeTag(scope.UserId)}}}"); - } - - if (!string.IsNullOrEmpty(scope.ThreadId)) - { - filterParts.Add($"@thread_id:{{{EscapeTag(scope.ThreadId)}}}"); - } - - var filterExpr = filterParts.Count > 0 ? string.Join(" ", filterParts) : "*"; - var escapedQuery = $"{filterExpr} {EscapeQuery(queryText)}"; - - cancellationToken.ThrowIfCancellationRequested(); - - var result = await db.ExecuteAsync( - "FT.SEARCH", - this._indexName, - escapedQuery, - "LIMIT", "0", this.MaxResults.ToString(CultureInfo.InvariantCulture)).ConfigureAwait(false); - - var memories = ParseSearchResults(result); - var memoryTexts = memories - .Select(m => m.TryGetValue("content", out var c) ? c : null) - .Where(c => !string.IsNullOrEmpty(c)) - .ToList(); - - this._logger?.LogInformation( - "ValkeyContextProvider: Retrieved {Count} memories.", - memoryTexts.Count); - - if (memoryTexts.Count == 0) - { - return []; - } - - var outputText = $"{this._contextPrompt}\n{string.Join(Environment.NewLine, memoryTexts)}"; - return [new ChatMessage(ChatRole.User, outputText)]; - } - catch (OperationCanceledException) - { - throw; - } - catch (Exception ex) - { - this._logger?.LogError(ex, "ValkeyContextProvider: Failed to search for memories."); - return []; - } - } - - /// - protected override async ValueTask StoreAIContextAsync(InvokedContext context, CancellationToken cancellationToken = default) - { - Throw.IfNull(context); - this.ThrowIfDisposed(); - cancellationToken.ThrowIfCancellationRequested(); - - var state = this._sessionState.GetOrInitializeState(context.Session); - var scope = state.StorageScope; - - try - { - await this.EnsureIndexAsync(cancellationToken).ConfigureAwait(false); - var db = this._connection.GetDatabase(); - - foreach (var message in context.RequestMessages.Concat(context.ResponseMessages ?? [])) - { - cancellationToken.ThrowIfCancellationRequested(); - - if (message.Role != ChatRole.User && message.Role != ChatRole.Assistant && message.Role != ChatRole.System) - { - continue; - } - - if (string.IsNullOrWhiteSpace(message.Text)) - { - continue; - } - - var docId = $"{this._keyPrefix}{Guid.NewGuid():N}"; - var entries = new HashEntry[] - { - new("role", message.Role.Value), - new("content", message.Text), - new("application_id", scope.ApplicationId ?? string.Empty), - new("agent_id", scope.AgentId ?? string.Empty), - new("user_id", scope.UserId ?? string.Empty), - new("thread_id", scope.ThreadId ?? string.Empty), - }; - - await db.HashSetAsync(docId, entries).ConfigureAwait(false); - } - - this._logger?.LogInformation("ValkeyContextProvider: Stored messages."); - } - catch (OperationCanceledException) - { - throw; - } - catch (Exception ex) - { - this._logger?.LogError(ex, "ValkeyContextProvider: Failed to store messages."); - } - } - - private async Task EnsureIndexAsync(CancellationToken cancellationToken) - { - lock (this._indexLock) - { - if (this._indexCreated) - { - return; - } - } - - await this._indexCreationGate.WaitAsync(cancellationToken).ConfigureAwait(false); - try - { - lock (this._indexLock) - { - if (this._indexCreated) - { - return; - } - } - - cancellationToken.ThrowIfCancellationRequested(); - var db = this._connection.GetDatabase(); - - try - { - await db.ExecuteAsync( - "FT.CREATE", - this._indexName, - "ON", "HASH", - "PREFIX", "1", this._keyPrefix, - "SCHEMA", - "role", "TAG", - "content", "TEXT", - "application_id", "TAG", - "agent_id", "TAG", - "user_id", "TAG", - "thread_id", "TAG").ConfigureAwait(false); - } - catch (RedisServerException ex) when (ex.Message.Contains("Index already exists", StringComparison.OrdinalIgnoreCase)) - { - // Index already exists — this is expected - } - - lock (this._indexLock) - { - this._indexCreated = true; - } - } - finally - { - this._indexCreationGate.Release(); - } - } - - internal static List> ParseSearchResults(RedisResult result) - { - var docs = new List>(); - if (result.IsNull) - { - return docs; - } - - var results = (RedisResult[])result!; - if (results.Length < 2) - { - return docs; - } - - // FT.SEARCH returns: [total_count, doc_id, [field, value, ...], doc_id, ...] - for (int i = 1; i < results.Length; i += 2) - { - if (i + 1 >= results.Length) - { - break; - } - - var fields = (RedisResult[])results[i + 1]!; - var doc = new Dictionary(StringComparer.Ordinal); - for (int j = 0; j + 1 < fields.Length; j += 2) - { - doc[(string)fields[j]!] = (string)fields[j + 1]!; - } - - docs.Add(doc); - } - - return docs; - } - - internal static string EscapeTag(string value) - { - return value - .Replace("\\", "\\\\") - .Replace("{", "\\{") - .Replace("}", "\\}") - .Replace("@", "\\@") - .Replace("|", "\\|") - .Replace(" ", "\\ "); - } - - internal static string EscapeQuery(string text) - { - var escaped = new System.Text.StringBuilder(text.Length * 2); - foreach (var ch in text) - { - if (Array.IndexOf(s_specialQueryChars, ch) >= 0) - { - escaped.Append('\\'); - } - - escaped.Append(ch); - } - - return escaped.ToString(); - } - - private static Func ValidateStateInitializer(Func stateInitializer) => - session => - { - var state = stateInitializer(session); - if (state?.StorageScope is null || state.SearchScope is null) - { - throw new InvalidOperationException("State initializer must return a non-null state with valid storage and search scopes."); - } - - var ss = state.StorageScope; - var rs = state.SearchScope; - if (ss.AgentId is null && ss.UserId is null && ss.ApplicationId is null && ss.ThreadId is null) - { - throw new InvalidOperationException("At least one scoping parameter (AgentId, UserId, ApplicationId, or ThreadId) must be set on StorageScope."); - } - - if (rs.AgentId is null && rs.UserId is null && rs.ApplicationId is null && rs.ThreadId is null) - { - throw new InvalidOperationException("At least one scoping parameter (AgentId, UserId, ApplicationId, or ThreadId) must be set on SearchScope."); - } - - return state; - }; - - private void ThrowIfDisposed() - { -#if NET8_0_OR_GREATER - ObjectDisposedException.ThrowIf(this._disposed, this); -#else - if (this._disposed) - { - throw new ObjectDisposedException(this.GetType().Name); - } -#endif - } - - /// - public async ValueTask DisposeAsync() - { - if (this._disposed) - { - return; - } - - this._disposed = true; - this._indexCreationGate.Dispose(); - - if (this._ownsConnection) - { - await this._connection.CloseAsync().ConfigureAwait(false); - this._connection.Dispose(); - } - } - - /// - /// Represents the per-session state of a . - /// - public sealed class State - { - /// - /// Initializes a new instance of the class. - /// - /// The scope to use when storing context. - /// The scope to use when searching. If null, the storage scope is used. - public State(ValkeyProviderScope storageScope, ValkeyProviderScope? searchScope = null) - { - this.StorageScope = Throw.IfNull(storageScope); - this.SearchScope = searchScope ?? storageScope; - } - - /// - /// Gets the scope used when storing context. - /// - public ValkeyProviderScope StorageScope { get; } - - /// - /// Gets the scope used when searching context. - /// - public ValkeyProviderScope SearchScope { get; } - } -} diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs deleted file mode 100644 index 96d2b67d873..00000000000 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyProviderScope.cs +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) Microsoft. All rights reserved. - -using Microsoft.Shared.Diagnostics; - -namespace Microsoft.Agents.AI.Valkey; - -/// -/// Allows scoping of context for the . -/// -/// -/// Context can be scoped by one or more of: application, agent, thread, and user. -/// At least one scope must be provided. -/// -public sealed class ValkeyProviderScope -{ - /// - /// Initializes a new instance of the class. - /// - public ValkeyProviderScope() { } - - /// - /// Initializes a new instance of the class by cloning an existing scope. - /// - /// The scope to clone. - public ValkeyProviderScope(ValkeyProviderScope sourceScope) - { - Throw.IfNull(sourceScope); - - this.ApplicationId = sourceScope.ApplicationId; - this.AgentId = sourceScope.AgentId; - this.ThreadId = sourceScope.ThreadId; - this.UserId = sourceScope.UserId; - } - - /// - /// Gets or sets an optional ID for the application to scope context to. - /// - /// If not set, the scope of the context will span all applications. - public string? ApplicationId { get; set; } - - /// - /// Gets or sets an optional ID for the agent to scope context to. - /// - /// If not set, the scope of the context will span all agents. - public string? AgentId { get; set; } - - /// - /// Gets or sets an optional ID for the thread to scope context to. - /// - /// If not set, the scope of the context will span all threads. - public string? ThreadId { get; set; } - - /// - /// Gets or sets an optional ID for the user to scope context to. - /// - /// If not set, the scope of the context will span all users. - public string? UserId { get; set; } -} diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs index 485ebad4391..1f320ec34fe 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/TestHelpers.cs @@ -39,19 +39,6 @@ internal static ChatHistoryProvider.InvokedContext CreateChatHistoryInvokedConte new TestAgentSession(), requestMessages, responseMessages); -#pragma warning restore MAAI001 - } - - internal static AIContextProvider.InvokedContext CreateContextProviderInvokedContext( - IEnumerable requestMessages, - IEnumerable responseMessages) - { -#pragma warning disable MAAI001 - return new AIContextProvider.InvokedContext( - MockAgent, - new TestAgentSession(), - requestMessages, - responseMessages); #pragma warning restore MAAI001 } } diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs index 813ede791ce..d624b58fa1f 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyChatHistoryProviderTests.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; using Microsoft.Extensions.AI; using Moq; -using StackExchange.Redis; +using Valkey.Glide; namespace Microsoft.Agents.AI.Valkey.UnitTests; @@ -20,7 +20,7 @@ private static Mock CreateMockConnection(Mock { var mockConnection = new Mock(); dbMock ??= new Mock(); - mockConnection.Setup(c => c.GetDatabase(It.IsAny(), It.IsAny())).Returns(dbMock.Object); + mockConnection.Setup(c => c.GetDatabase()).Returns(dbMock.Object); return mockConnection; } @@ -33,12 +33,10 @@ public void Constructor_WithConnection_SetsProperties() var provider = new ValkeyChatHistoryProvider( CreateMockConnection().Object, static (_) => new ValkeyChatHistoryProvider.State("conv-1"), - keyPrefix: "test_prefix"); + new ValkeyChatHistoryProviderOptions { KeyPrefix = "test_prefix" }); // Assert Assert.NotNull(provider); - Assert.Null(provider.MaxMessages); - Assert.Null(provider.MaxMessagesToRetrieve); } [Fact] @@ -47,7 +45,7 @@ public void Constructor_WithConnection_NullConnection_Throws() // Act & Assert Assert.Throws(() => new ValkeyChatHistoryProvider( - (IConnectionMultiplexer)null!, + null!, static (_) => new ValkeyChatHistoryProvider.State("conv-1"))); } @@ -117,64 +115,13 @@ public void StateKeys_WithCustomKey_ReturnsCustomKey() var provider = new ValkeyChatHistoryProvider( CreateMockConnection().Object, _ => new ValkeyChatHistoryProvider.State("conv-1"), - stateKey: "custom_key"); + new ValkeyChatHistoryProviderOptions { StateKey = "custom_key" }); var keys = provider.StateKeys; Assert.Single(keys); Assert.Equal("custom_key", keys[0]); } - // --- Property tests --- - - [Fact] - public void MaxMessages_CanBeSet() - { - var provider = new ValkeyChatHistoryProvider( - CreateMockConnection().Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")) - { - MaxMessages = 50 - }; - - Assert.Equal(50, provider.MaxMessages); - } - - // --- Dispose tests --- - - [Fact] - public async Task DisposeAsync_OwnedConnection_ClosesAndDisposesAsync() - { - // Arrange - var mockConnection = CreateMockConnection(); - mockConnection.Setup(c => c.CloseAsync()).Returns(Task.CompletedTask); - mockConnection.Setup(c => c.Dispose()); - - // We can't easily test the connection-string constructor without a server, - // so we test the IConnectionMultiplexer overload (ownsConnection=false) doesn't close. - var provider = new ValkeyChatHistoryProvider( - mockConnection.Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")); - - // Act - await provider.DisposeAsync(); - - // Assert — non-owned connection should NOT be closed - mockConnection.Verify(c => c.CloseAsync(), Times.Never); - } - - [Fact] - public async Task DisposeAsync_CalledTwice_NoOpAsync() - { - // Arrange - var provider = new ValkeyChatHistoryProvider( - CreateMockConnection().Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")); - - // Act — should not throw - await provider.DisposeAsync(); - await provider.DisposeAsync(); - } - // --- ProvideChatHistoryAsync tests --- [Fact] @@ -184,12 +131,12 @@ public async Task ProvideChatHistoryAsync_ReturnsDeserializedMessagesAsync() var dbMock = new Mock(); var msg1 = new ChatMessage(ChatRole.User, "hello"); var msg2 = new ChatMessage(ChatRole.Assistant, "hi there"); - var values = new RedisValue[] + var values = new ValkeyValue[] { JsonSerializer.Serialize(msg1), JsonSerializer.Serialize(msg2) }; - dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny())) .ReturnsAsync(values); var provider = new ValkeyChatHistoryProvider( @@ -211,15 +158,13 @@ public async Task ProvideChatHistoryAsync_WithMaxMessagesToRetrieve_UsesRangeQue { // Arrange var dbMock = new Mock(); - dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + dbMock.Setup(d => d.ListRangeAsync(It.IsAny(), It.IsAny(), It.IsAny())) .ReturnsAsync([]); var provider = new ValkeyChatHistoryProvider( CreateMockConnection(dbMock).Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")) - { - MaxMessagesToRetrieve = 5 - }; + _ => new ValkeyChatHistoryProvider.State("conv-1"), + new ValkeyChatHistoryProviderOptions { MaxMessagesToRetrieve = 5 }); var context = TestHelpers.CreateChatHistoryInvokingContext(); @@ -228,7 +173,7 @@ public async Task ProvideChatHistoryAsync_WithMaxMessagesToRetrieve_UsesRangeQue // Assert — should use -5, -1 range dbMock.Verify(d => d.ListRangeAsync( - It.IsAny(), -5, -1, It.IsAny()), Times.Once); + It.IsAny(), -5, -1), Times.Once); } [Fact] @@ -256,7 +201,7 @@ public async Task StoreChatHistoryAsync_BatchPushesMessagesAsync() { // Arrange var dbMock = new Mock(); - dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny())) .ReturnsAsync(2); var provider = new ValkeyChatHistoryProvider( @@ -272,7 +217,7 @@ [new ChatMessage(ChatRole.User, "hello")], // Assert — batch push called once with array dbMock.Verify(d => d.ListRightPushAsync( - It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()), Times.Once); + It.IsAny(), It.IsAny()), Times.Once); } [Fact] @@ -280,17 +225,15 @@ public async Task StoreChatHistoryAsync_WithMaxMessages_TrimsAsync() { // Arrange var dbMock = new Mock(); - dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + dbMock.Setup(d => d.ListRightPushAsync(It.IsAny(), It.IsAny())) .ReturnsAsync(1); - dbMock.Setup(d => d.ListTrimAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + dbMock.Setup(d => d.ListTrimAsync(It.IsAny(), It.IsAny(), It.IsAny())) .Returns(Task.CompletedTask); var provider = new ValkeyChatHistoryProvider( CreateMockConnection(dbMock).Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")) - { - MaxMessages = 10 - }; + _ => new ValkeyChatHistoryProvider.State("conv-1"), + new ValkeyChatHistoryProviderOptions { MaxMessages = 10 }); var context = TestHelpers.CreateChatHistoryInvokedContext( [new ChatMessage(ChatRole.User, "hello")], @@ -301,25 +244,6 @@ [new ChatMessage(ChatRole.User, "hello")], // Assert — trim called unconditionally when MaxMessages is set dbMock.Verify(d => d.ListTrimAsync( - It.IsAny(), -10, -1, It.IsAny()), Times.Once); - } - - // --- Disposed state tests --- - - [Fact] - public async Task ProvideChatHistoryAsync_AfterDispose_ThrowsAsync() - { - // Arrange - var provider = new ValkeyChatHistoryProvider( - CreateMockConnection().Object, - _ => new ValkeyChatHistoryProvider.State("conv-1")); - - await provider.DisposeAsync(); - - var context = TestHelpers.CreateChatHistoryInvokingContext(); - - // Act & Assert - await Assert.ThrowsAsync(() => - provider.InvokingAsync(context).AsTask()); + It.IsAny(), -10, -1), Times.Once); } } diff --git a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs b/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs deleted file mode 100644 index bc2b24a5283..00000000000 --- a/dotnet/tests/Microsoft.Agents.AI.Valkey.UnitTests/ValkeyContextProviderTests.cs +++ /dev/null @@ -1,277 +0,0 @@ -// Copyright (c) Microsoft. All rights reserved. - -using System; -using System.Threading.Tasks; -using Moq; -using StackExchange.Redis; - -namespace Microsoft.Agents.AI.Valkey.UnitTests; - -/// -/// Unit tests for . -/// -public sealed class ValkeyContextProviderTests -{ - private static ValkeyContextProvider.State CreateValidState() => - new(new ValkeyProviderScope { UserId = "user-1" }); - - private static Mock CreateMockConnection(Mock? dbMock = null) - { - var mockConnection = new Mock(); - dbMock ??= new Mock(); - mockConnection.Setup(c => c.GetDatabase(It.IsAny(), It.IsAny())).Returns(dbMock.Object); - return mockConnection; - } - - // --- Constructor tests --- - - [Fact] - public void Constructor_WithConnection_SetsProperties() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState(), - indexName: "test_idx", - keyPrefix: "test:"); - - Assert.NotNull(provider); - Assert.Equal(10, provider.MaxResults); - } - - [Fact] - public void Constructor_NullConnection_Throws() - { - Assert.Throws(() => - new ValkeyContextProvider( - (IConnectionMultiplexer)null!, - _ => CreateValidState())); - } - - [Fact] - public void Constructor_NullStateInitializer_Throws() - { - Assert.Throws(() => - new ValkeyContextProvider( - CreateMockConnection().Object, - null!)); - } - - // --- State tests --- - - [Fact] - public void State_ValidScope_SetsProperties() - { - var storageScope = new ValkeyProviderScope { UserId = "user-1", AgentId = "agent-1" }; - var searchScope = new ValkeyProviderScope { UserId = "user-1" }; - - var state = new ValkeyContextProvider.State(storageScope, searchScope); - - Assert.Same(storageScope, state.StorageScope); - Assert.Same(searchScope, state.SearchScope); - } - - [Fact] - public void State_NullSearchScope_DefaultsToStorageScope() - { - var storageScope = new ValkeyProviderScope { UserId = "user-1" }; - var state = new ValkeyContextProvider.State(storageScope); - - Assert.Same(storageScope, state.StorageScope); - Assert.Same(storageScope, state.SearchScope); - } - - [Fact] - public void State_NullStorageScope_Throws() - { - Assert.Throws(() => new ValkeyContextProvider.State(null!)); - } - - // --- StateKeys tests --- - - [Fact] - public void StateKeys_ReturnsProviderTypeName() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState()); - - var keys = provider.StateKeys; - Assert.Single(keys); - Assert.Equal(nameof(ValkeyContextProvider), keys[0]); - } - - [Fact] - public void StateKeys_WithCustomKey_ReturnsCustomKey() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState(), - stateKey: "my_key"); - - var keys = provider.StateKeys; - Assert.Single(keys); - Assert.Equal("my_key", keys[0]); - } - - // --- ValkeyProviderScope tests --- - - [Fact] - public void ValkeyProviderScope_Properties_SetCorrectly() - { - var scope = new ValkeyProviderScope - { - ApplicationId = "app-1", - AgentId = "agent-1", - ThreadId = "thread-1", - UserId = "user-1" - }; - - Assert.Equal("app-1", scope.ApplicationId); - Assert.Equal("agent-1", scope.AgentId); - Assert.Equal("thread-1", scope.ThreadId); - Assert.Equal("user-1", scope.UserId); - } - - [Fact] - public void ValkeyProviderScope_CopyConstructor_ClonesAllProperties() - { - var original = new ValkeyProviderScope - { - ApplicationId = "app-1", - AgentId = "agent-1", - ThreadId = "thread-1", - UserId = "user-1" - }; - - var copy = new ValkeyProviderScope(original); - - Assert.Equal(original.ApplicationId, copy.ApplicationId); - Assert.Equal(original.AgentId, copy.AgentId); - Assert.Equal(original.ThreadId, copy.ThreadId); - Assert.Equal(original.UserId, copy.UserId); - } - - [Fact] - public void ValkeyProviderScope_CopyConstructor_NullSource_Throws() - { - Assert.Throws(() => new ValkeyProviderScope(null!)); - } - - // --- MaxResults tests --- - - [Fact] - public void MaxResults_DefaultsTo10() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState()); - - Assert.Equal(10, provider.MaxResults); - } - - [Fact] - public void MaxResults_CanBeSet() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState()) - { - MaxResults = 25 - }; - - Assert.Equal(25, provider.MaxResults); - } - - // --- EscapeTag tests --- - - [Theory] - [InlineData("simple", "simple")] - [InlineData("has space", "has\\ space")] - [InlineData("has{brace}", "has\\{brace\\}")] - [InlineData("has@at", "has\\@at")] - [InlineData("has|pipe", "has\\|pipe")] - [InlineData("back\\slash", "back\\\\slash")] - public void EscapeTag_EscapesSpecialCharacters(string input, string expected) - { - Assert.Equal(expected, ValkeyContextProvider.EscapeTag(input)); - } - - // --- EscapeQuery tests --- - - [Theory] - [InlineData("simple text", "simple text")] - [InlineData("hello@world", "hello\\@world")] - [InlineData("a*b", "a\\*b")] - [InlineData("(test)", "\\(test\\)")] - [InlineData("no:colons", "no\\:colons")] - public void EscapeQuery_EscapesSpecialCharacters(string input, string expected) - { - Assert.Equal(expected, ValkeyContextProvider.EscapeQuery(input)); - } - - // --- ParseSearchResults tests --- - - [Fact] - public void ParseSearchResults_NullResult_ReturnsEmpty() - { - var result = RedisResult.Create(RedisValue.Null); - var docs = ValkeyContextProvider.ParseSearchResults(result); - Assert.Empty(docs); - } - - [Fact] - public void ParseSearchResults_ValidResult_ParsesDocuments() - { - // FT.SEARCH returns: [total_count, doc_id, [field, value, ...], ...] - var inner = new RedisResult[] - { - RedisResult.Create((RedisValue)"content"), - RedisResult.Create((RedisValue)"hello world"), - RedisResult.Create((RedisValue)"role"), - RedisResult.Create((RedisValue)"user"), - }; - - var results = new RedisResult[] - { - RedisResult.Create((RedisValue)1), // total count - RedisResult.Create((RedisValue)"doc:1"), // doc id - RedisResult.Create(inner), // fields - }; - - var result = RedisResult.Create(results); - var docs = ValkeyContextProvider.ParseSearchResults(result); - - Assert.Single(docs); - Assert.Equal("hello world", docs[0]["content"]); - Assert.Equal("user", docs[0]["role"]); - } - - // --- Dispose tests --- - - [Fact] - public async Task DisposeAsync_CalledTwice_NoOpAsync() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState()); - - await provider.DisposeAsync(); - await provider.DisposeAsync(); - } - - [Fact] - public async Task AfterDispose_ThrowsObjectDisposedExceptionAsync() - { - var provider = new ValkeyContextProvider( - CreateMockConnection().Object, - _ => CreateValidState()); - - await provider.DisposeAsync(); - - await Assert.ThrowsAsync(() => - provider.InvokedAsync( - TestHelpers.CreateContextProviderInvokedContext( - [new Extensions.AI.ChatMessage(Extensions.AI.ChatRole.User, "test")], - [new Extensions.AI.ChatMessage(Extensions.AI.ChatRole.Assistant, "reply")])).AsTask()); - } -} From f32cb6fabee12646ea961c6b1d112ea475841f0e Mon Sep 17 00:00:00 2001 From: Matthias Howell Date: Tue, 26 May 2026 09:54:16 -0400 Subject: [PATCH 03/25] Use type-safe JsonSerializer overloads, remove suppress attributes Use JsonSerializerOptions.GetTypeInfo() for Serialize/Deserialize calls to enable NativeAOT/trimming compatibility without suppress attributes. Default to AgentAbstractionsJsonUtilities.DefaultOptions when no options provided. Signed-off-by: Matthias Howell --- .../ValkeyChatHistoryProvider.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs index ab640f71af6..088d66ed471 100644 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProvider.cs @@ -2,7 +2,6 @@ using System; using System.Collections.Generic; -using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Text.Json; using System.Text.Json.Serialization; @@ -48,6 +47,7 @@ public sealed class ValkeyChatHistoryProvider : ChatHistoryProvider private readonly string _keyPrefix; private readonly int? _maxMessages; private readonly int? _maxMessagesToRetrieve; + private readonly JsonSerializerOptions _jsonSerializerOptions; private readonly ILogger? _logger; /// @@ -72,6 +72,7 @@ public ValkeyChatHistoryProvider( this._keyPrefix = options?.KeyPrefix ?? "chat_history"; this._maxMessages = options?.MaxMessages; this._maxMessagesToRetrieve = options?.MaxMessagesToRetrieve; + this._jsonSerializerOptions = options?.JsonSerializerOptions ?? AgentAbstractionsJsonUtilities.DefaultOptions; this._logger = loggerFactory?.CreateLogger(); } @@ -79,8 +80,6 @@ public ValkeyChatHistoryProvider( public override IReadOnlyList StateKeys => this._stateKeys ??= [this._sessionState.StateKey]; /// - [UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "ChatMessage serialization uses known types.")] - [UnconditionalSuppressMessage("AOT", "IL3050", Justification = "ChatMessage serialization uses known types.")] protected override async ValueTask> ProvideChatHistoryAsync(InvokingContext context, CancellationToken cancellationToken = default) { Throw.IfNull(context); @@ -114,7 +113,7 @@ protected override async ValueTask> ProvideChatHistoryA try { - var message = JsonSerializer.Deserialize(value.ToString()); + var message = JsonSerializer.Deserialize(value.ToString(), this._jsonSerializerOptions.GetTypeInfo(typeof(ChatMessage))) as ChatMessage; if (message is not null) { messages.Add(message); @@ -135,8 +134,6 @@ protected override async ValueTask> ProvideChatHistoryA } /// - [UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "ChatMessage serialization uses known types.")] - [UnconditionalSuppressMessage("AOT", "IL3050", Justification = "ChatMessage serialization uses known types.")] protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, CancellationToken cancellationToken = default) { Throw.IfNull(context); @@ -157,7 +154,7 @@ protected override async ValueTask StoreChatHistoryAsync(InvokedContext context, for (int i = 0; i < messageList.Count; i++) { cancellationToken.ThrowIfCancellationRequested(); - serialized[i] = JsonSerializer.Serialize(messageList[i]); + serialized[i] = JsonSerializer.Serialize(messageList[i], this._jsonSerializerOptions.GetTypeInfo(typeof(ChatMessage))); } await db.ListRightPushAsync(key, serialized).ConfigureAwait(false); From 969f64956ac5fa6d4f20a6deaadec00ba3959d1a Mon Sep 17 00:00:00 2001 From: Matthias Howell Date: Thu, 4 Jun 2026 12:45:51 -0400 Subject: [PATCH 04/25] Update READMEs: remove context provider references Remove ValkeyContextProvider and long-term memory references from sample READMEs since the context provider was removed from this PR. Simplify Valkey server requirements (no search module needed for chat history). Signed-off-by: Matthias Howell --- .../AgentWithMemory_Step03_MemoryUsingValkey/README.md | 7 +++---- .../README.md | 7 +++---- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md index cece6e26927..08f65ecffaa 100644 --- a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey/README.md @@ -1,19 +1,18 @@ # Agent with Memory Using Valkey -This sample demonstrates using Valkey for both persistent chat history and long-term memory context with the Agent Framework. +This sample demonstrates using Valkey for persistent chat history with the Agent Framework. ## Components - **ValkeyChatHistoryProvider** — Persists conversation history across sessions using Valkey lists. Works with any Valkey or Redis OSS server (no search module required). -- **ValkeyContextProvider** — Stores and retrieves memories using Valkey's native full-text search (`FT.SEARCH`). Requires valkey-search >= 1.2. ## Prerequisites - Azure OpenAI endpoint and deployment -- Valkey 9.1+ with valkey-search module: +- A running Valkey server (any version): ```bash -docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +docker run -d --name valkey -p 6379:6379 valkey/valkey:latest ``` ## Environment Variables diff --git a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md index 3f3c8d2d26b..06d4012bd92 100644 --- a/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md +++ b/dotnet/samples/02-agents/AgentWithMemory/AgentWithMemory_Step03_MemoryUsingValkey_Bedrock/README.md @@ -1,21 +1,20 @@ # Agent with Memory Using Valkey + Amazon Bedrock -This sample demonstrates using Valkey for both persistent chat history and long-term memory context with the Agent Framework, powered by Amazon Bedrock via the `AWSSDK.Extensions.Bedrock.MEAI` adapter. +This sample demonstrates using Valkey for persistent chat history with the Agent Framework, powered by Amazon Bedrock via the `AWSSDK.Extensions.Bedrock.MEAI` adapter. ## Components - **ValkeyChatHistoryProvider** — Persists conversation history across sessions using Valkey lists. Works with any Valkey or Redis OSS server (no search module required). -- **ValkeyContextProvider** — Stores and retrieves memories using Valkey's native full-text search (`FT.SEARCH`). Requires valkey-search >= 1.2. - **Amazon Bedrock** — Provides the LLM via `AWSSDK.Extensions.Bedrock.MEAI`, which implements `IChatClient` from `Microsoft.Extensions.AI`. ## Prerequisites - AWS credentials configured (environment variables, AWS CLI profile, or IAM role) - Access to an Amazon Bedrock model (e.g., Anthropic Claude 3.5 Sonnet) -- Valkey 9.1+ with valkey-search module: +- A running Valkey server (any version): ```bash -docker run -d --name valkey -p 6379:6379 valkey/valkey-bundle:9.1.0-rc1 +docker run -d --name valkey -p 6379:6379 valkey/valkey:latest ``` ## Environment Variables From f468cf834fd6bffbb924b8c3d82e381fea958f35 Mon Sep 17 00:00:00 2001 From: westey <164392973+westey-m@users.noreply.github.com> Date: Mon, 8 Jun 2026 16:51:17 +0100 Subject: [PATCH 05/25] Apply suggestion from @westey-m --- dotnet/Directory.Packages.props | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dotnet/Directory.Packages.props b/dotnet/Directory.Packages.props index 6b788c20fce..08baaafbf45 100644 --- a/dotnet/Directory.Packages.props +++ b/dotnet/Directory.Packages.props @@ -139,6 +139,9 @@ + + + From a18915f87e2dfa42b4729a8888023ef1be3e5946 Mon Sep 17 00:00:00 2001 From: Matthias Howell Date: Mon, 8 Jun 2026 13:08:04 -0400 Subject: [PATCH 06/25] Fix formatting (dotnet format) Signed-off-by: Matthias Howell --- .../ValkeyChatHistoryProviderOptions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs index cffb0b5d92c..eabe4680cfc 100644 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/ValkeyChatHistoryProviderOptions.cs @@ -1,4 +1,4 @@ -// Copyright (c) Microsoft. All rights reserved. +// Copyright (c) Microsoft. All rights reserved. using System; using System.Collections.Generic; From 29cec0d27b7396cca76e93ebe2736369e8cc2cda Mon Sep 17 00:00:00 2001 From: Willow Lopez <100782273+Oxygen56@users.noreply.github.com> Date: Tue, 9 Jun 2026 23:17:39 +0800 Subject: [PATCH 07/25] Python: fix: use getattr for non-OpenAI provider response compatibility (#6270) * fix: use getattr for non-OpenAI provider response compatibility Fixes #6234 Fixes #6235 Use getattr with None fallback for system_fingerprint and output attributes to prevent AttributeError when non-OpenAI providers return response objects without these fields. * fix: use typed variable for response output to satisfy pyright Fixes #6235 Use getattr with None fallback for the output attribute, and assign to a typed list variable before the match statement to help pyright narrow the response item types correctly. * fix: rename response_outputs to avoid name collision with case-block variable Fixes #6235 Rename outputs to response_outputs on line 1974 to avoid mypy error about conflicting variable names in the match statement's case blocks. Also use list[Any] for explicit generic type annotation. * fix: use cast(list[Any]) for response output to satisfy pyright Fixes #6235 The getattr() call returns Unknown type which pyright cannot narrow in the match statement. Use an explicit cast to list[Any]. * fix: use hasattr guard instead of getattr for response.output Fixes #6235 Using hasattr(response, 'output') and then accessing response.output directly gives pyright enough type information to verify the match statement exhaustiveness. This avoids the cast(list[Any]) approach which pyright still flagged as partially unknown. * fix: use ternary operator for response_outputs assignment Replace if-else block with ternary expression to satisfy ruff SIM108 lint rule. This fixes the Package Checks (3.11) CI failure. * fix: use ternary with cast for ruff SIM108 and pyright type safety Replace if-else block with ternary expression using cast(list[Any], ...) to satisfy: - ruff SIM108 (use ternary instead of if-else) - ruff E501 (line length < 120) - pyright type narrowing (cast preserves type info lost in ternary) All local checks pass: ruff check, ruff format, pyright, 298 tests. * fix: replace hasattr+cast with try/except to preserve pyright types --------- Co-authored-by: Tao Chen --- .../packages/openai/agent_framework_openai/_chat_client.py | 6 +++++- .../agent_framework_openai/_chat_completion_client.py | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/python/packages/openai/agent_framework_openai/_chat_client.py b/python/packages/openai/agent_framework_openai/_chat_client.py index d998875d1ca..2d5cda9ee5d 100644 --- a/python/packages/openai/agent_framework_openai/_chat_client.py +++ b/python/packages/openai/agent_framework_openai/_chat_client.py @@ -1997,7 +1997,11 @@ def _parse_response_from_openai( metadata: dict[str, Any] = response.metadata or {} contents: list[Content] = [] local_shell_tool_name = self._get_local_shell_tool_name(options.get("tools")) - for item in response.output: # type: ignore[reportUnknownMemberType] + try: + response_outputs = response.output # type: ignore[reportUnknownMemberType] + except AttributeError: + response_outputs = [] + for item in response_outputs: # type: ignore[reportUnknownVariableType] match item.type: # types: # ParsedResponseOutputMessage[Unknown] | diff --git a/python/packages/openai/agent_framework_openai/_chat_completion_client.py b/python/packages/openai/agent_framework_openai/_chat_completion_client.py index a6878c9f2d2..0fd14aa2ef5 100644 --- a/python/packages/openai/agent_framework_openai/_chat_completion_client.py +++ b/python/packages/openai/agent_framework_openai/_chat_completion_client.py @@ -788,13 +788,13 @@ def _parse_text_from_openai(self, choice: Choice | ChunkChoice) -> Content | Non def _get_metadata_from_chat_response(self, response: ChatCompletion) -> dict[str, Any]: """Get metadata from a chat response.""" return { - "system_fingerprint": response.system_fingerprint, + "system_fingerprint": getattr(response, "system_fingerprint", None), } def _get_metadata_from_streaming_chat_response(self, response: ChatCompletionChunk) -> dict[str, Any]: """Get metadata from a streaming chat response.""" return { - "system_fingerprint": response.system_fingerprint, + "system_fingerprint": getattr(response, "system_fingerprint", None), } def _get_metadata_from_chat_choice(self, choice: Choice | ChunkChoice) -> dict[str, Any]: From dbfacbfc4aa676aca1c0a866e78e4da08ea2d2de Mon Sep 17 00:00:00 2001 From: Shawn Henry Date: Tue, 9 Jun 2026 08:56:56 -0700 Subject: [PATCH 08/25] New Microsoft Agent Framework logos (#6378) --- ...rosoft Foundry Agent Framework - Color.png | Bin 0 -> 224395 bytes ...Foundry Agent Framework - Fill (Black).png | Bin 0 -> 15160 bytes ...Foundry Agent Framework - Fill (White).png | Bin 0 -> 15879 bytes ...undry Agent Framework - Stroke (Black).png | Bin 0 -> 19436 bytes ...undry Agent Framework - Stroke (White).png | Bin 0 -> 20530 bytes ...rosoft Foundry Agent Framework - Color.svg | 55 ++++++++++++++++++ ...Foundry Agent Framework - Fill (Black).svg | 5 ++ ...Foundry Agent Framework - Fill (White).svg | 5 ++ ...undry Agent Framework - Stroke (Black).svg | 4 ++ ...undry Agent Framework - Stroke (White).svg | 4 ++ 10 files changed, 73 insertions(+) create mode 100644 docs/assets/PNG/Microsoft Foundry Agent Framework - Color.png create mode 100644 docs/assets/PNG/Microsoft Foundry Agent Framework - Fill (Black).png create mode 100644 docs/assets/PNG/Microsoft Foundry Agent Framework - Fill (White).png create mode 100644 docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (Black).png create mode 100644 docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (White).png create mode 100644 docs/assets/SVG/Microsoft Foundry Agent Framework - Color.svg create mode 100644 docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (Black).svg create mode 100644 docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (White).svg create mode 100644 docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (Black).svg create mode 100644 docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (White).svg diff --git a/docs/assets/PNG/Microsoft Foundry Agent Framework - Color.png b/docs/assets/PNG/Microsoft Foundry Agent Framework - Color.png new file mode 100644 index 0000000000000000000000000000000000000000..75559538435686ce8865c68d8ce92ecf36c37091 GIT binary patch literal 224395 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π&zN-D~t=PQ7tAurlLLhl_Sh#=dH*P*TiF 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 >HA`QX>$h&Et^1y!t9JRx_< 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ˡ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 CGe&*@ literal 0 HcmV?d00001 diff --git a/docs/assets/PNG/Microsoft Foundry Agent Framework - Fill (Black).png b/docs/assets/PNG/Microsoft Foundry Agent Framework - Fill (Black).png new file mode 100644 index 0000000000000000000000000000000000000000..a490d0c6df5f34cefc951fadd7100e73824993e7 GIT binary patch literal 15160 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 E2P5AU%K!iX literal 0 HcmV?d00001 diff --git a/docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (Black).png b/docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (Black).png new file mode 100644 index 0000000000000000000000000000000000000000..8d78004f0d36acc5fb84c32e2124b3dfe72ae2cc GIT binary patch literal 19436 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 literal 0 HcmV?d00001 diff --git a/docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (White).png b/docs/assets/PNG/Microsoft Foundry Agent Framework - Stroke (White).png new file mode 100644 index 0000000000000000000000000000000000000000..ac9663e405a2a36cb0b6ccf80073bef49f300578 GIT binary patch literal 20530 zcmeIac{tSj`#Ag>V+%Dp39UoBvP>mq$yCy6sZ^*YQ%)pn*%D@^RiSiFS;~4S5;2h_ zWTu45mXMGo#aOa$!z}OTemkGf@B03p|DHdd>w2#1`E_0A;I-bb`*pwW{eIs$WU+Uy z++sO|(A@p|b{|1V5`L9LveNK_xopFA_%X+0pRFfCng{X!2v4_1q(URX^T^&^D5H95 zFFxLJr}<8VUWUmF&q%@F^Sn%LysX?EynN4GI*0Z+Il7*Sdl_MmkmZa0yLTSFO!(c} zAFkB&lKQ(N9h)j~zIs6U_RAeNrOs+bEtjWj_LNDe$`_m?e7L4zvUVe zQsEUVjbyaE)nU}ineSZ%&{6GKxe~tmwmL!Ba+BSJMiai>Q8-7ks$65Iq zzp8P^rfZY-rXbcFS-{ZXIw^+MFW)Y|FU4XFjdlQitB-FJhaR%JISC)yl$l&)b$~xaz1w9-bAq?_na-?zH$sTu7ANLF}7Ft)v7~ zMH+cT!YrGcxoS2?UApwsSoXQAs9z1* ztKF`i6j^pnd+>5*rhLV5Gh;LDlR3tPleX8QJ)9A@6W=L&eJN(Dnz>@G>v9 z&A+xdN_bWimSj<%-DLV{SB%9Qh0P2Fw)!kj-z9qeike~{SL3bs7M4OM8rW^AP<{zee4Ah9$r1)xvZCDB@&Rr4hgIVjp zxYEoFU!pa`c@m)I)Ajm8Z=pm+oefOp7KFbW^0P4HWe#(Kj4TyB9$mxX@&4G$6NWhr z3g2FuQS0bw1Z>fzvYa+^s(P0$d?@PjyT)1zt8=q{r8tX{6C0S4`hkibv1M>wC_+6Y zek`-GMMJpvp?UtMrxnmfkIQ;A29v*kWja#sxRmK97a0#nmFYuQcaoMu`!BD1y~fko z8g_!U`U5uHLS1F(@i3lts%Ad-VS0);|2;{Bmh||}u=UY{VH#7!rF9HwV2wQ0XBMjs z;CQeJa%mQ2dKzGdJG3mPxA;fY`P`~+T~G*J3Guo-OBtu#fJnN2meUlq+skd?#s0r$ z;qBInc5ZX?G?;jt7sx))`xxF0%kN`yD|XBxC0D?a)lbFVAj?soq#MJ@#mF>c_?uPcwTQ zW6DpQMN$8}BEt~+HmBE|MRIhPw*}88P6aliY=y<=?i0YT ztQVjDdm6(1)!PqGh_Z{AFTv7s-tj50h8_TH2Uu=R5{s&FcoXnXP!I&AWEd8F*{ zS%NXyml8_xcf#LT&-$wAlFlb;@N0f1P>Nlb*M&kX1W7-bJ*@jjILro5F(q+SeC4k? zX~Gtx?{MuD%cfTXvZp~_uw>Mp#quz@`CW$|T&AbkLwP_TqT%?)pF)f!qu{Ii`flNw zHM2+gc58H}5Pw*h0qpzx&+O~=2O?oys1B`PCSVOtv8;)Go?@==!>Qj7Vth0c23LH8 z4L{p49*@O8Z{>*nPxZ^lN8rccX2tZH6ul!KSBuX0=YP@u(4CtXCGwAdh+G?|2_fIcPqWZo%i(b+RMTDZK44f&E0X1RPF;f z*=lF%zV>dfdrsA4)g1y+KcLA#3WSHI`7D+=w0;#ttmvI0o&xPnbLZnRnd9rCMaW7& z*_lW{QE4vSLU%xVYAZSFkOhaFa8K&mZK(69NDg7*AfHzafUr$_;DJF;GX9WqF%!Mai)Q3`R0OiL*q<%e0z3G?hgLr{-fKt>%Qb%1$>z5rPRSS zxn>lpR*l8-nU>3_-=rwdVi=koQEvMQsH6DO%!-`qfOA8P|Jh5Ja`x; zu3fL=I;%3~> zR%02bd`Fm#-s_jsJ@iEk)Cy0_xsLIysLJVkw{+eIo=-3qcELBOld$Jd+eyny1r{$_ zlzQH38p)xa)Bv{s@zWU5E8{(`E@mS3>CZ1q#|@n;U7m zoLrFOT}|b$EV}$`8LjRTsz>z-w_f<18*(xB)0n3pnGA8$(t)6CTNB0-rx>V_K%03i}x6)BI z1bRQCq+gYDwOr{J0ac#VvlfchmRn&>I@j8Nd63_&eZ5g#iojm1&rtNJbl`v-_Ovp7 zw!LP=gw8mcD`O=YfH?B|t%VU52JiXI5IyjH|;Y^w4g=bk| zn?J#8tAF~i5J`tuO+E3|UtU2Vz>6y1AP#e?#zLfL9@ix1fPmp%_?6$feHT1p&rc)4 z*nWpEk?RFaZd~i~n@cgt5zlg6JB8~N7frUS19Q>;HQZQptlX;)GjC#!VaFcr%Oufk|6u~LB6&%NUJy?t2l8fV%0PPqW9oiY zP_MDiOEq9r>AUVN=$Qk&vg~1r3RbQg6zJZRDZ&htpNp4&1UBENeT{~$YYe4|WQXi= zC{!=;J2Ab5wxqwSqIO#s+T??XQq~H3{chY7KZkla$%fj+J}pCvXr*pzFFWw3)ef`Q z}3Y zFc5dnx6meavj0+LZ;|a-=W%`LxVNUfmYy2pIj82{GP}u3*jj{xlza1vEKx)}MaoJNPeo$ib`|etV9RDhD z62z z!8qwP{u zZEOpObM{xv{zR_sb0riCqL9_JekiRjmWn#Z|xZE9UsN=Ln)af}3_&8}xelXS~C_>-y*H-$U!8cFUnP;Z=8j_Jg*O zv#w<8-0`^YGKl;27kYuc{qqR&PzExqJTPf@!r#o$8L_lJCYQb@Wj|bSkifNl`VvLm zT=#EO0U&Sv&pC~kM8HbU2$CTzT2=E-I_TH-HCo~zOO z+RQB{k1>Wg9~oX>c6`H!)Fj0hdq%J|1{f@A`6~h89xTx^e$dZ&w{J$S6#BYS5WCwz z6o0jzz_yw2+K5Z)RDW5`t@c(|ip%@__ox8!1G-GAOeeGDtKr&0A}5L5^I3D6XEc8l z$syL$gDF_reF;{>2M4Dn5JUY_gp>ET7lHvx|CojO{GtJJkxi^if#*H_SZ5B|Ci{20 z6r1#oau5+BhEjS4leIU=)0MhJ-d3mMB6y8aWu|^^2miAFu_*0mo0a!`di>Ob)RPl<@$G+7&4$Ba7U@7iH%2LJP3EKfhztj*%= z^)>kOn{~~Tv>mvDQ%LqZL?b?rDvXUfjFXZp_$|C_H zdi+LT$~&y}MlPod^b`lR1hhHN7R*C7w|+N@nae7V$f5J$c6DjLeH*7uXvtMQnun$X z1qOxwf3P?10n^Hf+&ba(NOH|^Pi<1#=%|TVUi#Q`qan~ZBY3V}Q=sQ|X9VnHK4=xL zje1c};HvytH{w~@yHpf+c7K+CUZpFytOqpY$=2a??z>Ct0*nnQP`f;2}84y#=Bp!jas19t#TBQ0KPX0l77Am4FbHWa5>b zEyL2nm)U2CwKu4M2AO*SE+gs! zl?zva1cYscKJN#VT7MJuKs2y5nRng93%P5)&yh$j(i?8JL7P8&*T3j@TV?~+GdJru z0E?oJluI;=&_pxWDs*VYV-d=fB*g4*wAi{8n84VPNTqYW0{Ue0@jh)ILi-_R*hAi$ zS!>TMT@={XpiL*@gt3>mAb9fLpY$Z-780e@_&zP5nbhGGzQ4Ym*Y&jDJC6~cH3t-t zuAZ46??#)VnXym2IY54Uo-tIO!%hDJIW~J0Lsk(AqsAsk#0!d^a{lDFN zNo;`8%K;35wNgbV{-+{U0jzHKlev+79vaG`p zhnOyjY(n*9`Rd87q~U4?V!7jsP=aefDf+Pj2<&Y{Y+^Kx`w89@Qax5kPLL)%7?3$% z4(d3oeYUYRR)oBDJCuI5m}ZkZVqYTGEf~xC2-h8Gs7z^KunLwApQj=g-n#jjfROlF zZy4v6x{cDHn7KsY?b)#6>Gxg&g3pK(yb7cTj0JIR;TkAiIal4}k=|asLG$}-J&)&V z9S3BQ%N=~4?dxnZJ@_SSvBW7Et~5L`6czg~aut6TC`zD{YS2W_ZB|S0A%<>OK4ikO zCa}*+K%>J@HG>t|HLdvb^5I=96$1MR-m08*16g-<1*y7IxlcDpT+R6d8rkcBvbUA8 zmq(TxBYHUC4QU=(A{lzowZnL`js*SOY|9CMSNbyf%Zo}kg zTtzrrm!C4)umYyjx8U?{PY86Ezr6fEP2Pi{QZb2zYahKPvBDMcZ4cxuNhlJkiVO&$ z1e69e4&FwfJmVQH8KDL`z6%<-&w&Mc`|0oA8n)R}1#M8n2g%QP5q=ZtQaA+ZZAp8> z=G6wOcRWBgpj?B~ZX~S7;lD#S%&V=kllXV2OQ`^Tqx?HWy})nje^y(teEXGE2ua=8)M|WI`!RXJ=&4AuIK{}it0~g4QCw391J+s2C1yww(AY{C1H3{>Tt0g0 z`hF@{*66f9xI&eYR_hZ)vk`VEdkKD(&k6` z?Z;FkmP@d*f!QOM4~yimF!5p(6ApjTiPbiIrq?~@TI7pU;c*w~o7mn$)RB&(W`l0h zJ2LALjBVCvCgN8bLaD9X8qepK4n;@!x$eg{}g^x7vnGY;Sv5&g{LO9 z=$=yuM(Xlggf#z#5p?zDcUZ2FZCn_2TuX=vanTF@-B9SNJf$T}a++u_A9wpSmZc<4 zLG)UD(ao?ZeIHyA>(OC8ks^&B%Ix7grb^XWPN3P4qWKS|EIR)2j~(zzH{8U2jux$_ zrbmmWHoh?Ni;H-NrFN3(tspf}%wY{-d}L(WsL?&AW$*4#xyks6s}o|!G6%$kQD4=S z#3=et*pj}>wUDVLbhmHr#1v162(u(a`75`TQ$20>-fP}J!!l|(#G!*`Eh5rC4P=%f zzJBPl?GsFux`kMfM<mJNI%|_S?)Lz667swm(SRDSUJ3BU^=$ zky|%brD7V77hutd<@>73z-5?W;{EzbheKHsFgpGa}E%fKn zxRj^E%;$U=`Z@!cuslHt%luRkq8jAGM0;>r%@3NB!8g2t|A`}{!?5`r)1EeBZ8^iN z9VBtT;m`z_Xo#n3V}#UuKbE~qrJ@D3a5KXTpYpNPqVHwHr5r0JS_7nj_}7jI?II$h zRonhCqCR|wc_Z!({9@yQGSXDrGA%@eZ7PP)FsR!5m}3RU4uY%1N$u5v5hm@l_F0=C zb`OcQhyp~Qn6wZ(Atpr4h0WN0E0r+s3g-3+@|A}O8El4rmuA^gEY%3sj9Rt~D8=FK zAt8rUN=2LTC!*(cqZ1o?I*jccA#qQE7+_U7WzH1d{!yfP6Ej8J&?Z>c=7hqvxIDYPr47`x3_3yEx5z#GeaT`4xEn#<3u5Vy%7%^QGZ`ow_|EWJp< z`v_AGHkE$@w`r4eL^$-R!du~|QpPlq{tu44v<77?ugh<#D0UY>at()MOIj(WJ!5#Y zlgzq_3$wJN7MLCUg%~&zkEgsD95NlBy4ZqgAo>r$ANTpgPA0kJ)Km)G<1xJ9fxCt3Zu$%|RYY$zXAc#QBRIr57zqa!wqMia6I+AmC2*F`dVTDC@YO(c@=!@J z%?li<6^L~gs34>^PU5SxC{Bt!XFyOqMo@zZ68HoQt1;wt`i4p^)iQ z+v@)UL&JNaL%DLA7~g9s!0aItKn?g~hU*k(o~L++!lfB3?JE=f8Q22kc*OV@Rinmr z`b?k?;d75CP9XgVi9UPh@Ow=N)Uq)QS4fP^B2SQIWmE926bJWA)%k}eibre z$3S5JjM{_$yotf==R>`iI%tldDqY8eFG2i3v!9BJ&edD%7Peh zY7zCvV5VkCxqPhiw7X4Cpck2JFh`ouaR#n`>!UH5J@qM~b~rpP0Qk>yA!LypJqBKT zM^7=Eu{~34*gH>x6(op9e6wk~_=!#C+Xn&f8e_jN->QSned+}D-Q1hnLAH96|4@c>*DGFSj=%qvgvL_L#Sw{5p) zA5)ffyk-)+-l~p1hrvTm7qMxX6aAj8Urm55eXUtY<3|2YGOWN*0)$i25B+;RfX%u= zyOToaLde+5U2060+W?_{`$v2FVB^yBw1of#QvkJ zWa0r_+SJCoCQ)NDgPAq!zECAl52%*%jd9N#7GNqH?_QC!<_X;;I>h3|tpRLnNpuT{ zOUgMuQbxD;f?M-CEWWuuxALnW$cY+v2(gg9SraI6oZVY7IYd7sfubJyv~hBU zQ%=#MC(K(|dG^|-Q< z$U}N1=xL+Eo(oj^8iRPTz*rjn1pQ)xbDpUEJ)5CHj*6f8tWfzuyI|TEp(LQl1(4vN z{n!;VNtMFFPKd8AnmOp@Da&FMv_1Edv(YCYvtJe?)cRx0l+k)Cka(40QY`N4(2FlN zrC*zmqPVf0OqG&tyR*A6CA7J&4Sk*<=7TuhvjVZ4ithXf#yHVaG7cI2y_igU3!)oI zAXQuaIfbE&#xt!GSpnOMWm$eLrdusA0)0319o7)z%B<=hEpesnwZ?P{jLN=Q6tPf+u)pmAj8sM~^vAT+63G?Yk% z@w*El4{HZq7Jf{r9k)b?=*$!A%yu0u?AarOC^x94TP4tJ*J6)BY$%vXztcQ)JvLuL zQFUMAe3lh1>*+Qom7>N4Y%oyG3VXVhP{}vbt-JQk&eBLZ4W03y#*(Zk^y?Oc&sNh$ z$1O2KZ}hOnuIxVUu~0~G^?MV{xKN9|68`X%V|6u~ZpBoPX!{+vrNwM;?x>b2zQ8!^ z#8(%>x+$n9(;0P)$D1pn9hP0=*ov7vapPTVD}hb3XlJQ|_rnUe`4WP1C$LR3`b~UN zI@~PKf(iei*H|WQ7Ve-1s$dYr(nX-Dn*b?*n}>A|xN=Aj@9AqM{hU~-HAW&KXtXI^ z8H;s8vcRL@fe&UR#V_&1;HC5i5Lp|dn&cps@L5~jve!3dv`7J=TceFVWxdpB80$8p zEv}m(r8fZ4O6{Nudb;BY_!=^cJDRB=e-ZJ5@8$vUlHpFbjvrUz#WDa&^IqRQ=$iuY zVJ=F+K>nj!Q+YkzZ=_hbD`7b<15i|NQkbqpYr&ENj147mHEHmlR?Wh&!5A?S$iP{Kt4;@Zr3W?85pxIM z&(53yEG#LSBjXZ^P;t_B5$E=QhSuEfo*g2oC<8Rwkl|}XzsUlpdirVozJbRKrpsZk9=s)o$@M*T4gnOU_8>e92yT{hdHb2s%!9jp4A=P@g6dfY4X%#OmaauGi zdEPy-(8_Nf0q#&E-DjPG4Z~fFpIQ1pnq($qmJ_({a2l1`R*e{O2^m%k zn`OH!buT#-fDw-O>CJ2ukm7+5$fDH+xDG_Qe`&^!C-$wS(W(O$a%blh+{5M3mGi#$ z!Gk`{u%U+0OsP6VzK#SspF=M8t-U)BC1hq0xZt!&1f_q0sJ^x`dRECZ?kz%Wp*m>M zGkuFufGlgGr)9=Yq{>y9gE}72yps4bw?KK+!;OjCj8g&`{54qulj0B)sD@y6Ej~Yp z>2j&W;~+!h^9g8M3e5}Nxzv*LgPbe27MQo`+pTb}2N@|qgmhV8RK2?-l+$SM0+xt) zVs}mP^&wz$YiW@vP9lLr^ZNNp-X^QR#|}7s4$}ipz<Gi6dw z3T38NA{IYzGChRkP{q2MFNMB^=JIhPc%dB{2fDQ&uoa2QSc8tlq08F{XnZUl^;in1 z>=Ku#ucA0VZ=pON# z0neNs=7nDJxFfKS7;7HsLstoV9;o~WMmRb;c^glS*omI;gU$dyjJHDLbrU98o#d!+ za2kXq^V>^37}}+Pi=CN^C&0ehbVo3 zT$V%x6C-7;ms7~TntC^&&rU;p=1(xLI|AV8*dST6=SpIguBXaanEmA~pM|x#Ox1X> zv$v7u(N){D0dZIAT5(PnGqe)}r$#U{>K5L4ee`O9GDf4CktOK6yZq}jicUrFR+M=L zC-bRN6g(OpQ*K-^eaKkzB$5qHd=vZ2&+qj6ZEMBkH+LPn+l?1Q;ZBw6q<$f%ldNhA zlGb!Hj}vn7bvLOR_$cDN4099D2X>t~0U!ueBhN8C9Khs`vJspq+yG{v8dz6gKHeT_ z7@|=hPX&!#k_Wp7f^Xf|A8e+}KILcL#5N{th?!dLg^WYOlIdQ!$KHXYXr}ZIlB>*- zH(%UUej1u)_Y5g=HG80MPEI2Rk|B@qdFPw2ng7-08Co@{I0J3UO#839jBZ1G3#29pvq*~ zr?GT}9EVOsQP(W?iN5xBc9s%)%h zaERcsH+IY&5UGV(DS=96q;(Uk31-@8wNn8S*XMDSb z?eBF14|*O3RgETGlB;-vFmfs zPu-}0hg&eFR(!I=x253nqDu}0%>;T`oxIpC%{~EOg>7t&!77gMG20PR3j|tGS*_zF z_QLO!P393kRY%AA446exu%-0Zu|CeHQL4>9KGmGK8R{LUrHT3zU^Ku>n-ywW*!6Jz zI;MC%JT!|I$9oxCwCP5FSw-dF` zF3u^%RA?q#6C5Z+j1hw*mH)GvZ1V@)heA?KFY~F0temWb)g(R|1JiR}S8X53%K>=I zxGuLByGt5pFa6){YUVUy9H%WYh&}0gA8fRK0d_(-WFLSVMeAzR(Unbb(Cx3ZxGH#j z+J-fHI&)|HQAo@Bk6E-IP$w!1X2ASSr(i=srz%KRWUzkiHI-U-abquaxK`uwJ4_L+ zd9Jo2 zNipClK!d3?q3=SGjZmiL(t-lUtOuSeYTZKx?f=YX9O$S;0L1qaNWln)V{!nx5H=}l zB{T+JA5i0Y%tyo{<{;{ndA%eAs?Pm!x1Wh z{fozpxXVE3Ef-}94R3yBM&%r-w0jt7m*~e~?BCv%Ni$;V@kr@6oe?3Sp;}~TimyRv z))zN+y#ZgVu|^G;63kkcDP~#&*#-}KydNrMg1)j;Bz!(Wj(A$+*d7s?M_^xq;9SDU znwc6={Mo2^pxeHkgU3_AueJX1WP5Skg+09?KS-aBN$mt1z=K zoC!WsiaijRUTW)%$N+q`8!#~O0e-eVu=Fu;IN8W_!Q*xt$V* zxJTd-%qkmq#f_q4-o5RLD}fFk;6vwth9Gkg)_MxBkbMRIN*NU{1?R#_csC7u)``LA ziIjnMxfkZ15?WK&17J@<-m(wi4)C9t09=-!1EVynU~KJ1ml5}$RK&gvfF1{_El@4y zb0BX7cPg_NgL_`%aVK_B;V0N_h^_@7r0<&bcbhAuC}S#+!SV-$ndm>jkNv!;2t4E9 z?ncfyATJO6usbPgf9OaqNsSiAOM_1rj%4#>e#UefV}rP&7x&fJECRM>69dY`2Av`B zZ6goR-;nZC+N5=hIH-9Xqa?YXByJP zjH9scNgzl1*X9l4Tc; zFnq}ne90v%<7XQ6F@qt95wYfe0X~RYq*%3(Nd`)F&w~AS*1zKzd6zMN4~UOx@%tk%PV;RSm#8Ez9KEzm4*oU=p3c6MGpu8&B@DY*eEi>IkHKZK-5@%L z_;-OwS|=giw@yev4)`-sY}@M@+pZ4Rvl_^;2LfL42Y+DKA(%pMgRA&ls`2me{MJ*ymu|z?-ry(+`6Q>yhF<~JU2ebt z_2#sxc^egOQo(TwoYN+PTrs9y5GHXRZs6NGpl10m$^(`^f5ajSIFz0Ryj{xE%hd3c zTZkIT8;|9j`awcmcfhCS(ZU5CYc@}HP1yR0FY%bh;XJzuru8@x9RfruXPlm|TB0Qb z`#*)jfScKDga44xn`~Nm8wF$zi%GP%4^JMvoAgw!gRUaw5MmbA5vW&urkaw{g7C1hKa6yHue#`e*oG)HXKv@gMX+Hy!4R7UzSVE=* z%y$HLy50a@el|L4uaHOT@GLxECh;4dA0AZac0=Mrpl&R(FPP2zf>vA|7&$3BtXD=N z^qu9VK`z${fNU2$d)UwIQw3>bwFRrtr}no@{uZd^;U0wvzOQ~FOM9VWLUWJ^&TIzI z4L>SSWg9WIsR4`X^4D1oNM8nNLIG8aYYjOq&x`8SI)*kD)BH|1kzf%USfu^45AoFQ zY_;KklVG@bF$-?TeK(;ge!C|n{G(2ipaR=oUX3eopkK3O0O|ebBP1<0Dj#ZigYxil zj~-xJqTko5UT;=DWGK;A&iAPem8!qT3PflJ=$+t1Q|kzd@}Y8Hh~P?NArAqz825te zhKG&PU)@+02sGM1=&u1F;v;@Dx9?NVRe%919A^BMdXzf~2o?Y~q9YlWY zKO~A`FH^bMkmIXbJ?kFEcfH;Hr(S{IDY^CPC>9cD;>x@lrB6TPeYHWK>*5omGtL+y zBDiDLra%tM=UT@`>EgR11D$m_S8F6XeiTSU3>2r1;r)#d?yMzj&)K=7buOMkaXHH@dN0Y=q*%jD0)0i21J8;e8EPZA-5#u{=e$61>ua35oR)2%c|^&e@? z&cu}OB#(tas_l&vXavyxQb0&em9g4`umt#Ze~0)~53r@tx!&dIWb z?6;=Zb66X5c5+D@Ar}!Rcsn-k=HNE{yF#A4Y7?xG>@gp@(RtzOg5Cm085Us<0zGX_ zTw-(}cQ>SBZIO*~q3$qL_L$H8I*_ykgu-SusM4Ep^s1ZKEolImPzm>>W6lN?!byrY zE2Ea9Z2|$FI7T6Yj+&G~J~T;iJhY271;uPf1%y5cc9ICO_tR8R+;GWY$b7pAE3Bp&qIm?aCb*gI z<(j^9mZg(Wwg-@97=GNX250E8&C^(hb=zZ1CJLMe!n}+S8!{+`1Gv*qr93E^YAw_Ku0`jIj18+R}%c;sqavz2uX8^kk`E>tG9YKIK7e zPhb6MhzHe+43@!Sw!HFMDU^2KoZr~6aaN#rw74Y}@>1nl;m@r7%!|kg+A>DTBIKb> zbHvh2V3Wfd#%|e#DufMnaSFvyXY?jAVx>3exs(0;i-j_XZPqj-x61W?`frxmoR- zxb_AM&zL}ZDileUkN&=%eUQLC3v-#ATZnt5zH^1(wcNL;S7f>;WS{SAy5Up)8~3fV zwVQ@^*SV~U4zF5%*SJEL-1kK=V1y4D@J|i{PMf}ea!BIxLiS<6=o&cE#Vjl?x&<_t zq~FxWBGNbZ@AeDAL*++LS*(GS@&{EtW@N!^Z@W~-6UlcBRt}so@lULjDK;abuUZ0M zLXm7japZDGNK{YqjE@DU63ahY$2lDmC*|-iW?sg@0VETlB!ypgVX`rZ_ zQEx_^hz62XIh?esCX4#w;qWpiP5OMOGC0|E!zpkXV7?*?+r>T5zwx_CU?$XOa?_5+ zw4Ibg4jMs^1XJMpzh9y$nLbGfuwE=5^#Zm$GH=0ATnFUDADBF5a)XAZ{x(gy>Za5|D_8_IoI$T2 zkEv_FvBuWHaSs!juVi!!OeR}GRyQ- z-GzGA1+`pZ*p(lBzsD!#!C5u^Q(GUu(FO5sMg8DVS4O>IP4I%+Mzb~1LxHi9*FT)O zo*4pqh2T>Df~dYttm-TcGY|vA@mj_1*-nN-;}ddMD$YRe6^s#ol6e+5uY4OCe>h1D zU0*n~!%t=WZ*%^o$}{{45bZ01wtFi{a8Z`V(J=kkt*@`XWVw`)3obA5iYU<%rrmQI zB%_4FrIYVRVo8paP@vmG+lwQtcdl(ZHL>;Rh8e6mhw5&hcq}tc zigdi#t;W-au?!+)_pAQMvY$6w`>C)ZTCKwzDm*sGNo4s8m^t#xp9EB$?qcKU`tfVq z)ZZLgI>kw|<84;^RIa^;d((}NdHU&a6#8X-3)$iItexkwxnogvuPbj#69%xU49%@? zQkMGEVS90lZR8hwNi@|US?`4E(Pq*xZJ_a4Sl}?NsZu}^@yZ|+K`CCkR`MBUw30w! zy99q%SMg)iY*fkmxl&LicE+%KE|7iq&HN&0v1V(_=MbLv*Uv@Qp*ljWCdd(ElVkG5 z&jSJ{^{a>SaO>iVezlon_kqmC*Y!U*fV!h??~v7=!z2$}!~TXmlg}r`)B@1atJjv> zD)4K)XYS9vUNLt_=EIqS$QUtm=X8Nl#faF5Jq#w;yi4B|6CStDS&_c;USsLl7H^fe z+SRLqme87|I2GMBtd^xUpdwSq`r^cw_KW3Nhkr>=5`TF__r!|xph%ljd65S6JXXh0 zU0V2puNPbVwj*oKNHS;#m2(RGFYzCZ( zMEtCoW_m@xqd_YE$B{@P!^`YNA|*J6LFI0Yo)<47im6`{IdNu<$FYsq%4cf6mr8e~ z=wmO5t)G&asJQPi%C@E&MMTd0GYARx=6TgCwCwM@)o8 zq%fF}cdPPq=5>JG>pOQpuCWPRSk>rfHqkg0sl~WUK*u$rBfe``+<$JJdQ(X{(%iZx z`g=s$w)rF1QJ$PUu465?ecu}_UNJ7M*U@4VB|SR*4b^z zCBZiV{HLS(y%sF_tFC(5x_mrv5uzJjYIbAw8RR^A*KuhElr9gvw|#QhAi9+TW`nt2 zApweUDiG|eNSPE3TjdAO{Qx;f*&<)O>LXVxg}M_LVU*xggHZJ$7Oyz2J^QVJSn~iH z0bNd*EmsA=l=KHO!iw*`zFOBC1CHM>gJ1;ab&apR-3SF$Z@V^464Q(KRYCnSya4ld zE5dAf_R*ALtsT+pLlcVf;(iIsK=gE_h?^uSP^)a;3@hxg_KOoiEtPcS*f)|#^ahECN{*>mT(T|&2C#zYI)JfRv;U7YryDvqVn<@cbKc-3C7)o>y{J7g}@Ya^HUNf09x zv9RY5(^?E)vzUg2U@MgLsk^>dyEiSfa587c%1_)X=9>tLbZSzIwo>2kd1V*R>q?~^ zu=3hgpE;1(<@e@k=4MbTAJpk6`{SkRj$arx(U+>R<|!kv+g3;0w%c3$j4G30&4Kc5 zFd%17Zg7J9nk^mvmOd${#w*^s z!3&UZ*mxGlY!aX_?z`2$F}8};^Z~E{W!Wtvh_s@p(-)?1R_(_(XVV6P#x!Wsl-F=_kQgmW zGhlxfJppz5MAw_iRVk2cy>bs|9;iD_O9|e@iFLmvR8K)EedZ;D9Po`nPsLwQ@Rk@p zRW}ynR?WE*iyxi-C<_XYE&<~J#r`yWzaV}zBCN%$0w^rq1Ypc=EVcynmqXz^)Dj*w z{tbBg_ZtTMWUm)+C6oxfx)J}H2FC)NF39B|Fv;wX4%HZZfFQaV+(`5m(8}6CCxvPU z_RaypfB_U9y!gjPVqjNY{gmNs*ORLzV)>i2(3 z{Q<2<3`YJe`4R)rvbR9z5-SF_9sf*(UCJyh^Rk?-GjKJj?$DYD^TvuosB-s<11p;Q z9q^rg2&W^&&(c-q%Kf>S$9zG9*S%_SwNEAHw!?3(lJB^O&*V zY=as?_@sqA{yhnxI=vhLI60jE?tb>@<>V9(zK0QYZ9R;sf*Lu8RXA0k&@`=U$uTdB zk9u9So)!&jrp!%hdqM$+KzoA9xw`$oyZ@{k#MY-+8J;=~kRm3i z9hARuRt8CH;KI;qiurOHJ|=Pa@}l%3|9)V>RW2L`4(bfZBm{X4tb*fZJy~#Sxf+$$ zzcsu)V?rK!Zvn{+FY9XT|L;d405S!g=-k0ZoW*q-`}dvzEV8^02ne^^ndG96I2mig z#Hiz-qdyVq@~FoOF?UZfd?W$1qM`$5CRe1)l{o!WtwZxj4=jd%;(^{Udl$&}KM!GH z@Xvq06!D*Dz&f|@MP~?n%>bC@<=eT>qQ7{{Nf=c0%42@jRr0sI)cg{}hZMmsoConmPCxz(*ltkD&+60DiWJcFpg^SS)lKFEeE$NV zaoMY9Pp}%2d3Nu0Z3fH5LI58fX`Bx9DlE;!zXJ2ZsD{BRH0>>YEMMmW9$$fH?93~U zK{8G?$auYJXErWQGFn_L%H!X^J7+cCNdIXbm(o)++3vp(oG_P_P`ZVl=S*Z*Q|WZf zC(m^?)K6n#+@lrs(#4_A*<++}6u!C>1L5am(*=Rxe}h~XbbNhugfMMXs5CZQ94MX` zDd%arwPe;58!_+TIlD&iMWL(!SIESnr~ym(lyh?sDltN)Q+IMx1A)Wy7R$xll9g$W z7qs#qDNry`?%9$Ej(VLgo=6YUq0dN*pgTs=ml2akkf1Yc6S@xs| z!b9N78a6K@4n9?$nRsXyO$DO^U+~2ZLd~axf#TzFAh*vr9 zM81#=;N%V}ge&9#@2bZPwTGVs8f*U%b8wwUu!CPaCrM+beFLAs!mGeMlvk@h zQ|As=TNO$z&!aBCkird`)X%Bm{IsfNeyN5+HgK1+Y%dtf7)wi#2Z~4XVg`#1J_76b xKmY#U!hjg_>9~(CzT-327zeqA|6lrNCNW%;%!=qgiA!m;-_&Av#xDA`{|hDaaxnk^ literal 0 HcmV?d00001 diff --git a/docs/assets/SVG/Microsoft Foundry Agent Framework - Color.svg b/docs/assets/SVG/Microsoft Foundry Agent Framework - Color.svg new file mode 100644 index 00000000000..d6b88d6f5bf --- /dev/null +++ b/docs/assets/SVG/Microsoft Foundry Agent Framework - Color.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (Black).svg b/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (Black).svg new file mode 100644 index 00000000000..29c9583ddbc --- /dev/null +++ b/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (Black).svg @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (White).svg b/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (White).svg new file mode 100644 index 00000000000..87d0878fc25 --- /dev/null +++ b/docs/assets/SVG/Microsoft Foundry Agent Framework - Fill (White).svg @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (Black).svg b/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (Black).svg new file mode 100644 index 00000000000..a9aabefdd88 --- /dev/null +++ b/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (Black).svg @@ -0,0 +1,4 @@ + + + + diff --git a/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (White).svg b/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (White).svg new file mode 100644 index 00000000000..63a56a70886 --- /dev/null +++ b/docs/assets/SVG/Microsoft Foundry Agent Framework - Stroke (White).svg @@ -0,0 +1,4 @@ + + + + From 5e6eb6f121bf3c414734fd8edc2047e1c92c86ad Mon Sep 17 00:00:00 2001 From: Shawn Henry Date: Tue, 9 Jun 2026 09:41:28 -0700 Subject: [PATCH 09/25] New logo in banner (#6380) --- docs/assets/readme-banner.png | Bin 139344 -> 1555111 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/assets/readme-banner.png b/docs/assets/readme-banner.png index defc110e49bbf925b01fdcdaa85d15405717873b..0b79ce6cc93ca42a514ebb93c24991883f449bc5 100644 GIT binary patch literal 1555111 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%0DGwx(!cbxYh^+i-$KZP z1`fUbt^w$2lWN|KPKChG$~-RW&R|{ z9=hpu<;cGr_^-K8`j-Oj^(KCX;BP08%O0TE4y}!BKY8DL5;+?b=6*S<5qzl&iaH;E zdj@LXsj;~c6_mq-A!rmpsW^*l5yIGkY>eQ)<&Ir$;fc~#-o34G6L3*V8M2)jxD*y& zvTxB&df|Tkm-p&mR=LCaYCNQ6_ey-ChEIk(8~6!~VDT24ur}Q;C2<&ludRkS@u)uA?Q9^ac=ShBR&yK}{!Vg(ttH)Rq(k zYykuO=@i*i=excjRmuv0;fZ>+C&Me==SBqWhLCdRC;Ut0^0KHcS7R8W(4x&^g!wo> zwhAXbX4mYc(4`HEpRmd-GQ6r-f-L={D#}=rcdJHpqbN??jt##aGk6(e1c;dL9^z(H zfzT%6<+DM+XZbdi=lJoiV%6)(Aggey37<_ z+JG97E(ozq!nAblkTezCZ&~L92$xbdJw=O0MOAk`Z@T z)cIVHr@l?I*vMAmyJFYmG5U%<+;A8IdwY!LT#C6x%gRMQpZ7?+N7PD;Wk;t*82!>s zzUoEAtK82BEgZWEm#K5|+_E3=WvP7tqKo`V4fjNf%KhAqG#A(Q*b8gx`4}QR*!3mi zA&zd{ISV)2;^x)#rbeuN`FJWm^!rPeU|ks6XGz-teGI*9>!8@9tLVnLaXmNvt7s*` zveT+=zH=CBLoAiZ%@rhxk_9^86q_}y*%Vzio19lg0SSJyu95W?=I0G>B@rW7x^TWx zu|>pL6EXK?CZQIjyH$I#>HQyaDo&@xfy3lO8Z5CTQEpXYZ_)epA72Wv_?*aK3fDNN z|A(!&42v>a!?uwQk!~pwL@5y%L_!*s7U=<`dtgAiLqbWVBo$OZV#r~TZlne2A%~KY z?(|!@_wj!Fi$5F#zlUc%>%On+JS#&=hIM`%I4$`J(4MLp-`w>0C6;5f zAg0oWnjzyY%EGLxqK??nKz1uT{_;ZjO&gB>lt;a;zq4v&6x`AD zRRh>lZ5H@w*o}!4DS5w0P3FRvV945`%0-v-*}A40)8pnd!$WGLz)i)yv%y^#1E#ur z-<&PU1b@@~Ok>(^M}3>Fm~p~FJy~$yGv#8dOJfxgVdu?C zu@o5-ZbXW|I96j~8_W}Ne$Y~QJ#Tv74pa*-r??hKU z=xP3J)XewvkBQ(2CgPj9PZ5iMk0&sRz;+zmZXOlCzD{UXS~n~1+w^B}P_bkW7® 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

    `)<}HQ2GGAL$FP1EX+rGzM^O={Q## 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 o(&Eg%+Zn_f4o|b@)BZmb$ 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

    WBwcOJTu=`&MWpKG>1Oig={D} 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

    Od9m3|kuPtScybuA`L|7dAYVYnOw4O?Rhsu%A? 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∨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 z

    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
    b z?X}VeaDK>oWu5Y#Li#l0Lu@rSOP%umo8!RMVUs|6gkuQU^B$AnE5~7`jS6(HQ>Xm@ zS#%CU7=gf$aVjLxs4NiWGDttn{)GJs!8|JWvJBZDu)PtUr-~s#M?N#+{T9Jf<Hn!K@<`$V>&}Zpiyl0T- zO`MA`J#963yS+|)p75Vu6o6n@s@ovhMJbqDo}WIc z&aW0*Vp}3a$hu?y&Gygv2m8I)xvV;WyNpx3Z`SAMy&D5B24}~lo$%g0%WanZSnhn* zx~%68-s@ClE_3#dI_U#AU*Uow>i&oKX=*_oJ`+iH_6nR=7j_DONFbL1-@NZ-KH@>p zA7i?l)uN9I=1@SK0=PMMV4LGyg7Yw@hxZc%xY>_$&bm04)z4?z`HYXxXBs6hd@jO% z<(#8OU|QaLu>RTqsJX0b@fz%FxG#N9?)jxo+oWⅇjYAoNu(EW$G6!b0q43A6K=JL@xHs8e8Oj_rJg#kQ#L-PN46PRjKKKj~_a z=fw0Sy_g}}H5ag98Oj1~lWGAsJ&%cp247_woMpRUKjxmBkg<^SjC{|4%u989+ih9u zqZix5P?tRS;2en05ajvElUdkiM$tU#mHw2^kocU1{T=6KydRQ$%RQ``*Xn%If4B(W zn!fv3-~Rwxjm?YWU@qH3$SM9qAeTX`oICujP-QHP%PO(9T%11VlMYa-KYuG$D1)jAcW4H&W?X5UuYr_74 z2RJzJ5JzlHI6ByjV}s2&Wp6>6n{ebH24>X)14_L!h03L?4EP9;mBYUc3SRY zy{R564Ru)FUyCpLYOum^6Wgtg0{XU1jL7&P&nQFU8ou_aS6Mm0+oc(1zz@AZ`8 zlfDY9Fc4-X%y=8ytqs^c&?sQ;DSI<6y4rEg(~HWW6_3Wbm_kU@aS7kB{MmkGaqPbu z#4W*!s3I;wT-W@V+>lPbYY<1SPMt;qItBgxT>1GYwNHrHXLp$eb%mEqIgQnAnb z%J5}>1y&iWu+ChI&6YZBwGtGq$39yFPS_tHZMYr9egp1AhR`$Vg=>CP@}U&)UIbEq z$OOFNA`UV)CiF5bAhC5eh_=aL+>8u}qHTtU>c@|eFw@ z&-#ny`$|I@)|x7?(X7DS9RqdPH%O56K2nBT1?H^_SUOaCopD3HCdpf_rr6Hul(9*Mxsdv0Sd7FCgv*eL46*K-?UB+?R`G z{dxG(P=M8@8`xs45E%D_qX9`yD)-*SX=kG-n^T%no$!r2rNlJisz#W z?xP6@Y6ZaU64l!zS0fJF>#)mKiOtqhY_Jq#t@(y*_t>hCI`UA|ci9gR!sYuyr6{Ww z79%LZ|CnZ~-*!#9@o-GTw^WL5NBT%JF1YXEw6g(6>^HG%fIfEvtBrYBVaOF*Ni*hQ zrIFiQtTN?cjky3Dtv9fZQ0`zQ4iDAhl%rmhbaQ;Il0PcTQnA-LAC_Qw0>Sa{ZLC7B zfVkgq0cSo_4&Y|kfRy3;IN_*6g5xFF^RUxaf}{3oBsy>5tc$*P8%Zvn^A=7zZz91_izL@AWP6)M zHP<-p5!Kgt5Lbh<{M|0<#V&zxO9Gw97`cygu6mqu)`}%LZ{m!L*SjT(ylEr%P#)|S z)moMbA;*Pp`JPfOprVzG<$Z#@Zw-smE+O2~U?(y?4+M%m?W)Bo7t?zaXWex;>%N8L z;d-Qb?xHNziLNP^0J3byypDCohn9&!QNhjgKf>kV27zq%4V7SvEg$Qw*RjTO6>F_m zvEF(O8wUum<_Vm;cc>T#hDveRUWNo`70wUW{{ydmC_m zxE5#J)ktzziOTMU;hRYD)FaE=C{Qj{a?LYTr=D7bwOI}?0<%A-sq)icBkuz|q9{8e z%Ct8l-2&dGdFqioT#d8tN}L;JeKJ4FQb+2L=YJsiCs@pL&VS4JI0eYZgSbk;S*gaV z_CSc)E)Z^cs1;ZJjkx5g#krA6vGXHUxag@CyX>h&mhU#I!|mvscFDb$dLPNfD?DhO zu;Nyv3k8AuqJEn=T#7@^JnXV(W6NMVHVvj>^WYV19ZJXcp-k+yXJfzPIu1MYaExHC zs}N^~OOQ&~HAq#<4m3@gVTgjG1e_EMs-e)O&ol+%s+dgf|8T;D+(0AFk5u5S0KXNu zjh>qy5zXVxN^dulij z=SFVeimwUe>pDsip5fVrAYIYiKY9>aXnCrn$c!ChERuATP0W-4{&~;X_ZwP z?}NF30sVkbYR`-fO_P178*4#nq!HJH)kyK(z**0AoEXUz`1XMN685;xW2f^hwmXxs z!+8d~UCB7;zJ!F4bR>DM;gYWqS%C@^hU#%^tQ8&87Ezrw&$wvh6AnP-=Fp8*7E`$V3 zCEQEMw|exxDBR`-tC1BbLyE5eNuDem9lnJ9uCv(VN)p@WI*SADb2#k2h~vYlI3;<_ z#5qqkF8Xqj87RSxa2;-rJ;Z~FE_6jaN))Qgm9w|Sn z6f1Z(Gf<2)Ux8SA8!`rSwd1O24zeD-1ccB?u@shEOHxH z1Esj^%R!>&3XTn*$HCzw?028Wf#F0P8a{&~Bj=Fdxq#E&6rAy1!8uRO}x)ik-vz z1;!6p^C;&41CDw`m$tYT;JCPmA!4c1Kfo`dS zy9DC$oO?wr_niNtC|us1Y(meBNdQugB}|)!#^ci-YcB$uOG>f)9De+-1>(jk&T<|^ z1!3<(1g?3%z|aO!zwJdc;oFIOs2RVBvQa{+MaYTdAS;|9fbF?JB2M{_s*h$|} zob(@6TlstpiT(tf4V=b>AYsmn$Oxz5dN>;ZF+tA0MUetjk5%K|*N&c910GEiF1{mR?2WMkT#IDlO86o!hR)zz@FbFg z$8aie7$^J(kl^1h+r+>ToC}@A<*)*BuSc>_G+H2vzXUxEb7olQ?Xobz%}5(^{Pjrp zmdk1i1>L=>aKHVjNFrOt+O_qwTuMgrXNRgmi z+h`E=ff3yFyKq0^miy_xX{O77rm070n5;+bL?z0{i%~R|hnz?z(!&>UF?14VLWhwU zJboCzL9QXm0m0;g~`kcjhvv$zzzfGfc(xE9JoQMeLSkw)AdZ$sC# zQuZBQ;6j-ymXu)ZxWKV5SNJ8*qSbTV^I`N%4dTvNJ1Qa#$PbkwJ9G`{p)_QK2z6gU z-e?vI$F8Di{3?pab5J!=g68Rmu+2MUTw?k0`lh)7w9j;)ajF3o<0W!jMkJcg;9;B& z>=R22?#G$nK_rKc;8G|7so~Q|j}XdDM)v4MOP2;2)-%VI;NvL)9(6sD zM<9qhFf%4#8A04;0dYrA7c!tCavL|sa*;olhJx`l6pm$}U@Q|kV=2fQJ%`lM6Sx>T zf^*^hNDA!|5cgDQyBI$whIS$;yc=i2`*1dN21^-2)1X7U|X8B~udGp7v zAa^Vk1!Ebgo+uG@T+5tIRL2!ayaeJZNPSusWHHV-(LB+ITcgdWh|~*!n;XtWb~qjB z;bf#nPU3Rp2rfnr;zHyA&PVp+TzC)8gm)q-v;${CJ8?d|AE}XJ0_0|op2hXC^T-{) zgo5!5fuV0i%25)&h4Rn?REIinD{REw$RJwAhS56_6hTPm?4$sDj9Vv!D`4sOg1B?C zu&V}f38KFM;0qL_!AA-GR=Jx5p;}EsWhY@_^2AL zZ=Nc$&x5#xUloW;C~;hrYN=RDke5b4QG>WtjcgT;ZjAGeJ5E#?xT<6HXeli zN84h*@OVbjOO7ZO#3h$W5SMDyFMzlN(D(w16I7v+XD0+8VWF@hwOXkPm{x)3gzR+S zG>_%O3hu+>*)S;~&Mgxa3*u@R^Pk1y0mD}rAx53IS%ERAiZ+Qsmf^e_nE7B#1+6Kl z^KUT)(ozBRsZ3h9f&nL7Y>*nB=5<;Ad~lujn|3?alH$q#<}vEl0oNW znGfQAY7ke0v)@8Nql9qhsZP8wgYoHcgvLSw;L?JlK>={7j!Oua`*HvH^Tl7|r?yy- zl{b&Bc?PR;^;!kuP7n^(W%?7OM}yf6Fq-{_lbA6C76Ne34P$U-2-fKV49yI|zYviB ze@GFR>H4!Mntme>Dyd{kkcA3}3?5~WAOq+Ads7+y*P{yg%%El+G{|5m`4K&I;iq5P(UZaHG&p5LoQKWV-OU9E83Smcd)Fx9v^nz#D|@=SkZeMhX-14 zeZ(XIW(39zQ1i%M%5h#M>3G}?T%W! z*U2EaI(*z!hc9{v<=(}1a}$mYcHoNJC`xb)l%4!$PM~I;7v@bt#;RPOe8(U%f{Ei8 zeL^Kw8wO|kFgVi-@B9#^zZsPP$v^+)JApdcZ*hW5XnFU0_ z*k@_NB}W?yJYA>`^x{s)fV*K6>Vih(jr8G+y;FduO~z)d>bo!gM#znU(+ob;ip)wa zsak>(Sq^VULF$jX2vaj4^$xb02)3&_s|+|K2%R^Jgm9J5eY*&W%9s{a#GQUN1OI#& zgVV$48XH7Iz=$$WFUq|JG({Y6&yC^nw@>kxzkDa{{vQY8DqrJgwk-y9@ZlPL^KN8B zfaYXJpQywTxMRSk1gEn+J8wyON^r1Nxo%PISO+m{Xn{Zj>wtlbtPib#x2pFZwi}yq zW~fJ$JQ##+osP()k!exzL{qipm+v!YH;@RD8xkAVO8&40r?1imiY%Im|j$kW=ByQ za>!Vz+CEjxl)^EC)ippNK%}(udQqTFa~UPLlEH5;193H+#WYJ@f@8D_?J*DPIh0eOLE4olc7q*+5vCeQ`05M*J*CQm#GGd$7|*WK8I}BQOBrcIN%CtsNJg{V0sWa{bd`Sr~$8(q+ssE8g#ZsiuNv6^Ouc zW_!{Lbx^&Qd1bxO=UDGrLGjaWHRiC)V#ii~R&#|Vz?pTV}Ef$#kA(ML3!2e&qkp)kvpi0n@PzvWPye8*GtT*OE6siTfQs5oa z&U~o4Q}b<(5B#0=%Dia6l6?}vV$KuTPxBh(0lTyTf(xuimZ=_pblYYht`v43$vll< z2|+>jFZvmP>W8CB;?X)~V1`yDCj3r#fbxLFV=G>coGV7ENUiAVt>?dCI z83n4azbEu6K4V$(nb`A-&-5vup`sk2+aK*S(fRW$eWv@iz>(}{*bg!-oO}M1KBJCX zTIh%Ei4UBY+WMfh2|`Lg*w$N?+B(|<`~2tI`fYsCdq>o?1jElzZeTyr%DQp0}mGO1EoXUltweyC-#j)YdLQ8taMI6LDH~mhjqw<>ULpZm)8FtAcA$(EB>*=-- zf30|9IqSYq!v+M!xTqJ~9sOlp|9#1;%>ASHLTsOG_k2D;fQe%sAxDDWqFfyV;?nf> z(=oE;Z;2Q5E*uOB3yoT;;XkYi;lSO~H@D1;C_$*WwuaxJ!FXmO3 zgC5`hdJuOo3gW7MS%J9vI?qF@TKQJ1yvkhs>6|EUa%|;Xf%ADT#=&!QY@?sb!adP; z$o8k7H?jYb1r1uNWX$CF$$iv3oa%#jWsK!w0Gx|ZeV+Xep)s}KK&P~Iw&$M`#3hu> zK8>nh%-ciB8zI?V0Rq`3=o_p@=1tcj=RfS%xo{CdLeIj4oQwSm%PRi-^hZ8VBveZv zn##chZ|Mu_{AymM&d>YBd)Q=Xl0{H>pQaXiQRm>ZRnAuq4|HIgv3cqLc$ZehQN`92$+w)LpJSh5o77HV@95~)F9|QtL zp?btD@Gb8__*{~Hm4lgH8bSmr!-o2g00R;G)PITiN!j8pqheE$9(MhI8?u7;SYxJg)@&m9P+ zvTx&aF3!c+&$2$5M_rcm3w>W4I~RyG{oIuM$-R7Zp$0uJaIUw@@@Vln@U5^*6mmH( z5LAhU244lMvY%0N9nNjomyF4CvzNCAwm0RU(%$;+$s&4Obc6jlp>~!BpPz7Hl1q+$ z9JaO#Osm_h&bPj|ds%zn^AzSawmqz2doVW(%uFDcV<6`)?Em5c$@n~epNW$2H;?5# z6Whe>GtP-7(J>xCRlp&2$@ZWZR#NjCHHPq+JOSLd+L;H|R~3FM{b?nB-&%z?+iUP{ zCl^J#g=IY)SMSL45i03&?!W~D*tV~GEYfc$Il8gi(u^;AZ~sexxC&N{E@1OaE&4(L z_rcgODuaW#>LH-siKBxp0?%@x(N%q%_tXh^`(alN-s`N!JDpW{yR#C1B7oabfj8P& z9_6xqyQ2ahbXDP#o*FFcsm15LH}Pd(9ai?&3!J;z)QDZy`#2m0bFa921<=W8U-vJ)DmaprjgZO~{7qkv=30J;E0A9jxrH!nBZRg6D%731x$V!YQ~ijR8B@mXIbzUZ&Q z^8PBUFjQl;u@-BLwb)>)!%jdBN}$`1drL%3_x&Eiyf^S+PqF;= zX%N!a-Xj&bwMr8Ze@3(gV+9)#vf~ga&e77s^$O zYAEPc!6XrMPK}^`)P_8NFV4A|abU0k+pTrjVyVR@b2ZkQDzU;)Ch+Zty@hzcr(n@O z=qbR*y+!!6?*={>Ft=3pU2UqsdUG|lS!%I&fFSB!q`0Z>*^AqwHgrvmz_k#4e;9pd zz;wl@H{MiUm8vnnGyl8~qMEN^+J^?_!`F>V!_7G9xGM^{+pRTNZ&m>A7yU(8)>nW} z1ia11N4cxRa6jqG z6A+gGF6|=$adYrVzk+eUh$`c*GnZhKrCgv~W#!mxDaU$qDb|>ZvB6S?qxO2_`8&}% z=@dX%sa~pbV}L4^avMhnP~`8%MfU?79Hc698P=N#AD3XWr3_oG<=8e*j$O7Y9Cz@1 z9q62L!TWd|u7wC5j@xm~*Dk>B!J(V7-`0V0thW?nwW$y*O!-)0%*S#9v8H@%wU*($ z`yTF&*%XM&`{3`sk@tsu$He<9s;OFL0%)Ib;a0?qd_UELAL6X55ebf4qG-FvR*4-0 z<=AR1#YRgpzBU!$D?=_m@4tp+{a3N9@2c8H?K8twd~UdgFOAo+!jy~E=6tNR6k>yg zU~>s}*~)QXs9Mf{Vfdb0^Zu9(gLACQDN*oVf^ao(xdh^J3?Gws)gz)CwE&x~1=u!Fgq^k`mvT*ab zO_Xp6;hu6*6}cE&2lBCHfaxv7&cPz=8oVK@w#S^6$o4+OqlrQBEy6GaSZ_u87Zq@i zIV!L>dXDwh>-gHj^2x#qb0$`rGqK8?iPe@Y0dv<`uVI7rIyPE!uxWtG!ui-eScF6N zGMskTAl-WxHIW|lO}ixsS(lRnYJWVGt07$af)cfug=;>H&M60OMfy+_XhFKCQNg#4 zGVB{--t)25mV=E^0C$Z5xanA7PQzE`RI!!jGy!whTeAh!rCRQup#mIr5O%B+Ro&`H z7wSfPaWm3`ig3F?xM`l-IO!_KUV8y{4CZ3TV2-Hk?z0!-h@%*%-4z11R)#y!JM9z@ zOZ-^k`TpJ@E&(tFHj1!>ER@Uudzda8} z9fi0!QiGasr>N8tlwA1s8Rouus+2zCL0p+fF|VpU49xlj`lS-?RbL~{3|HWwBOkl% z*Race4SPk!HWvpRxj5|1N20qFd4YRqpBh|LR3(IaYqT5J{C99+qzWfpHx>cht%K>< zXiLL78x>~>yQW}+EfpJWsn|T2hOL8Fuze^4JBBi_YbX<;<9a%UtT#Or` z2WXobfPFsj9Ei&_#saRQP#gu=32Y3`dC@s#!=3SN+z8#r6<;-yMs6U%orh!Y92{|7 z!vSX|cG=Ugb?6c{4xYz`!Q@5b_sv5W1dvK$F@;P8$s^5Z@G}GQnmiq260*bN+FssmThhXt&>Jk!X<=z!CQpm!`V3G zz9M$Soq^-SnPMk~vytq{M?t6_ty3m=ACC!yI~#3#@c`$mOyyMrkpyvO;G7SjYkB~8 zCOS|Sxr^(;8l?CM-{#=t2!T|lCk6Xl7X`Rg0PY!VbtGbo?AP_!;M86QaUOkoEpVCn_S1xEd_SMPDAy zc(QTYlPPd5A=^Xl3)t&AgPqRP*zP{^JFg!q6!?6G|hhV46{uCYt$R_s8o+BmN6j!aqDD1>c*N- z5F#Xnvx^0Umj&^XbG!f*{T z0!6ssyCwiGk3Zx-i+%3X*yB2h-L4bZ<35SK?o-$|9EEa66qI{(BpJs>&f|pVA`-o+ zNcLqREs&3bFx59(VVrZoCu*xp0IBjjwlBs+OrU4RDoVJ?z6>1mB;&Xz8K=CLaN2tr zCp;H$Y~-8(wg-k!iSjL>Tf(>TATIygKYS90h7;wOlirI+^j$`hFGaSAKA!U;PI!}% z;5mo0z7*ty36i$JJm>hQ0&z9u%Jhyb1VxdyWvUa!kqVskUBo`B*$(d$_*Q|qM?@W$ z+mqh2$PM4Xqp40&t>k&;zIi5XiORUG(_Oe8&c|`jDeN6SAV%<3gSb@1<@ZG2Ib?@( zP&HnMrs+1A=Y|C6WcoB<9-sCfwtsC9mwDrs=^0rFVQ|ikz8N!`r`k|AaT}#$RKCo| z)$moMhpr$cco`Ri7jQms4rc>NNc5i&`1Y9ZAddL;*1GafJ*Wojn*!2GRvQl}Re9HRg_%xw~*;C$7OFmF8VTXF>nDFgGsm$JSBE9n240n zIi!a#3D8?MR*VNzO&FMSL_u6KI!}Hyi0hc0M8{Yd4M8t%1{|WodT+cJ_a+~S0&lV8 z`-%XmY2kB737^5m&}p0t9z$aAAWjDM;zVFKP6T%0WMDT=2KLBrCjt+8?pQi9Bj=G4K85q4qc{^hfYZS}I2GI_b~?BliNU={3KDKTfaK62oDUtw zh42wv3?IYg@CjUrBq4kBfQEpiemk>dj3CWjB;YYRqCMQ0*k%?;?DdPAZ`?>4L_a}*p@(W z`&dwvZFyd%nSd(GOQ&6fxa@EFndxR)nj(HNekQ!jeP1^ne-C>Z@X0M%M&?~qWTPN1 z)t0r=@IM=f>xl}cY86?6xKzVsUMR##5icI2^73N2{G%-v#3dk2fi5yzeUl++Q(6s| zOe5k@^!?6EIiv@9)6mgY*F+WQn?l}I7US(h4D82v`^|i-RQ9>j~l>nJ>W|#vy zACASU;c5_3b%xC3EL9Fr2_7-Z&i%Y zq)q*eAg+SQzm@XgOZ};5QwTl|VR(K7j#(#$xN6#r9j-a9_!h?Ow{y=O6MsG$(?w90 zY2!mC2G>xfg@O4Do?~DO1E&b#GRRa1HZzFse>E!*mqFoY9X+TCapmM7MjjKWU66C~ z+`4>d^lzmi`51x6Tn&F*R-Z9XQ`MI%+H#eC4zj}-m^Pw+vIn*q3xbdRSooG82+Ny6 z{5;?DATEDnfFgtZ8O%;~Cqf|CM=TO>$Y3o7e=*RJdC>un+%hlB6N3x)T3b-yvkD~Z zoF5leMFvwUxPtYduBWa=(D)lsU@7(wVw<^H0?-7Wkia1YUjC|u*Q=D^AqK8e4UozW zTtS}!<_y-OLJ$Ey1}rhankoPc%Hug0{HUST=L4{o?DuUd_*ZRJ(6$8b65!~(B>_qd z1gEkg;SjCnr9p`2LEOh!_>SYrB*vZw1jMz?^k87R8=iTafVd3s{N~Rr>!PH>Sf+!oG+@KvJq1fJ_=eD3lc;o-d56#x_R8uUu34^L zGX>9F5JS^8m?pbnp6V75H~5$@ea7+hyLqWQ2G5QxOrg|o7hv+8&N_ANXuucKz`#MK zi9u8w4EJ!x-iF+fUX=LyQ0nbLfu|E0E-G>~VV&V_RE_Hv-gpUk`zoW-4D+bVgmw0A zXPpFgGLHmzYJyH#8A$o~cLGZ;fw-#P_<8o(93qbiB!^&_7)E2zj1o^bZg{$JFKmNr zE+Roe|40y51^25ovmfI)!iQ+C`EdaTu8vr6z}hZ~ja0r606hk}jV-H}`Os3kSn?g+ z7WiE&q%qKsU?-Jxs7lp7?w7d`Uvd({rGMyh)#=ussVc^ChjT95>=+s&BccYLb$(HP3!c>`hL7IFAPRxAR_&QeFnkh#_+I!B1|ix?b!6cjw$~l zwD_IOCA%ks5(G=wiJ%38Jatg0Ru*S^2>37%TPs>pWtyt38vJ08x&}30WiJPDXGFb) zf$LN-VgN3$%l=!n6$K#a{+z*>R8(PbH3PHxf{5qQATHCwdS&nsgFzWsUFaFWnW1h8 zzGqM;&$k40D*%pV{c-1QY&J9@%WV>Xm!L0${;9}Hu!;S?Rw>tgc5GcTsGe$4^y?I- z0!tVKr^=g)RlEp^>NL}sX7<}uUg1I!RGOj^9>-`6rz?Qxc|VKob6@6fi|LE=FaFMQ z;Fk5vz;-I1Q3Z*LT6{3VH1S?R10K2_B~bMn&K*^H8C1;$CI~Atz4Re{ZC*>a4V}K1 zwdq&23;i3%Zo(o2M>2-ZvcLit1!1rP%TL1#@n!r=HbMbUzEv;kIlk(ChJYo5s~O17 zGGN)LdeaMBECp@Hn=Z%L{!v3;{GC3;cE-63=Ocx_L9|ZzWw8;?6%>f8`tEq3kUpUA zulN$5!QO0(Y%_#TI9Fs_(tU?qFFLNXpJ(7W!KB&{1JWks0UTjOrh|e0s!vsZ&h);_ zmt*r5Z`x=0nLfxMaR!GIl%x6{=P@(UphtBN_;TgnmsxDRNx%E&r=kE$Fsal(Bz+?n zl_03Wu}8Ntoi3fmA8MyM-~7%zu*?W@5rSbk5oBPW#Gr5n_Y?GGdBv7FkE8E!oZ>zN zG215ml3oSMJ`dumIXv$NXGLj|^SsPqqo|V+;NkhS`lw!DL_?qi3b>F1=em4Qs@kHO z!@tsJG^k{w&)oe%pCRx^RbN8?RI241m-i$;m(LKeAZ|Ov!#;*PSkd*J(fTrrVQ-8)J?C6O5zJaqOdi5x(SuN5U8Ej~QUE$GUh$Tn5l; z0G}|?Ww$}p0tuCBHD>y+UXUo(-A)ITf=ejRfsbzU;pp*+HaN&dt&VEr{=KZ$zSzcfF z^-MGGKXzCiA(`sz{y}t11`vp5n)SrB9i#1)A7&jfM#tTKYeup8G$%t)|x$n!+{ z0`n8Q02t5Dh2%c%YQP>#t1P6!xjO+WF1B~sX^;gBKJ2_L`?2nIIqI@~zTH1RKE$?r zJ#T-rqgJ3)&X>vqg95Qp{fF&{eWv(Cv<%~6(U)0#In$5y+>d}ipEaljQq=s4dDeaq zJD%x0ywrc9`O?4X`wsdg$6NN9d|t`9Ea$cRtZg!1`e@VG2ul5Gk(piQ7MVYDtfsFrZ?R+fQd?AI6hFU< zo#(~2%h=;tH}V|0y%z6v-NJg~19|?;@kkcb;^H+?KtuN@@h~Bczw2i>s=Y--?Vgb6 z>$V3jK*BMJ#}XDNBuh}A?ct+nd(iXrc)xkBJ-nn%sP>>f$F>J9oMxN~ArM_aMFBY~ zKd%epYCw5W-IPJyPiA49;`n68IeVYfCHpY;Wx755p^asrwlqSwG=jLX_WL%DG1d4( zJL^wM$NC7%dmHdZJIni@8^om%keZXA?paxY zdpl}_L-Gug@BvjJS^x2A|2~rid!p|s`7DZKP0RQQiv4DscXogZ zwx9Rb;H{1_{Gq)BZ+4X8oz616*Hw-Wx-0QnUkx@}?jUWX2TkL{0^zn!j38sA2b)Z{ z@lj6&-svjEyIo~sZ+DjBt?W+SB%C6#I;LIOY;%T+RjAKk0efUjyQP6a{gQ4Bbar&=xmZ-V%Xw&pIEWE<6CsY*4^o zzE32`s#R`Z2gcPPD;FFYUKmH`ln2#e3o<;NIA*_x4d!Yr>mw|zK--Uci^K@v61wGY z@5Naxl>0$Xq3run)YNYU_`LrHHd(51+8G|^FioVTOK})+6QsQ-}pcGQ!2U21l*PXa|N7T zV=Bdwq1&R6TN^f`XKF-XLV~XZN(=nm*lw-DhrKy?yZb6W=*_{W{rO^_^ykSrJ{HRr z2zSX8h^t{-0do6t@u@($3e5d1#`yiCzUz3e=c??x)mnjcPYaqR>~PG7G5Ty~(KiTF z_D*|5$u`T=isSZrY_yc(v;JIs)O$^AS$__`Fi?p%PoUZzwhE+3zlP5Y*Tudx=3=9@1n1m$(Kt2$Ulhds?$6&! zAILG3zHFTd;L*4PRUre?Ju*Ebq*GK=*>@4Hrrw%UA6z}ySNcW`&i0`J1Ooa<>Eh)cy?eka&yp7Ek_%!~qmt0>_T!d-2-iqB2y z_}s|!5}wV%Dswj0Sgv84tw5Ae)DHF?08PC~Q zakheHj&9|%f^}C~GO^a0jXgs}Nb@$Lag2&hRBM_PxRL#chH76I#^wHMt9*l7f=T_; zZq$Z*knU|1CEGnig#z8Kwq#(XIUTELQTTSH`HC1J+;}65%l}r%K51BKNyEBu0&z52^~{I z0?#m3jPHj6@{4Tv(EVt+9wB59qvSy_YO|DO0jM5D!#U+V5Q{}R$DJ) z?LaEl4WwfIKpM8%GLhiAf#P5@j5EXX{N(Yse82fB5SQ2DGgX3DlQ7SY;O@8qH-gQ$ z=&8X0M;xe$VDA&jO8GctYk zIONE~_Q4EnvZcxXYX>f4&A_GSY^@mcK)Zx>akk!e85?Z8=4EUix*|Ytw*NLBj2i^5 zC9KNvg=4q)p}^BIAnr4YqYw@rMp>vC$6R>=)UF&jD@wP7YH1s2wu=JVQu$Vcx34m_ z-$gl2pCi`R+0JA2z**TIa$dzXe?6KfOc94@Ui9UE1Mg^cFNJscB9^ibLF%25#BiPCBOeX=?TjQ;`9;(3w zUjdGfWC&18*p`6pcCj;w+=sSHj#Jy6 zQCOGCxrv?(WCV&)7HJTLTx(R(_s67Pfy7Gnm~GoU>y&eqhZ~ULzah}=K6fH^xDv3# zbsW201ZSxpn}~z%vp6-9itE8LG*9-xx!{*FplWSis8ZnD!^6qg?@p3qcu8a;ra|6kzwja1s)|X`;g0Jk^V#1um*bz*Q|`x&-1b2>97P-H)75 zDUOVs#dg{e^=^o^Viv_ejG;&O!TMgn8$|a0@ zfIzP=5toDM$R91nt;t4o&zdmuIJj89I*mWZ#NYo#L0smGa4J9Rdh3}n;{IeaD#j`W zzP%Vck0k#oob(+>g6}Afc@N{5_t2sp^&J$@RztUkefyrXcp#TXXjdBnU2UiR$B`Dg zjH>Y}QQ~zhc%{6#xDVgG{dFL&298xe35oa38qqM-fTHmNWJXePK9q#hfujQ39{2AP z$d<;>+6dpqTm1jro(>#AYM4N17K+CUP&9f2*Fr@|_2-FF_Zi=Lr5-Hj--F}+-AIt* zl%i>BI2n1P*F>S$JU1x)GQrg!2jVIwhoWqq;~_MJhEW}~qAJ{p>aj+Yjh7>LG+V&i z#NZ*E2<#D4knO%GfXm+q;VKY!$@FhD9;1&_&~8FtHxdH}a5;1uxuaBHEyu&@hoVT! zMNX*f`$Hh^WHhf_h@)+)AJt`4!?!#~tZ5)u+wSL#$0f>kHCa~(M&=w?yc0{4t zT>{t=zEuFOhHzhHdLL!#ICT!5D=D-Sr$SqCBDh&TQ*HOwWEJ{m4bqqKd60rp2_eo% zn{&hn1S3-IVvI#@NnD=a2!GV-;(CQ4p6fB?b5hyi&Ec zdpr!|q*B!VTR_~A`6=PWT1NwD4*SqK7L;od>|~l3;oz4j;>LrxOegY|5O;zAy#jFwyVLIod@q8y z>Sf0hxe;e0BB9S6xHGquJ!WUd2hI%oVW5r%YBf}=;WvV&yf}kZ37ydB&^(?mXaChf z+*k!uK1?KtOEug9lHBuC0-g#G``wGjzOL!C5IQ8J#&YL*N%#*;kIPC41aavAbZ!md zE~(;Z#m~RL#a>?lcJmmSr+V@v+;a-VrLWKzb(-~Y@#lJ7i-kn#>#<6>gm4MnQUR9$ zE-erVh(a#+kr%TuYO}8bPJb?o1#zi<%T+fB;c7)(-b}J=eo7FR#sHu3rxWnZdtsk( zh#D>-TqjovocCe$=@{m}otNVT#HG69OU_9ckI)s<#=gNY9Tw=1ihWeo;mY(3C}GeX zRb*A*k5aVwAI;?wAVWpE^kJi@5D=bVFh6}GKHqE)x=rxmIwwe!{x(dG!ZJOI5kjv| zCNTaq0`I&V1JfoL`5 zt7hb*b{=NGXRvYaMDoZ8^n6UL-7S&Z@jLqH~z-|s8oC0){1m@ z53+}QaK+V*vqQ}|Y`ur|2CALb;kRuy_*DzRYZa)>{J*ZrH6@=4Dx|M4k5opc+5**g z_)1BA^Je9nzaNP5@?8;4oua-fIODvN*~mH z*8kH~ivQYFCi}51p0oEzFfP@;I3a!+h)ZBur zXI<)`W9`FC57R~eW|Zw4KrwxU2>zUU<| zssh+G)Jm}AL1YBEBNm*nbxPni`yrMu&!x}L{QkD3S|Hlhz4s)roav#e4S|e<18p*H zuy10SNM9%Qq>SYweO^noz$a8n5fJwkinzKQba^o_jxRok7opZ60aFOI5^`gJEz_yT zi&#I4^))?)h|fiRjh|oE&(hfM{om1YWq>fpPlC7v9SF-Yu$bjYa6`t9C|IxSjpa*t zrXpa+MM-ZPz7pu*ru40Bhq}CYJt=41rlX)8ue+oit%7rPnss~ruT7 zQxoDOgu-C3=Y4Ide1A!%=P}%}-nqIz;U5MrQ-$=p$BGk#piE8D=6~H1w0}!!H0Paf>U*&fLfiuR~gGdgOn^E1}^ZSAwh5gn}h>oF@v5v za!sa*zAJSWoo~dqQ|3trom*et|Kl_{8(Y*Qvf=AV5l0S}MV@OgKOP zJ`h)YCgc$1C&K@F@rC&F^O`Il&gnUCCSXL+g+9Z%IDezh=(*faaeUG}4s-^>fZMxVJis@r;(YU|yxZN2RIwl0DEuh-V4{k){D6SU*p zCCSl)(!h|Y{qnwtdE)(nfO1ib2Ni!V<6>G(tunnV1CC1^Uv=H;_M_`o z&!=8yvGYS7tH)}dOU?Vs@c(;IBI6&+l6@Cdy}Ks@vVaHMi3V{s*vd3>UdaEr56Ab# zv2UPN7VFRuv7XDlYF?=F5H~N3`YZkN`Qy}<>1Mw`AJy{~rk!vI7Xjd$h2sdvZ3ZAR zyZ0i{||0nT+%7gA(mMSkb2znfYxi z?`_qy65SW`+V6MOW25PzEEtgQv&n)E{>QN(ZY(hRa$|aQzo>)tS=OehkN~n&Po}SN zp2Ie&@6p*0>U#kK$b7CsSkfL<0scM^mucg7!qJ?|7kLM8hKn8;9>{$J>w{&=Yv}%k z#)Y$3rvwGL5D)LO)PezjPY_or%0GWC4dJSOnxC0}_D7!i3G_?`r2P>9-(Yws<;7HOu<{#)Ja@qUqWGCmXIeMsk|UlwE`P|5|Z_>3-gUZVR>-v2*0 zFL~}6UvzE~%?FQR`O`SgbH2yEvLWJ<#gYi$u`O{7mv;Xe%COppxMhD!pJiJl97phy zb9q9Cy!YfnV@&I-=dw%V@pE(8nCE*eH$5+99=K2iePz4pk@y4WvIhp*7Z)SZ*VD(a zyyP)(WSn@v>lXG|TaoXvO8;e>85Q+$&Rsah(Ow3qvX9aC z%O*dBfr*B*4`!?-Uo=~%BWMV@k?J(avp3cyL1Lzp zdH)~HW%xJxr#$~*zpm`pEnGxS0l6GY2;%;xwG#i?%CVnwfHM4#N2Rj;ZCe%I>#V~U zQH5Lrxrc3R6K&XLekial6>$mR{_39$#MMwU>p&nwzMEc{5`Uz!dA`?zM0*EzSRUZ3 z{(8LIRfXTRm*LlKCHT+Q68!o(E5&bGOYyt5QvANH41a8=EkU^a{`>Y){I;zGziBJR zuiJ`ct3Ur|>ka&>^@e=rK5ulC;p6TaY&YLShPw|BM~4N*r82I9rIi0L{V!`P@%fAe zab0s`Xc`+vfzN~_M;kVo8t_3^1%BODgnw@-z<;(D;&*K~@JB+qorGvB@wKrYNzQgu zg=_-SRs{!e!u|-$dMojp_CoweYd(J6R*2uW7s+?p@7jy-$Br9#qm!^}IlhhqaXGHi z7nlbPgL16k0uF>s{nuO%*Pv1N zA>QsT#Gkqf@m5#COYO}r?$6`$@cWJ&{Gl@!pY#@E&%kY5^>pL@m;>gSfT+MyNs!}% z?tkLJRT}TTxex1x`?FrCgxfXcK~30-bWevsxSK3B__VJWZ+7M4w;k8;yUuHPqbmn* zb>-rn?mU5Q3E5Hs_mjRGqJm4~cfz`aa0%wV-JK`L@K~PXw;fmUX4iFm+E;{)7Agrh zBFo!>#?e98W&d}8J=gJ0_jSB2$FeN4@w?6p z{Gl@wpZ4Wr_dqSuM_N%E(je}Hz?;SyAFg>ju+CJ5KXzu~*Bw{zhptS#-E$T1^jyQc zz1Q%5?{$H5l?v{wVO&DCANF3y`@Po$wtc538*fLApJ{J&W#G4+SMX+cCf1mXae252 z55@;!pATa!2E-)<+dVZbuLdkWu(G!Hs0#az@NG^@Lo?AKJ2}UPx=U`<_Scb z{Hd;&Ze&1ER)x&&c;@#e?sAb~)-b{SdmyM7637+O)qqSH- z+`9yEpF9uZPRhc$5wuP?Q4#EubP>YcY%LY|mgjiCPo4Ljo($Q3(3^!1`?By!U$#KF zqIzq%j^&0Nd}UO&+?XSfEumY2xS#ZA<0FA&Gx0&xKJ3rLdwm&ryY~t{=+DGDOA(UX z4X6zD30zA!l&YZ|t2u7dVnJN?$6+ptGhxT2;k#I6%E6mGm+{B$OL(U@6(97a?QX@3@$i3;w^LEO*8G6l5##E>Dd?T7tWp0f}7)9`lhWxUyYQNB|t_nPk! z+9w=Rj#!vyCBhPw9%tP z? zeQff2=pEOU>tewNv#PUWs-nsD>-F8*Nh`O$G@~r~vz~n_AbNIzQqbDy`On*>2Ms?4 ziw9D>r#1#G2Vj5j{(U`Pl3-*&f0llZr6OfFVp%}b#QGHA#vDHN&*zf$XZJBn#Nq|0 z$LNpdmCk#$m&UXUyhFz5Qo6o2!ZaDU^Qa!pcn{V|IGN%C{%(voL+@P@sAo zOfx%*28RtIjwsmWH^Ld=CAk)&ko_9|koPP;>@@R|TlEaXJ@t_mZdm>$l}dNXsCz+& zmG84LqQi)$c6$o{P?Ry>3`yZf$@!F-ea^PO{*MfMGPJfsYc7@g-@3dzM|mD=Gg$rJS4j7<-~JPLCHBe*K*Jfq!HYZAn@( ztovvoRJ-(%r-O~5OR+rWq{t_rR*uWqZ=+OVe0D~arufMJ(SrWohnLw(rEl*@rf=p1 zDSQ=M@DFf@l;KljwI4IAeCo4HN312%(vdMv`(5d-<-FGQ5XP7NRIu{B6n9Q8 z@!dPw^**|^#=mtZ@i*D!@QrZ|9wKaH1xFO|M86UXo8hqGuDo}9`N-Fg2rI>4lEY)d zWe-)s0iX8rA-DI4V4D7){w=1^?O5hx{??d1xg}E8VZ6u$fju_XT8+cUpntUR*8>cU z@utUw$tn8n3`w4F+F z$+M?~ok}uz3N@!F6_*kqH24RUC9I+n*SQ4=g%uqX8_dEc`fKYuozo zq6rR7aSLr@c28|Y!Wy|TKd?euCt`38k5gM`VvPGwgGxtV8YxI($r@AkBz6fVRwue3 zFG4hpjeZ*RNdRRm+B8KxL?$+JOwpL?YqGh6N;a9pNa(Ks?_d_1)lH>@;~AIb4Rhm@ zHybbF7wSTv;;x)95_W=+cheLn;&{{pG zTHR4dn4U>oK2Q=C_toXFZ22MYG6cU%`-0o$u>An~veEWWQ^ZVpoP>@bs&}T1`H-cz zb+m_l)h-nX@EH{CbXq5)|H(O;_Lqm!+Gn;-_Wz-kC{Xs9eedWY&+^MaP@J5v7 z0!dPp`L_n%sqr;H51mSw-vtRrUAQZu>9Dr&$}+3G#^UCG2!TkdHIx#qyXo=2MfyW}neqF2E4!Fc-xS+^b+F?1DZbe=f?SSUNbCPmpKVfK^dj_^%%V18 z$hdvAO-p?I*FFuwbm8&7V`Fep^Ihh;+N&+enPfvQPJfEjDBv4*lj29M`j2;Gr$#FV zEO!&@c-*gL=z`neBC)$Fu-E~=#$~4mLmoVG;;r|LJ(*KywAFZ0{)6S&9sPQ8+lpBT zoI{1cav!(lM5B z5%o2@rvyhM=a5hqV((!}d8jtv&k$|?x+YGe-sqizk zq3soje0L*oPw8z!YAyvVrE1VXj%hi`CBFG7fiHj;{@z7D3^kFCAtnFBo<`;S%Ujly zZ&GWtfaCZaLf4j5(M~<+BgY7fHydPaS7wA|=MDP&jcnq@@vt4u#+N~OI99P3)xd_@ zykQ@{ayvFgml1bmfA4sbP}S12uXQ@b`!V#zVG2LLWXaNu<}=? zO85Z$M48lsB65r?ug!qX*MFC`>9_>|7nue=m6Z1}OODc+Np>^bA3Gc87u?t}KdP3> z=lF@>EB9OAhH<3AxnC2YA3T)<5%;2s>v8U*V0_ad#|+CcGnKKe{I$&RZN{yqCBY|b z)7yi7CM7hZG+hI7mxC%H@fmzJvC8MF@8BUqrQrn#3kY`sd=Qhqx?wKzIr*HlZ%Twh z+=jf+_zd?y1rE_wmEE^SyGhTuE9z(idU&^V2A_^mdk`Q~_4B8xJa(g%M7-(cfoIL> zsu&n~eBcyy=RRNlPVr3qJ;u{h- z%1S3{jsvS|q=yoYl#Y(W-VtP)kai0aZAzBX_%DioRLS1`B=N1U1ux(Ocg#P7CrRt` zkP|Unpb|Y)2JCk>ETFKYt-^yw^W0-ba-zP2Yj@0mDivT__4NdrlBc#j$gAu%!SF=i zcZmUb-(DaehtCJbyxTn%asrNNmAo771%ce_A=BuwU4FLLXdNrzG(EQ*4vC-som`?$ zVH%^}s}EY3Z6qff5EZdvm*h90yJY60uC>35&t0?0JbzXgDy2;_GtlAWY(#)-hP@cx zq3)y-!C!bi&Tmdv?1?sKGF9<6sc7!J0IPsKZhONkm!9?xr_`C(yh_uwvT_2g+#8ye z;T8GNe&OR-a$EiXkOzgON3DeKsES_f8nSPZ@=azx9MV_C`n-xL^_zxFOROJ;<%fP5iyUbAbfdPiyilWyKimb~;T?xo^J){e#PL}`kWyR`YR3HQ9p*MkUq`Vm*?q6(#2{4c)2S0ps9#;n*; z!H)SjDP0X})U5xWjnd%FQf}6~ef?Z_sUO%%06zBWsnp&|ZRM&LyNrvHO0ut8VI#O3 z#bHA-E(sA0?Ag{I?yjzTlL5uVV`HH~jafIRa>M~bCEkvlGx{IMW{v92B+5We-xlL<#2(hVVmpHOSYua-gjZ&_IW zHDFRI7K5`SG5jxY#V3sl`JF%wn}#YG0u*6isdwsSz&pZNyOPH97vXp!{}{^+XgUcJ z>M)cWp4Y|cv2wI53`$F|!&2iz%0qu4I!$XC? z3|VuCPy{y*>1D;Ddm*!cMp``XZ60x=lpD!(5&V7UpsZ@lRRJvvG1%FtTy;Y^LXi-EbVy&Hh<2!?!m$W;UL&J~H%s2)~W zknW8RVgFO5eNkIcSEHs)>o|@f+pxJL1qt`n_XP#}w|!~zc$mC51H6%melb)9^%y6q zJ^~lPRpHgxVF`RB`jHan!MZC{iS5#HH%Od7!cI@|cVd+U9j3Gj&-dTtGEQdun12@m zSoA5vVt8(5lm+o0Z~#cGK?ogQR>zU`jV`zYV)qkhMG&d*0mk&Qnn4%uE#Ydyi6z5Utm0ORs{$1%RnC=}gwXfT zlD8(pX{+*-Y7LVDuX%9-togqVEJl-~^VO$8NpTd9F}a5D0B}V^s48#Tq}KsFvWwcc z96P`Vz^zHbPgB)EOZeEE#SZ`#DBwkfX2PC)ZR>-Zu_D?4dx(i@ehx#mT|GzSrkoU^?`}>AauC=iO{P4TBAB#D`)o?ISZV|NQ8pYCM?458K%%IMLST`R0CP z&KSu zTDb`;;t_VRSl0^M7D%8-hU{0?Yed-^zRpE|Z!c3^cJ?gjAzDyV%hAoj;j>2CSR}hP zoT@s+2?6cb$EvS2@=eatLT05G$_Y)&S)5g!DXU&FFHCnCI=qn{>zrMVD7iu}J6>5W za6HPoA3D!R^Ets*ow}#e3A7G+stp)e|4OzXGb}%CTRlKlZPHw3A>vT z0QXEKqWIE94TNQy)E};*%yxFCU{w|YFF^sVFj-A9Pylo5>M) zqFY#sWO|W3`)|L?@GOBiaqhJ2Fs$6`uv0SZ<9kjE-g>a1f5w5qKf-J?Nfn(1Hu6XJ zEMqZRiQxWZ!FRX#Z9mS84^AI0Dy;N(UG~`oi1?upZ|Ruq$D~aoSJ5oJA*#0z(Z-n% zzrJzZ4V0@z*Lqj%gW!uB+gjD`hoG*sjVJ}Tw*y97bT#ke0 z|5PDl7Fu?aO&o<^eV+aj)VF{^9UX`AEO%S!T=!gvCYVfz&WUv~e85R_eNWKXLGI4@ zsLrBBx&IEh)dp_7wW2`gU)0oTD06Bim;-Z$Ab7%5A=_Qu4Hc@*yxRu61!#EYk#e=7 z3E&?p1*iZP$D0e4R3BS0@m4FOM0AHKvZ~?F#XXe+^lN$6arw1fqu$?QEZVfwC$P$q z$*w8M7m?3zY!d>l%YYe5%oAEP@=Rve$7FrGv-5NNsWFFdUfm_SghMnst6zitjRYUr zh^z9QG{=c%PmW{p!7G!Dee+FA31FbgKGvG!#8kOmxg(Yfq7nC2cS)%%gP=`p&V?vi zWGU>6!#?VHj2kO8B%1rH0NHBGb-WV0;PAs*^{ru-?M}QS$1Yr$dq(S8DGO0F62oUjZp-#9BGlh^zJ9RpadE!<-AzKY7$oc9b}OdC|6( z-fUfllGdcs8YQ` zIGOJ{ta9pRtX>Fu8h_(_GtsfJC-+@iNw)B(nrpBy_df$5KCaz?d_P^Tb!7>!qcf{i z^`9A!q?v|G9Ai}3Ba>h&Ew}kEBtxVm|I@cqQ zo#+xKoy+j?u2IP?SfS75nqdR%5Y?k-ssdV0y@&}>{Y0noqF6Ya|3^feXXC+dzS&U~ z9c8F^l|&PVrV74W`S^LZ3I#dM-)>8QIVc>v23WUpE-+^nZpz|cZd~}Ru@(6#7lt=q zQD8R?v@3&2>c|vcNC@J2`3t+N+<*jB%Fk;n^l<-WDmgZtuINGWb*od;a&mBq{T z7v|-rqm=xT0tq)w1(71wQE!73XLPJpU9bJ7OQ`eV12Tp1SY;vT=}H|&q}k5jN2pWh z#C=SeVm3#MSZ=U{bADvmOi?A@jr8ZSe#*Ry?xz@kLbpqN4_84p1 z^iInJus!wLBc_q&5x1tb@cy!!XN+$Smig0@Cm*u5$0)&h(Z z#Wk&Kv#^h9Uk6UdEgr(Q1g*OBIDGFbzX@`P=F9@y&CXg+o@Jn9+Rfa}ohUwwQ*(F2 zW}c%bhHcroDZKkR$=^T~%8xO?hJ39DLaoMqckUqr}=)doMr;WRkWwpeuL~HUp znKz8kZDhnWU>3S$)l(f#SvWg<5IW2MNK%f>A6J1DLho8M)xiT93E)%Y79!)`*<1P% zgDh09Zdue=LS1zy`K6meabe*g_@7u8_0FTS7epzH?7lj9xrjrJw-+j*B#WDmT-pRy zslM_?=@B5OTN=YVPz`E5I01#1^v*SHI1V3lN1rniTGAsfVuWsY2$Lq!gzNVv!o&lo zQxHFe`E%5ae$-8~#aw{cpzV^b+j!Xt#xZV@Z3->rlxP9D7V24l6IV6tC3 z&I&NT{5tysG>`%*ki!fFNV|B~4xF!O7fZZ*inaNeh2oT0KO;(pu;ey^UBII1H-(3a z+LPCU0Yia0Seq>}bQ|bDRur~GtvE!$DwoTY@34zU*fXfX7X{6jYM*F*e;RC0*sDWDB&;FZ&V0J=0Z#H>Khzslj1~;vA+_9cdt$ST`h>`0&wtiGES*p*~FxM zY-y1P_-Zh*%wj9Q2^7#tdV(21j5C5hlczww7T6M%HLJN|x+2Zz7+nw$7d@VTiruwJ z1YGkK4{w)sQfQ)_pHgxli5F;vWhJ65&+0jG*_lNV+{3(4&frYfly_PffTtb(L=84+ z^>PBz@==3_d|kt&f)+U@jD?`ec2=RuZTNc?t?h4s!c_M`fiOz*$QE<1xS%R&}FvBcu=g;%y4en8k;gsx* zvk1*$`6zFt9ID_#DlSc(i!ClZBZz^vToUzaS9?~$tj8M#)XKGs%pIMrt3Yn zbRC$TdUidfFMi2VU`yCcFNm?XbjnZn9Ndr%U7cljEf5-zQNToD=6lW$g0zM)2qb$|!FYQE}0a zzdtwOn9=4oI>Ev*kXi(VFLmD{BG^{w3l^Nq-&3D`+$Sg~&T%<3CYta2305`C2biXy zeX+{d9r_)+0XQj)^lbY7s<>d8!Vd;Kr1TpVQp~GIf>yFcfP_ypN8<~Q=da&0gmJwK zWv{;#<#Ox-kqWtUG>o{)S@h;5aqOIGy3mgy9Ty)CCvj4dcxSvH_s(5 zzTt#>P+z25AU1i$j~g%?D@K7NYRAe~Wg8)VM1ib`13$ys=m)GCwEi-50K`*-!m|G5 zUn!?0P7U7$8EM1dN$UOyMWDo?O$dEp(vLlh4DceLvY#6`0lkMU51n85l-)xNf^ zl*&3I^`9$sTf!?P8-6%AY$X+Jj$wZiG#I&Xz{|959J?p#2Kjh6TJ7|ut+(IrAyHWSY5nuE0vS7uDG!_PXc&1 z;!sN2Bo0I88|Ebp&oqbpnX*Yg!E;eqSG}|8M52Rhq*ucL5tjhr8_Gf(0un+{jZKr# zRJr|AQK()1l=&1*Dffbj(9+Xi?vFj;W(sXuq&J|%OftyUG$|_J@J)yVr^4I=W%1ezXz#U*n0#hPP9>&ZPVGB%bRk-1C)>&prr_FZW+erp9Qj@4Ej=U}u#=*Rg(jy-gbLo)c+A9M$U;t{O^yS~#1kL@2jmFm$6P z)RIg*Cw`8xB>$--=>CJ>`Sk}?m!02ICgaEDotrz?tRT|ujlKuq?v<(pZ8cH@m7QXc zg_9v#cNwx#h8x~+t`;4lGsgyt`QcD#P#|;pJ-g)g>BZlY?EazqADw3aAN}tiSI3!j ze6t*5C7XmyV}-Za?g8_$EINJoK!l7RsjS!r?O=`6es|3Jo6}KL9p=)nDYvhhG6Eqi zAuZDmJR_OGpM`_ODWApX0mH6pg&Zd;8r^@6mk-zC(SPjZ7?J~#5#7YOAKQ zaE(10Q5+*q`Jy2#UX?xh{yvlf8MQ~yl4Vb40UN7-wP^61GwkTKzy=$!_t+cAD;833 z$hj8WA|Cv`ix4#Vu=rq0w_%IBDYU?Gat?PhNt0xw|t;<|iVbbv8NkcgaZOQ<@SbW|f@Q(qdqvN;bXh2!qgPn3rpd5rcaPzXK&1{TY zEz|_-niN(%+E^leO3*xfK4-&1+%otB&J^!Yj`Q5n0j_rwB_BxglX`Toc%PP{a2AKg zLqR0kb{(X8VkBGPSxF%8QWzizpz{aqur{drEPgrN$`I`7feRqVH)k=RY!-FhtvYY9 z6mm}aK8H9^t&#fRVSq5$ka2cV`gt*NZ z78b%3Gsq)U!%^u(2d~LTI4zZOAP!7($yHUeP(S#?s_uD)vnl9}n)7VsSZ2OJ@eFcm9+^CfL^Ggrf^Fg#llb-qQ~;2H<4{Wg%k; zYkhe>8@lt|TOC^<01ocR@n*iv(3QY+St48&S|zz?%E?frH^6RdD}N}Xvz0w!zWp?W zwX*=MulIcBQ?CG;-QfGE!9gOfaIcI8xamXz|AsEs0WK}Jc3G-vVTBED^53zz9W9q!m2Q9HDV|`W#|6_$X z9{;-v z+1XMZKXiTct7K1kmM4I?rB7gpl*}&nb8}^v7bQx8mgij2V|s+o_*JV$$Q{ta5pkV% z=7Nk$Q;v`DX7=NlSe3p*7y(LmZaHQx$>R3pl9j`pv4W}>MPdJNASFd%V>*EGL3%R` zCR1n-$7D{KZ2uww5a%sDoS7=5gi3XgKftap=>_iX?FIEz)TG*zhPPTc3N>G860L*P z$g#tMV;E@0FqrUWB=<5fOSSAjV7Qtuy0AB4BorosVV~yQsngELO_DW8MLS^ErN3M# z-b1Q(+z7Y$S@iSy@pdVBUgXjs7u4U7XuPUAu5J2aq=gA=gtX_3hM%6R8%^clh20bn z{IJSVQgzb8la+c}^4dP>k#y8Ybr7qZt_7^#-Q{eCd{AMH5b=Wes6!iv9kpHC;ir&* z#cn~m!eg9`=|lo{=4hKiReHu3B|sRAp@CMbvE(1JkZnK1>20$}mzN!KKEI;LY{Xcq zXq;^TlD$aXw&-H>;tVfY7;$B^0Zso+~6F!P^FAt6+A^ zRFU~zasR^jjCg$&`A9WTlLX5c5y7SRCPxC(Fgn%fi$uMAs271y$|K zFVTSHn&g@%7pi7Xiq#t3T6z$Z8_j|0LUfT~h83#8crSTK%UX|HXWimn-KWuh!s~5q zDHoaw$%ucaBz7^T;QB3X-t5%QtV1=zIUOXbhlVnX4D~6J#K6L?DIy_MO+oz-WvL~FT}WotmRXi(ibN7 z_&%i^TBLR=Zk%Jp!Bx}k6g~Qk{UuADbkTGnk-56q73pSEDUq%S;0>@Gvs#-KA2=en zGWsfP)z1>US7=_adFNbMqxJpmcjco;zkwX*Lk8a7?WdOvYGWS-^q&muMkT8mSwKWv z;p0O|*BH?j)7|!@n@hMB5J~K7pjceObTt>mbBl{EKF+zoy4p9_B}yl~X=hATjm$rTT4?&P6P70N&7ofD^DHn49gwS`iSzfhcq zJdWLc@FcPM-Yx3YK>DdC>#d*Y-;Wo~PNsn4wc%cX=XEF1JD>cZ)|@#+e2dvme24}` zmbh;8GVjGXJ66E7)X`}{1-WS4&_6)d`gVxv;!0D6dR^!4h020X`AgbzPS`ko{3|xJ zg32(80Mp?2Qu*}65Q(hw>MIA3ZBE0u^7;~EFuM;>I>ee5>k0u-Hk}U4Cy0(eiWwA> z$j*@L^HqI=cF2>OSb}4O3T6Ou68PGV98AKo*Is<$$UzW7abg;G7C&kz!g_U`V{I>ATK2G9yO9h6`;+?{UJ={QPi z@b$^^$yMzb=v@r$jvemZng1dl=urNlv%i{z)l)MtCaUofKyN1Y8<}Lth+K;G6{P(8 z%_nEcOR%EIm?;XWrkiuL?wFDno8M+9-wXt~|B)+exS7X3uP>Y_R5;j*Daa*7(Ram) z&JVRk1@zNkoBfbZ`y%bokRRkR8aVTVcRGn}+j?jnN*=3}#+)p$>REmCJM7{<4ml2T zOmLJu9gx2|=m)J4|7EkwXWi{-lIl8E)uwlX_k^%B93CG03D{S8_DgvIa$#(twC8m!Cz7aSy6;PzW4`p2Et7mO#P>TaJbQ z${SQogA(X>xB`fp`hML8xX3(Ny$1JUo@zzMZ$F%h%&xod^`wbJ+w8yF zcl*7kVmki-yZA=G%PVYIAYUHaI{R(!s1SDyoXc?mi6mB`&q~!oWF04}j7T~v*1nd_ zj}nu+ePKTsK?vp9xxjr$FP)UMYqq%dv3>mK2rPJ0(Bp0SO_*e8y~pTi8TxherYN?6 z9hu+bO-@f^66AQSddqY-)Ar^qb18V&-&A6mww}^ z0+173@GDba=Q(^zNgwj6ZBXA^Ui8bibRF zi1qlCb5W!aHE)*V`VAm;AVvDttP@qgNPJd8s?r0X)V;827W$rC4ZHE|%#9e9j!wsK zZItD~zc!6n^RbrZ2^LMyuflxHiA8B2!yE`RZG~;`@1N`70wwh!{L-J-6^%@%Vb2kz zhGkVGz~EYDte4=>fEFjHIZp4a;B`-ITAQrm_cQe{+Wv#aVVMhM>!=PPae-Od;!rdw z@0d%)ukA{bqC3KyLCcuV5tU|j9Ru!pGA3UQHJe8lv%n} zhhFMDA|q27VM2%iZFfE)@PnYZ_eTa*>LK0=RBvcPYt41jXS`LBus1668C`@qbsZBy ziVsyDLrHz?ILT9*`wERDcg1xB!=P%*Ql zQ83Gd9F*?4x?dXvj1wHY-u8vvBCyjFNX*UW?686eH)H--rjXV$v9R@JcpJ&u@WHT_ z4o188Re@;y(s_(Ur{tmvtmsBxg#3cw3?+jNdAcMEZ1k_2rG-Tn+1pFe#~xKPorc`# zLqd~3k}yv_UUq68jfV{UrDV70n^4N-mbUu>ofNZ7*~y%=fo%>Zz)A@I#0g67xG%A^OIKKS2Z2`E z;idL7YwnWOQ=xuWV?tZVaV%t}68c*xS7tt`_M8(FzNmo)Rg^kj^C{p2 z>=cfHOy;-G0mujf{YSX(*9XC|SwLj}@VH5Q$LU)S!D@5OvRC5>WuyooYR!fBC0AY9 z9I-bIWyhOh1`deZ)6;@TH)0mclZ{A!o7BLBe+QNW*l+Ld{LShMI^BddEW#j_i|Md+ z_-}xt-Ty2R%rXnSOJLa;JZE_I9|)E4?p-`gEvksMjq?uz(YsUSp1}@N@d%8DkuQD z$yq?`do}Rn6GB-t4%lb?-^(wiq4G!{7~|vNUU5+fU;Gv?MPbl;UZ8u6p!ATPeIRg$ zg)BQg8nJXs7_E0UA3_hkSUDXy%Jn$1?CQ{J*8C087vZOy?;44E@rda-L0Fw% zwrizL#(sK&btz?OC+m~Eo)w~H$wAQPwq!D-pkXGjT9(fhD|%LZj>lS2PW?%=1?Ej{ zwJvBix-Js?;j53JHUk;9Le2*<*-r#tdSOwFjlwUN#dFi`G<)RsMK$f=oGYL3a6^A^ zh{g|x8(-~q0VgunfD??YLUJ*MA7E ziUdF=>4Gy6M+=dR*wqRF_t zJ3ctEK~;h@2SlN`fZeq1rMLl&KjCtWR>gA~e=(62;xe$t608KJPw4-o&`kVF$5EXCt{(m(%qA5V3^qI(Kuken=H{Lc=34 z1AeW{ICW;}_NQCP``gg?)<^ZustepI7?RV&OFl8s_tnUq3aZaPrKE!O0N8Ol*!TUnTSChBoLbKdn-9 zwlg%1LYNac>+yfN%IY34p8q;HmXS>fA1IUO&|grH2YLbtjrhufHJDyw?>!r2x{Yot z#dkB|GX*q7s&zGl&6f2U*5d20&4_nuUy=el)45s@U+UmMbdIP%wL{wRVTCwdyd{$^ z1V=;=#bA~XNBndj*S@t}{O3aDJ~5Z~9XR9yK;DjxiMqWwQPeMb*WRQl&%9s>`LvNB z%g(!@xc45I00md}-Ej4NSMpRVUOx`9mo~Vnkd9(5zNacVe?e^3yBeZRj?2=3TpSV`b!i<4L?{cW<^+#$hhQM-XtTt`&WCU3naACSS;LByki{KJw;G z$J4*HoXW;=4L`L1O_Pi-%c71L>H2TTq}G)v9}nvQMR9_iN%bfZ3Q-}oDSpd8a9QUK**5lJgCnVukOfhAD+SnO3vjf^2q9{5rGAJN{<5u5LQ@_tfMCDoGe#t5cN}gma`)|TF_9p4JooU zOqD81CwEIV{bI1=DWTmHZ8_54Z}dS~FE}5SWPh1+1(EO}^x^O7fUGpETn(%kFy4!= zLr`;jwb>d*PKLVL1fOykqH;Dg&PZCcC2_|dPm>Bb-tWs6#oX%8vz8Zz15dlBi6s|o z0DXiAW~1~xZOWhNZQ>`~Azl!04i!2wfS+0=)D7G;8(tr-i@=Zf0p}?pm5fUK2wZ~a znjBsiD@%40s?GVw2Wy9F#o+98xE`V|pK>FAYy=T}kSL+}=_qty>KewMeH{vXF}>k6 zl2g#1rclE@SL%K8YF;-`!{fK79w~iwOCvSgPYL-cvpZONF0+;NJz%0-Q2eY|Eg``p zG4jbJP|G%X2xYnQ8|8d(!wfRQLv8{fZPTG=U@G~Xsi#EkLob~zHGmX5*zmiUV7N39 z!Wa4jLKp9RQ!Lc8Vu+922)w5GtJC4{)lSze>X!W9^{4ZUS#lF_|y7+@I-gWmv5cg><-;)klSiw>o5QqsedT(5(Nw;GZD5`j3y zF75#?n@lIOut5mcE|3hX#$X|jnh5Gm7~gRC+VUi&0)O%0oLt)PRN+OQ;G_V;2{vLX zs^=6Zgz;VuHEE5UFd&$M8oL7LgiiLZN%rLU&o>+$lcNl?cq-f~w{U^AxhVdIQ>mmU zqdlDk#Hy#QyT$N!7?sPgLTLe8d%e*9)A)q$=2YXFW1jnyzmGKIFQ_Q|z(Z0}JMT$! zq1s9DoUi=V6Ax-Cx&<&M;l`yLnteFu2Z zFEYNr>!99aBi}Ie$B~T|g^@?#KwbzdS_{6%SWtD;1G-+oTgotPIq#*-V7m_j^Gh}^ zfV`(*``o;_4c$WGQ?jo>^ZyDn(l$#sa+*lm-74bJO>7B<%vGqRqp6*&YPFp{&F`0( z;&1mWod7H5U6VSfVTEesn29_+oOOYvTvTYI{iwM1<9@)utc6&#N6s~_J=!%9EVK?( z#pSiyvy)Wn6Z9y$W4Ul9&7VYV13fm+2RA#DpT#Pi4gFI(=A?z++h=+R(-(Fn#LRNh zybKE?_hs7#p>L+1qdYKjxKx6(aGhv3CZ6GLi1vlw9a<>~qk`V!1^n(OjO-BeV7#ab znG)kTnQJl?ZhS3 zI6~GQ!s3QUTP#25LAP?g5Bc7dZkYx6u`d15K+TOXsvx!LD{~kuM*=Ig(s}BYZ4o6w zq2xB5#$pF`U@3=1T9w%97tcM1$ZzHIMJd2_QL3mIGr3sQ)DAh7nk~5Fy#ikcp&1Yv zo*G@|y}ZH9X*f8LOT2G?i*>=~gTVa`UkKhmWwm~>F7ebZ9_(FpRJ6Qw-I|HId&eQF zZmto0pBz`W5tO4lER)Dexg)es(J#*r!0@{N|l6a>$zRzglurHqazP{c7vg~js1cX*iG|n7N5fE zj37->+GP};i938jmZ_XI5(oa;3`}UwGr$ZN90?rmUa=W%4l*R_M!ranB7BjJrzB;S zsxCz}4l@;0_s0p({;j|p{zkXd{O9)M8NE6vCMN+*OfB&DH_qOocr#huV!S8Jvo%@$ z2gy8N^@tj0voX}=r9M6_gX+GiXXv9>r+@-7I=+grb$p#cdiHjspTupe2bUn4b1!P5 z$VkJwk1qc`18m08pr6MQ9TO%0cUvC%fs;f(tRnU=rSL*@>ntfT97b^t&#W@~3%P(| zIVi}zemQrBop@f?4!t{Vr||HC)(^^*uz8O?TUBQ1lyU4X9<&KNi#TPCS`K0M3sWL5 z-H)>>5WE-`ncPfkrl!Sgh{M?^A$AI%!A6!~b6IzRxn`~uUz_- z5y{DY3veT6ZzyAiVw@G2JlK4yR54!Oi`3?mI}cnW%MB*q=IRN${QE;)^bYg-D@pZi zI$m9eUF#9UyKzV3p$Hsm!q~sz30EY6>pniC+Aeu@xs(`-{&G3Lwx?$&BTrv%Qd>~; zq+vJ!@G;UxNt1ooRpakYMm6O;5JQYzHJYLA$9sngYGo=P58uX29?qv)?UL}hsxUwv zEN1PZ*237mQ0xTDttrR7NKuu;e(u2u^SvcB)+)yA$Dco(qs<|~1tzx5I1#=QLdy%{ zv;~E=3dVP-j$S*~n)yT{q(sI&f(_X%oRL4>g&tl+zJNSN%KMzE_y0;M2&j2|2~=W4 zOBjycNqdBAP+rRcfmKtxQZyeY zm&WWr(p%l5zW9(488sJ1>R_I^yv+mp8WF6nsEOuii_YJLYWWM4@#BORY?%#dZ3g0K zCfMd>IB9Ksh^|_K%0%=_lGab;Vlx>Ee$UwGqkA68Ap5YwfsSZ@hsW%uLWs7Ag&^wp zSE?GHy;qME2{NhF998?`rXH;El=u&A@h=*0mZ&i3RCfY0(@JO0Y^J2*!$bu*#rHdY zVFu(o`+QxELz`^Nml@^YD-DPS*_Ve*BoiMDp8#qgt>3=OX^AE^BH154|7Fa6v*J$h z^jrTd>|r&!))GaM==CX5Z^IH){gM-KhX=UXRUd6=wY&JCp~akwhZurzIy8~rJC=Y!)whlfN%^w-lWEN@px_WcBf(na3i zp+d~7B#0a^b~lbeCqzM2gecO4r^Jj0)wi8SR2X%mYkEF@C*O_k<6Bicl?s1=+?QPH z#8wT6{y~mT5xZQl61yFAX|R79pdRNYcnY>oWc)XH{Wq32t#L<(I&und;WwMUG5?I`3^u%evi%-G zb667L;!urgNV@sA=23ZZNzfJGAH-Bi6CE1%n*X#nDSaz;7}40n=+5#@;4gVU&PX(+ zVU}z`#|gbPv_uD(i87!FdpgFrQ+mU7R*$y92KD*5fB2|-Y}fDr^iO=-t8~U}uOtp4 z#x6p1BOAXx--YK$^u>LI$p?+bJ7FG-kkw8WyXwn{m_vfr#n>q z>HuPqs`4pPY5lz@40-Hi`X~0nnh8ohvv&Cn8?8C^eeW&>gH2syB`E049v2Sm9$12D zy$CmTd#>({dzM^sdT?D;u|{fa5I>#rl)7!!!YscF-uG*-MEAa*G|eiTjV?g0jao({ zw|*DCTKaS=Zz6yET=(ke!|&aTvUHy^^y^p8X;udYI?WCjNwJM+29!driDv36(ZDXxnp3{Z_S}~f$V)9z$&ce5El7*6$b32t_(;1xPqu8&#v!% z(my5dN-Zm|Q@&2!vSx?=J;e^#fA})G&SMormnh}Z4q4MmeWlah$6u>FB1~1kn&3$e zB1uNt%AT9h?>+{3ABoB^-DDQczF`}$%y#$}IGFG%-lslJ&kC7y41&KAkK~P69m6GP zJb&&^`sbu6|CsrBihILeCDrU|7Hf09-0B`C=`-!Z4OVc5P-=kju1Kd;)wihbYCFv_ zK%`r*SA2Am)w;g`&2p{BVb-$-O-Bfgs<762`Qy6$=1vNv9n8X)NjlI=Ki4BbE8U6fnA$(G`%RWVwiZn7x_MJ96bX0d$Gea=RW- znILYJ{S7PYg!Qg9$muFUZvnvi4vbnf_Z^0+(w`C&o>m=~& z5Z*6Za~YqY*0w9(PR_z&=FQT#(VfdLd?7zRx^1B{_liw3wA)G#-3@SPG8fbrlknbb zo(y5GV#oWhA39sp5P1WEx>4z>=b_D$wkQgmrsLv8=BgYfU$C%F&FQVH+It zqXJX#T{Gu!0+5N%ydH>4BZ&J>*A2YaU5pQVO7LlKDZc2dz-mJ^)){NXRvN0XthWpw z_7vme-Vy<4R~RbswXquO&9&HMsS{gkuEke|N_^VK^ipN`hJd>7b<>LQZg-&=fn374 zwD-CT@j*`!KJ6_LW!ywZlc?f)7L>v$--|L&@!%?-v8p+ps++!PpD5v;bUeTo%S|jd zl;Oi(s`TdJt?pdB-JOs3dJ04tm-be%5yb+bp$6ay$?im&&+9b9@#!`vQo|Z7h__ z`eR-OW`n2>n~~_ehmDpBd|@cU$9?(uK-6#v;^xX{{!O7FeowYQxm3gb%199R1~yqsvE5dIJ%iQQH&laNwkoW*l;BGv(|=v;Gea)EFfxC6 z_?({&Iaq1T$2xNnb_|pY9Gl~7N86-R00VU&qx_XXMEj%@SG}#+J6MI)<^q9m3EF>#hX1I!FQPVIkxB5F3bhi$a$TMLBoZ&<*SwEW#FBzJR!^%-Q(bauw^XIr7`~!9wgFyn%f~#bUb#3$b}17i%n6 zvC5n!VD1VtRgE)5F*nvUkh{X1E->y|Yc_Tc7UI&#ZQLC*3q;R+d>@F*_#2w~PQZ#m zo0G84cyW8wfK2Z_BseRgO1RnhDyoD_*p?tJp<3EXb2?U0`PQ0=4FgvNyyY^E@C zQ6}d&>L|m0`wjVBz+Brkfo|7YGqBov1uHFS0^4%?wKW6l2C}ezARB83GO^mqJgWZ* z<9=mM!D?$7HrleV+n$S4?sDY+LP1>Td=PDuHdKb%1;jn>EXHPACRSQ5;Y$k@WiMj2 z^)kMW+9q2%jya12#HG6J>w&mW;y_#j3WH5JKT?gojvTDDrQ$2=d8~*k;Zn_Zoh?N` z+|5Jj*ly3l9>+BtaOUEGGY7lu+1N681siOs*f^MmtwWjEWxtBOj_Ww+%)=39zSw?8 z4t5S@VRLlfb+*e`N61%ANMWxB^uQWd9vjn};q4TzkZI6=z0@km9WnfHo(18~MRI$O|^$ zTHqG0_^NTiQ;HMrJOOqI?ou6>P%e!S?i$Z`p>Atvj*AaTwb@Rj3Hw!i{)4da_n{Ce(Au?*+t-y;>kHUkPQ6 z3W(c>OVI~77`TkJ?qir|--VBDTf{!KZ^u0Q4zYy}D#{+lvEUUnrTXEYh{^dUz68W2 zP^h6o4HgmtF&8{|km?Z#cX!|%)_IN!gge)<9dqow?iK-Y3D439-7awM5YTp+Yp=k! zRL|Y&JBeNXGuY!li=F;TZ1J9u&sQ0M?NZksrIzd1f%$SS0=xurcVLNgw}8A$L``=) z=F9cAV6J^L<~lZGp<}y1yX!qiz7~jE3byjQ1GzC=i#OtE@B+4akBP$VB2ls3h|e4w z1;V8&E}>l7V%IjTbnh1R+r5EG91UK?>2NKoA~$e8avSF(w{SLc9j8K9a5#7#yZlu3 zJ%Ht|9RlPobZ!<~;3OQo0iQb8VV-j%R(f_}m;a=ki!d&gab4pfsgrL4;?@`-?k4X+ zEOBiSs8*@jZWIuAscQ?COI~(ht!FnjdI=RD!WQ2ltoQE4D$foqcW)Kwma4hyJ$tdq z_|6XhQS9&^!505Ptn=>1O3!vI^K22wcBy-l*b?`~X)A?tm%2B~_f~nfVXN;T&P1+= z+9JVQ)|-I1j~^lUD1ol*5Y9xeV1sWr77I+f9xFWj?N+SxY?0&T?oC)G=iK-lfU8aa zf4OIq{AQ(hGgf)GV0DSD@@~d5&w4ENtiw9rHXIFC;!f%zMhbR#%Rt=H_VTJ2(?cK0 zKIXIh9L(cR+)Y2k$>>?^4DH7TQLiO5I}^lR@82S7xo2Y+aWi!fUAX}`CVY}t4fgW9 zoX6V7edx{&;cluC)v?RiA3BV6zD-!>A&9$t8pK`hTZJXw6>_{gbO6_rccxW#S;stI zdHTP~RGAwf?op-ek>sFBi;`t1jN0Oyon=`!`K?!jP-#vSmR%X)&3P? zRK{KJUxST-b=Vx(fUSYe*csf8{o%bh8aa%L*eOx5y_mR&E6FRUOQg%n(mS4e(aCz#P0AG>TAbHIkn7 zp@moILP@On~3-M}Ph+jZ;>;lfj&f#RV0!Jc8 zus^Z~yTY5XEu_?OH_15`iwT??oQw6r`Pdd-fy2?AIG;EzFfNsGZQ~xvn}E1e+*tHQ zAnqWp35Z*TLy>*hN%%LsSRh;~;}VP|Kue&NAnwk{D(s0;k#(~Gxd&rgus6C6J0mNw zJ-iG%A}g>fvKo6L>##Sn5qm|ocq{gVw_sOz19pU0V|#cxwuP4pq`Otly%<{r_En~U z+y&Sy5bPpsk1oNU*eaYz?841V4Ti@@VJM;BpRbOClmmtbdfId(>wPUdGZwuvoz0f4KGpD&W{ZjUUH-|mbolk@Bnln-r3y90{o6p95lMxIS25~EM1r>?i*cV%kolyeL>bDxg-4MbJgan!s!(CLk`)@1MvDpQS-ue#dI$ zMIhi8g18y^ov4E*Lh?#@cr2TME1wc5HardDJ`bPHX8ODQ9Tjy4Q!_za&0(p&Q>BCN z$@7sDq@X03GlIBXu@HLVA(+xJ;gNWLRWGk9h^x{?$d)V>K~?$yL0kgPL#e2+RV-Tp zaWzyq3)uNXTM@*~3OGy{nxMA8+UY1v*|-3o8ervbel#F%I);u|2rX1;PK1S@K*4s(hWuTFxKBQ3fIJ^O2;wFL#C7Jw@Q()&827?caKMqb!k)LnH||DqD*jR+uD+hiySiR%Du<3# zKmybmtSKs4hU$(E+|fa03?yQZB_Sfh3AZCISn~;aD5{l@zAlKXgP>>(4AOzQ3`Qb6 z@LK~u{FMZg-IG8yss&KJh>C*iE#25`?Zr-8KlVBXr{N^l6Cp&ZhJ7;Bh`;m_++#4a z3INjZ0I#o)sd7jK87g2gKw1MB1R}X;&4;WE&|v-12;%0RaN=)=E!T~~bPIY?J!nr_ zP#<&Ql-GhKrVjkR`;Mp-5OCH(kJEW>R|;ZE6{uanAYPXNmlp#TTn>)ng1-l6Jk2=i zZon~DGY-4DrM@&#-58iPPf)g$T z#vSk$Yyx;EABFJrSzbU~-6v(+2xi}gmRjR9W#?oT_eNdVPnBaK*NZO0CK4-UBo zCD8VycT|AQ1Fj)~$*9oCx+P#kP?Q0v3@TH~3B{mBo>wc(F{qA#jD)IA`%HKc_rg}7 z>h**IKLm7CkSON_(MR0fJ}WmLy-6QhVm3UCn$Q|Ep*LxPDdT{<;79xs0c@&zan7Ln zm2xoiyD|oROPgijx1lbHe{1vdin!{vo(P9L!0!EM%^>` zj)7qs_~97I_Rsoc+hbdkex?L^WZvl)?9)CQZjyNe$4-tFRI=hGDY_g9vvD&Ag5VsR zxH$=Zld4L*2FEzojaF6C&GSV4F}u+eK(e#&u&}q{kUv zkNKnT5sYMBO50_*agIsjJ$UZv1QL()aE+%#C68khRi9X<%!}@?6~I&kD_It@DMRmF z8A~`Oah&H|fqCNGf&B$vRUV6NmGwqwh-J!a=_Ub(S;RI?IH8G}}6XTekH}p)qOeH_O|4P_=d5FRZY1$XtST_M*1Va{OE0JsCR= zyN2*E?v({?nLB*(&r`(Z*uptFK`hP{>7Q&197nk+0LLnhO)P)50|LoNHrb*Ja= z`o5K)v0hoedSe}KGC@CMS+b9!FYx?qi|h}me9yWeglf&jWe&(-G!4LUF3Wiam9hve z5zyq=Nx$cHc>U?IuM8yT|EY||bkkRv7q%6SpB!@!yN9H0vL3hz0{eBsH-u@KX3mG% zZxCE5RZnIAqVHw&T$*J-f8}pZc}Ar?IiB+&CVz;`!>#f zX?ngyHCP4P*5d<$M#D{#uHt;DL+Y7x7T(jbTCQoOQzQQRSMDDWOBcne4~)`mk(@Gz*B^_&*@7lq0X9>y-AYfw<3?9oL?-(pTM! zdc=R|Gpr}pA}5PvP{kEGoSET-lnoRib%#3$W`PkKjj)H5s_J#g;0+18D<)=ufS z2$s>WdB014l)MC8E{-|8 zH{saKH4V;5c>gbR*|8oO-`I9Jmyvt_E_MH{H{+U~ml*xKp5HNDydOX7H^Y+WhEH5O zRbzKKI7*v%#%D?DJ}&cw51P4)ZxWr!fb{oz9>zAvdgS%ge5|N^%5<@xV>x;4azu1A3Dmptb0h5Yq#2a1ukX1^ZRTI98;JFtqQAsQ~al+I3Lq_<>#*wh+AqJ z#HD`@XCk7c%6gqM)FkCZU(xr&`W}w$h;5JUiW{lycMV9no$;G-F{tj1xfv4eYS=FR zd(Ll`v4Y>{`Xc?SbpD~&iS(K#H%w&xu|7GbaQ%$;?(BCpSg2rBHNW9|_BCGz#C=hF zps~J~Uyg;v_Mq0qcn`tz14pc>&LixsRjL+AiNVP31($J^f*kvnJv#>2gLnZrvh=Qi2GV^ zE&kMhRTORC8oYtO4c-)cYv8(k{(4`nz_x!Myn# zY^~Vo?8I?zKW;~DFy|FGsrx1#I}33cP9>cx^cwYBX-c!jXkaoYeH@WA5l}EVJChM%zQ|cDCW5yAwye-8klB`n$2;(~0fQR;;r%VyUGb zpNz0RY6adUl&fJ}t&01bUaHg@P;PG({yK0OtH)pOAz;8#7Bc&)Dr ze;>Mx1*RL==4iy_&>#jfegRtbe76YVs{HVneJIac3;E_S+_aMas@bHQHJgoki7G9q>*JcNs(0h|l;;*`G&hrR9C z<8Hr{4 z-NhQ)9c;AM%Wu}&?qIR?I_8+J;N6jnczdW?pj<+@uMJe%qZjb*NVO>9zC$S1bP)?IwW4Ob+I|yj?YFSbehZr% zcd*@c5BofgIO%W0jp#6jay~?-xM{EI!&t}Bsf>JnH8P03o(3!*yC$l*e;K5LEumJb z4_9M8m3hamW255^cDWwlkf#YJeQh`w=)$E?FRn%ga4R~DyKxih<0jmWjo^B85SPQf zs0_5@fTvMZZkLbMVUGC%{x(u+sNo*R8(JNA=pDoV2)UvdIu zQW3QX;wB#DV9Et>Ju-;>o(61m+{6a^O#y&u>+LtNbnFT~Ghe`mqvr(9C6r4Dm+H8G z8KSZ)!Ck_)6?lKN5_8N|SUh$a>+ILC)p;8`TzAB_xo%^d^ENg)Z(@VvhP*%NZ^7Nz z2u8Bp9F+H}gg0JM5LcjBg1Cfc6^#3y=@i~KSBN?;q1^e_DlD~K#2Wh*Y;j%39?u;d z_C3G}|3jP(G@~-ujMIT89QQZkfVUpoT{p4bQHv#G=P}1ziT6xYq9u^4A>1N}`?paZ zQv%6)TmzreQdnvV*QO9=N}QxVktae}y1#Qh;b+=Bw) z(%zp2aSz~QE7esGW6szSd^&ana}6kWnWI8faW}ayV5heh2mLp3Ja`wULl1B^)QEGT zMw|^bpdxq=NBp-$*>xJBEC_s!~<-`(r0!@WemK%#06 z!#Is1h)bpB)Km`6@em%ShEN&0hdsV4*y*K$?-lI#)nS*HfNB+1IxDc)PDqsiG4rSt zaJ51%0bG7g*mjZq7*;t?W3&6bI*;qXs8~w{bJxiTH2chwp0D!6BMSY?d$AUMo)^!>SM7?$|J}?w;-?i?LV}3T@eh4d^Cj_h|V0$un z3l}4exE^oE-9!%_B>T{i>KD70?8U7_Cu(CYI2*o)!-1>V?m3UOt_m!69LA?M=97xR z+wh*Dusheb7b_gcreWOs$v%vY`z5XPmG2G2ef)ibxVyeKh^rKFzgrMj!?=7UcueDa zj#EsNy%0cG#)K=eM(ht#^9i6>B|v4H)+d?j_q{F1SU3lHekJq8!5g`XKK5X%JT_;%*ff zm+H4G-P^IsfN}}kQWbYk;1muA&*5bF63#~Ia6Wn+mtwbYId)rKt7F%2I#Pq9;VSG4 zp2AlDA*}W8!V34688B`sh`WRexh|$-J=S=3;#jB(57S-nOhhD~g(pwMU)fKM%2Pz%q46~^;>O(a0%-2e`~!vu*tUv zy8?%CFjRr#k#jg1slo}db2uJ8izDIFI2^8!&ubI6(U$Flb=)HmAr)cS$GoZ_E{(Cb zG(xHac{A#gw{akRR3O|{z71IEU56FkwF2TU@+`+v&nj&2Z^hy83Dm@|qcPov!Mp|T ziIC(~fxXJN2*3I!qp*y-1lA>3cr1Jh>wTNC#IqcWJ`pe6W?`iC3S-!rB zD8>pdbY{D8HCZQ0xB}q@l@jinfKsz9g>ebe5~?L&dpNomr(?%)K5-6Ll9zEUbrm;L zH*qU<6E{-VQJ1X6<-|n+e9y%z<-5nC2L$Te99oIB!G%~OinmJy&Lxn`SHiFg#HA|k z;%^P&P6KoT4Q8c3c8vSbk?qE%#AWOc?~$@z7hEdf?>bSioiDE&LIh1$V0UB#4n=q3 zRO}EgB+lS^x(@Z3ySSfez`fK%+(|yf%|wGJiPyyL;6m&=&O|TbM5F?T!UwQ7yd66P zMqVyTxa))Sur~M^)&=JYn7b>o7Dr;cP@Sm2{S4K9%`)y&xtEH#8nh&oI~$05<~b0T z%C!o_)rzR*cDwZ5bnX)W*m#{#L3t`RK$*;GIkPYVrOtBdJdJ5YMhQ# zqaw`l<}{9nkKsu801k$C3aCr4cY9=+K(18KRUoc{aA{PlrE2Zg=pr15Z@`uGIrJ6! zByZu#2{`jP45niO;&#NtXpe`{67%7Hd`R+jA$bPpl842rlgCk&JdVo5K^%|o#KG7` z?2QtJWu6ubbh|}>*!d*@?qX5&-4R}eJ&{c~6y1g6(SwrDGx4LSN*qOX@~E8uY~r9C zUr%2`d#)Acf(`D8pv>9W$J!^{=*+j{O6m*_$2Vd}lmM`TZ;LixAl&`YH8>I9iSxx`Z8)$)wq&&MyFb(1cMKSnAATGa8zKp*i ze?)M#Cmu#$A~G!u$n(C+Ag%_SS#E?^sZvaUm8!r5oC$!EgCu8F1aY5-I$s5w25~2{ zB7QoQj!M5mBSS!+_&gx&anwG^T)2XX1(>>yZZbO08vhBJ!L-oGx0tBv{O!#r6inaBws zJC;+s7w~36!?7;|dh&eyt_~ztKxRQYcM|Yq~E)*d^L!xtn`=* z-o5FN1mH7RlRQ`l0Eh$Tw*zq%1fhdDwek^zc=$?ij`jwX z2Tg4_>>d{Ah(YzWK|5;vHe3xlP#^K2B@sYZDuljF7z3FIx>7;hh&Zs{NhK}9xI8BV zpNhe1Iw(mib~2Ea@0FTYj|A!y9-(pu7nucE!&4bMG>990SUYNhglV~Z zeJ|b{Y!W}w(0~rYqLL}|&oZT-5HMjGH79(Mb}B+Lcyc)FLsxPX4bgVghnvt8>qSq> zf!<6AcVk{0bd3m%%fNXZ46K7m_4OENMevJYG6SXVM;#dE!}f7MVv|0ECY*5REpX+n zh&}S*$+Ijz|9t8zK-^jCtxMG#eP7gvJFeojo|_T~bimb(E1^+5h&j-i^hv-op_Som zO!C{245B{fk@99>D}xjn@XEAHpuVBxsC`lgcJaFOTLJ?FN$NsWB#gfn2&n!!F~T$IoT z(qVyH8JsL2LicU)M;+j(gAi5lwt`~$oj0lWIocw9Wu?z7L6lTFrB4vHWF+W^zM^5d+3M-L z0dWH}K-|w?;9KQTqVC6E1rWCwxUJOc7*xsp^Ob!({Z#`c8l2xwp z8q(r8LQsI$ziIedThcG%1;;{d1i%QEaH9$WR~&N~tjcz#0!2rpKP7lapJaeP>uFkH z`E&J9nE_)=FO{NCc}L~?5@_76zzrJ9Rnpv6C;rPITn69na`fS>--O#yCpuFB0rAH2 zeAt(Ot)O0MJpWLZZQ3v8c+xu}AizgMjS|?)bJGtvCh&SX7?vtKgmIat?o?2M2lV_v zfw0QTees`Rysn<7&`0^;n44nsr9-$HvSYigS703h^V*7m#VkYSm&f!$`W^$fS!eXM z#<&;#nJ_H*_;mT{vg9lKJk~t}*0~YF0oMSQncF0ooxa2kJ2+1$4X7qC!8sxOPzHc= zzQA_GwCnQY@ymj^0)dpM2Qi?Te!*A$8QUX$pHLR(MNI4Ms0%F#Kf2Q)$s>(tn(`pEp>0nSh z1L9dHoZpoOhid?a`RC{KTaNAQJK1j$;AQ@p7oLmrJdR_WKk%6CmwB&`xn*2nJ~@vd zSjqDfzG7aKio7aA=2_2YwEuh?5O+v}xUT0xTpG`>ul-$vxG(23x1aMFsvN(_XV?bl zGlYzk&v0{%FZUUyMf(f^Ue0UTu2g&Ya-X5mXP8$m!m(ey7IFx5sM~s}da(wH=sWx$ zp&ZsZ>x`g1+d6&2oR3QyN^Pu=fGKaZ^|%KYf@5+YL|B7<$MVu}+w*Pxu9QFhjQs}h zfpoqI?XbVn0FT%#5aYKo=}%;yz=ymAQRm})k-o>ik#i^>Uk;85)W-5#ZfO@Fm-7+U zUHN^h9?J=SalB_cJ@2>3e1UTe&h0n`vJDdeWZt>41ltDtOu`HtKLoNd#%hj<=4=cP zV_sBvMr95_pJy5Bw$C)M9`$(5v~V85bh4kIq8$ND!glmk-Xn2?7>?2O57r;YE{@eS zribaO@R{t;;Om$ zOz2yIbE@B9*>Ju{kcjXi$9IBEoEx$(*dKAO&N}D)BlFF<00E$TQ8z9J#zcvHgSAUG zFyZ*ZvHE{CtNE|)pI9f-R}ysWydm@AkB1titnbC#;j&YAhfU#*&ToY@lm1E9hj(bNim<=QSq<}}C7h&5{)m9CR(tmi&;40U6LhAT>*gn11 zp*QZ3xoms!9#rR@Wx;We>0D#&lKU<8-yAcTKkY+Y*W)qo^*GMyxh(U^IWWtJ`IF5- zT5IK6;y)!mR63XCcVB4`_n88%cwfhIkg>x#AZuP+M`Rme+kAKMfqfXX*r%{xWjo+lOC@2>-S0;|GB4A9 z!hT9^wDcA2p|zwvct)fg*$=BeMdhtr0ayBM<9{p<_Pb0A)AyqGpy%p(GY-|S-Nrk7 zo-o>qgItRX+Esf<8gsenb(o;kGuKb*qi&fGa2t`w?UL}sdoFb&Kd!43E)x@_dg8~m;d`i&o#W& ze;c2TG+?u>6DPexxDv9WKI#-@-L4expIOF1bf@^tg#N@=KbjM~-y6dbPe0a;I7X`%qS(gHF<+ziIuUADCcbBsZmxE@sCb=PIT*e-jC)e+s2g9g<%h%WY>hMPYRRMB89KM5PmPYJwbl{kW>&t_v3Jl{y za0Hh_CR_=daW!Ja-IyIcX+OLZNl^#P8%m&_@dSF)eq0KUVuP&(?+)I?YrR)Mm0g0j zKkqt^pLJH_XI%=!r3&ury;tzoz%|Snq1tLQj(U1=IW&sf(J?e8oM=tD(V6n1JM9ze zGK`<`fA?bCICB)Ief>D*=@C2Sf+ZIbh=cjyIy>{mJQA?tEBhyc z$mTrPJ6)&>3}Bt@0p1;|#cO@lqJT>f_cw+jt_E@cK2(Ec*1Op2ChXXcn^6l|Q!Y`| zHRZV;7@1-GY%m)@Tgru7QH%U$kGlm+EVuFY;3ZMR{YCd_fpLG^dj@~#JB!!*&f(30 z3z%oRj>DdIv?Lq|Oe77^QGvI-FXnoIhKvcv5GXb0!=j>l)JLe8%ClAYP2XuT0=R$Z zKPzgue;%mD2P0Ro&VCP-fgaq8kD)8=!9doJ;am`-xsVuDY=^P|`Mf{tLwCl5mZSr> zVrHBV4dA4|3kN-|qMp0QMF_N0U|VY;B5C3nO`jt89GpyJI2S-;VhlGTBe)SA!JQc4 zP!leO`f~}{G9^X z*2m1KkDGBjHi}zOLeV4gIbRD%PvG|hM+LssAnt1e z$ME{VG5llX3^qD$p(flb*YJ$TMg5j-jlkQu0TA-NZ#*I2c@XD3d`JPoQa9{7yK&Id zi1qfHSY)li$EGU0BdWY7@MpR1F;Tbu+sG-rZ>q#+mh)I?tHmC7J*t8oxD_43{Wv#V z9mSp4Fm6YOaFgX49mMU}Fq)E93}n4<7NQ7Fqy#)rkd>Zyy*eQ7TLy^xH?iZQj7uo@ zZGy9-$MKPwfa+y|Z_fl~-y%{Gu(l$Iym~ksQi0WWF_ImDM zh3z8dSWZvFxTR{ie;ZXG?wccr@R#9(c-M3s>z%czjr54Gu*{ebt$NG*{ZbH@u~z)Q zT2DyBUI?Qn!~UTkM|}4Lto_i;{2UPlTv{oN%g?ElyKwBRDBcpTCBS<>F^rD%82U0! z3}oG6gIV@ZZuDfFXitx!F=>+P5YpZ2y@e&Vb9l#e7=Ibrk2gmT$T0z24dH4Kmk{oc z55)bU6>*;jaX+*iz=u?@wH}oJe_-YNgP3nSj`gndIOM;H>TnZo#JbU#8kVx{%Q`TS zbBXbopEadMaXa3J3*lxQ@Lk6m=h-qCw;aUXi+9bt@s4?yd}q7o5^lz+Di)M}o%vuH zvMe=-%VPmu^Bz&9txxpfZlV_tk^{J(9Kf}B$26e3-hCEJ9VY~~C5ZdJWw#h%Tv5;+ zJA@_n<5=e+09%K1;Rf7FbmKv45Dlq8+)ECiKG`qlzmw>ZR|3GjSsTU*0r)1ALbrx+ z2{d`BRG0UnIX!~&kw$FyUce&z5mCPV(7H=ha21S8Roq>eW7~%n&Xd^fyNolTdR&XO z;bCeJz1cC0<~^_$`~uBd$Boy5ALfD=gE_VxlYqLHA`e9+cZ0i9)N$XpZpXWpt@yyY zT@-OY8QX==#`a)|{SdZ$t8gXSB)=yNm*Hk61Xm4z&58doHuF0Iai2aB)!kPS#9ik; zhWXzCh+CQ;1$Z)WIVlisU&f01L?n7e99FycVW9!xQU#Z< zgm7v6e68mI_6N@5T=Y6_Bp#wE-HYC=SyYRy1uw=5z8PjIcrl!Jpes9yhEx~o;tvF{ z-RVDp)0R=?q>vKT^q5$wF!$|Td>ltlyPffchQ%#s5zsgzo=ZSVd`%S;?k&$ z%h$zD_1PLx<~@N^;mf!Zzl*!cRE}*?q|JC3pfzW}x1#_z+>i>^*|Vx z{>S$mI|7g57#nw^InyEPm>d0D1j1e9St{VIfVcw0DiC)|U= zMU_1_1CIYHQ~CU6ATDj40pixZ!XPgDCi?tP&WxsXE9w$gaWs4c8w2aH!nYLb{A;i; zvhPu)jLrUN~>0Sx3vF`Tzxv@iy9!47M|iLr5))D?~OYAV>|d!5-HG^8Km zYVsORMNeW!XbaW^mSLrTk-)b_5O=W{6 zKN`aA%?{#T>K@L;Dg_p$D($+!GOP>Ilp?N%ajAq$2zOs(2TsHe<5J=R?xpVu$UBf9 z#&F(*;erJthEYYhKR+yry=_^x3iP@8-HhGQRoD?-D$whe$igxRcL6p=KEtNSTp_FNlUa?Jv-UP)EqOyZy@$?l7;F|N<+ z%`=o~3F9up)-Y9!S7Ud0tEd#8i(W)+{0?p<8}K0g5Y1Vhy9uqihiJ|<%C&m(-7pob za7}RSHY|OkW5SE!!YCTE_e9y2YPh`4=E$e=x=pS(U(|4SN0#Hb)Z;lcXB*I;@5gAt z4DxxK-N9aKVIu!l0B*Q|H@0b6*v(&ildD_7GXJZ zK;(a@QcFlygQn&1>1Bh!4p*G;6g=Q?xZlSh^v3|HNjZ@UBb0#s_Z5r@Q3|kfk;5! z$J239!KGsEH@U|5X{Gfh4}}dSN)94gxtc1=^aCy;^LyV0#MMwO{gw~H3Qu^m$sISm z0^s(i24K!w5Sk2QLX;1RU|spS%1uF63Y;aVbt~!;SnQLbCJD-8a2|tAbkH7yP8jsU z;1?=KF&Ktw2UI}h;%7OCtJ1Gt37!jx`(#2URcvqcDGsg#aqYRF)bdgJ+mW2JSJSbKz(kb~y%68*&IR z$~3F8`lcZ6OdvuBcCsuPv`j@=2Cz|SgfNK!H2DOE(@`1dxVs7aY!2*93(J$REctqk4oE;hg8(^!W&W5?b$$in z#stLeMPI4~*F()X=u#?=9}E)EW02=eH4MnI<8?Hkz%qYRpb`dl_u*o|jP9fx z{_zl!kAetK5bQR=mK#BM(v7KSX*@GP+{;17mw>pl*Be3SUvyr>Ydtsc(a=5YaWYi5gdExCIL>QeloNQ4JEm-0;8a^ahOt~2Lun^EHT;h4T8?W6rVe${bPfT2y+ z9)Tsi<7s)I&hs(=s?<2HtH5VMzZ{Rp1=3|;W|iN9W9|_Nh&${YLY2=fASMA@p6d%k zxm5-FPsy4w@=j-YF0&!90vj#WCao(k>+p9sz}IF-;8!Lagxa-9yoDpk}w z64=T*XJ9LXMhTAV;93SmY2bmcr9u4sj1PkuklvjRq9N`PV1q%iOb7Ep(2x%{6|nJG z%8_a2XN0~ORLwDviZ+C7W>Y?;59hN)mo#n&+Ln{oiZ1|pKM*pOu4ujj-_b|vw=Ubioc_{p!VLC9D_0N0~ z&hAf#1fC}7$hu_Sm=`_P>9L4q$v%ejH2Mg^{XDgPPga*~WNnwi7CFa%kMBY;B4 zoNBxb4CKAJHk}4ui+LyLL@=HCWO@nHGLJkzeWY~WqK%*FvFTfZxS0|V*YwW^acA=x zX%Dmb4Cm4><1++S*?+MtsSw6%zKqW>E$qkWYn<1y{Jyr&gq;GdaHAErbzY~ut?M%7 zJdnOcXt=aJ&|ma5wAwCT)%__!BDQrZPelau-uDUP z5`>VlGoS(b9-%po6P!O0Y~dKrv6bT#0earca1#jL!_g<{FM2H3_glPoWxFFV%Q+!| zN1m5`FVD&I(|G^IahOVI{6FV_ECU9|>i(N!_*gD35N@^4g3Sac1{wsyDEe!$Pt$5? zoS(6-IqxNiLSN^2JCcpcwTenxMFlY$%SD5Y1XJ5n0aOJn*yiXHApDJ9ZhoOa@zQHE z|Jt7jy{UVNE>RffT!q(UeyBjKHw1ZE5SQovI`bu#J@4hH&P*trAY4O?f%|?L`-UYJSKR=de;7@%f8%SzAt-u5VxpwUS0;J<2UDWRJr7M%e=QHd;M@jg;{C2DHzoqO60l(pH`N#xj2V>D1af=aKEZg;OoB{h+A&5aY)BC{GsQzv>csf zR2$tIg>fq`#ih8ryHl*Vv_NsU1b26DDOOUnP@oi-;O_30;#%At?tJ%G{v>Nnl9@AS z_Ph7930%7SA9WCXT7PXqivz#44>e4L&^CCl_B1d&P4CrwUZr$`OufBsm2dPcmSZz_ z$L@Kl=cAOq(?V(bRd&K3ppCI9>DRx9kD=XTvGx|KSAC(#4+qL3H9#kp7W5R`Grg)s2Cls_(I6kN6^UuQtt zJ4c>=mbpc|f)SVvC%C}hL`vJ`z`E>C1)An#zYQ`LTc?O{l*fOP{KG3e^bCOwBN9l{?8tzl<&gYiSCiz-PjpbocAd80}lw8jOy{!(G@@^FUD z9u2^6)&vMt4d0eebO8fiT5QM#W^BQ+(R1V3j20FkgscEe z@wByw-3a1c$ak@s;8}5%`ZriRc2$tqLh8TqO`vYE2rSFvJD)qM&!=sS{~BMHz<957 z%9*t&Qm17=4~wGa?Qv+fp`Ak~wh|L3lKQ?fs+B~X@22>dy?r&$rWd{6EfvjPUhGR@0}b{cWa4V$0UIO)2{dCChwLOjCo-X?Zc%& znvv&8C=>R*W6~xWM$w|K->S+cf0*66l@PeA9KW>a_}9*i0Yw4@PZh0p%&RgiIo^3( zan3J&2M-H{_=BS%YZ5sr)lpkK1Fqjue0)X^-6Uo9!TjX1s@;+PS}n#M?@r{6rs*WR z1XOQiFh1yU&k4bUgDpd#!#?E+xdgq>D`r1R)~UR_H$E*UB>eLB6l@yN zEIpc}shj)OAHG{`k77pe7$@D-?U4M9odIz+R_fZcv(j%o2A>ny-!^s}iZR{%3Vm}o z>p|IK%mKxxk}(?Qu;2NVhY&JLqFs*T>HLy>ZO$S;nd6qvD4y_VJlZGtF0Qk&V_$?r z`ouAC@62EB-K~Mduk-nJ1*Zm~b+1`WB}rB@$9a<99wt*hlqf-B1D5+^cOW_k{JCWf z#Y1_l+l)4%JI_;lk)XC**4n+Z-F4ppo93v%9DRQJ5~QywP44y&O-*Q~3fCV3oQ*5S z9Py}*$9>Le%zLi)OPFu*i`(!>6}-Ry(^F=_Y18kv99KY-#0SXrhZM;eg9ps=Q>o{9 zoV*c;IW~a7x&PPhrzhvT))0Ue8?1!e_{#qx?(_B(Gk4%uF`FTu7wSOkF_gHmv)6Wo z0PMrG2})2h=aSzhTlV32Nlrluzn?+aEc4*`qkGmS2<(|r5qo#47tN+tNySW%8p38f zj}K-rnJ!Rn43gr_C18MYj2j7)J1Mz;B^QZWr%dkAiRt>1+?j*ZqsSIfbfOo?gw&m= z##OQFwi;1oG6R61Yy67FM}sZyg=ED*&r#IP}}v^$j{l+l;L!6HfC5VI;yej!+665 z4l2QhhRODPoQj{SR*cw&p_k4|fGUb?jMxc~lHS2Ovb+W#)hir~V;jurPi5}#1~x4| zzCA_6oLf>-hBDDsC8KU+qV-7NMY_`_ghF&emS*z(v<6Jn1wO3+Rg{0@Z`oUVC9975 znJgc7F4K}Q;6u<)CEw#upA9#`Qh7uwoyF+|1*yIn3_zRHgTpX%k@9p`(rnd}wYiA{ z?39xWIOn5!LLCi{%W&s_?tymKzp=^vUTnFN9d#BA#H5(9P6C~P446UT-X*h|%QZ*;N6rTs0do&0BCJ~JT zb#~2(NeQH@Lr{o8crQYQO7JaZ2sHAPy!Y?(A8DA}8c&RB7j;mMfBAB=H*H*3IVIN6 zXX7|nkL0Uwxd&yZZIbg{Z~MntkU)wm$*s<#4Lbn8V1NOr3kc@ihQm|7bVE5Rf(ylC zoqc9fr4w6gPSLuIfeoQ2xa?HlJkl{24(d*6RJ^gG{a8%n;umL$+C`i0sPYXY#!Ck! zb?qwEZ2q&9g}VRvz5Tqpjt)~39QOQ)!_pKr%EDL( zQbRJMzU>mgBh&<|4ZEWW;p512c)PAgFmGw!dsX{WzHOfWFPxH*>wI?Hf6}Q1Nq`I_ zZX;f8E1Kn=p<9i(Un~lq{1Ei~1J|00heX|n7xYcugOv|!lhtS6*YGNu`xq5r_yddP zyy!`PkD3^3fnI@6%VMo80D9lT?=8Zw(C_`bxfaVe^~O#OOhF!=9oU3ojTLEfyrR(e zH-Z`VIcCnRHaHu86F&qP&bY0yvY%i0u~oBF5e?80LBBx5lhnA>d|R~p(|EFOOUe?{ z_kP24C2di`j;8p%5?4SK7TM<=o=2uzpZCM195b=;)vAk>%aK^2^^170s5m=h7e?1Y zhQFa*5M@FG#8mLo&#>djOPz{TmMyT?gQ&O-b(f&LVWY%KB3mrmBK0ajkj8kGg?Ckz zfu+6lE#evigofu5)!BTB8DyOx%p5Sn9J^R?o1s^Lx;j`qJLQpj4@!;LWX@mw9mMcC zyzoo-BAKym$vP*{3W)*OV@=q&k64eeTziHV@r*whOUo6*%lW2;#Emjtb_JBRvfd>- zdL99pQ(cndL9Y#m3ydWBTMJdYw2%hfUOhM$yzXbJ(k_;H1Ank6>^O8^5TXI;3LllY+I`>=JOOkJ)&>1dePzrd zx_$L1B&Q=~#Yu+jkIh!@C5Ka9#xbzo>NE5s3}*na5@^RM7_l2q29$Ev=QmkIfF~G} z3Pn~hA0w0=K5J2=oqr04>Hzx2As75+`f~A^Y_;Q??a+(U! zRooZC!yfl4zGh6lp+bbYWhNh-6hfD9nt8x(_-4pcEEOKpy2(5N2b+{2jFtpyJR#K+I*{2%OP#~Z6z_fg`78<(gziFh&>{W zqwr`;qKx9&tNaMicIAqmUTesfzigevJ(X7FAGM=_lYL$%jNrJ$4Ut9sEH*e!XMZca z8%6yMwI?_#E0>Ye#Rj6u@2QJS$W?BTU7nSA1hl54!ylMEqUHp1W)Ge9z3PxRru{>m z){vXEE`?wr7Zggnq$qAkF>5hC`4ca$K_fD}QR%j*GQ&c`H;LzKncnD@cQ~Ic;LYdS z(PMrSfu9LTeT#dA38ARXS6w5m7SM7Lrm zk-}VB#dk(Hc4~ba0CzvMK1ghQ@(sBu;r?5iY(tnbG%k7-BgBk3YNn~L<=ODmD)r5N zP%ndsnsu)!MR%|h5@*hh7s@~+N0Y1Q$IHc9zooNff#kqsufh0>S~w%8kuY!P^*-<= z2LPD40I)h*^FmM}Z>o(tvM1;0QV66rL<4m%YyNp%;Ofgv4p9V=|jAi=8 zHUNELmVq7h1n^9x7OaOl8BiE&DM&LF%#twljoeR4lRlGlqVkW?h(6iWkZ7bId|6Xas3d7EPIL1arEv%|QXM-M-lxK!lSirK31&5& zpikkrjUbR>Vqc=F>&@2OaqL8K3}?n{U3JIl_}9wONq^bneke^Z8>4G#VJ1#QMq)Q^ zM&tRyg-LhTr2t1v(L`m)cZ{Zyuz64m{l-Q;j%j15-M~&=_MW*&frx&@jQ4Z0%q_X6%Kw~ z_C|G&rZyWfWGj0P1TYyJoIYQICm|`>5D#v7mHm~yh-!(^ukiRaBN%Y@sU+ zTixb{_;P9MD7IMm`xQStZypNOx=m_7fLt(WxpysnQ@Y@E5lVI2mMspy(1`42$+%Xg;|cUe|n}TUnsm3t@i8 zhn6C97BI*V7z3|;7*y+Hd__8c`JOXsMXQndkyFS!hRZIpaQYBqn<2Ei@20VLmNT?k z*K$L)Xnf%}fCV+|ujB=mBE0$w^vekveH3OsP_E=CFJoT6+pZ!8X0tUe6MW7fy{jfK z8c8P(aTTdmVffWtlt?l|ReD#1uFKDV%;C>O+@5mFQP`|=_S5!1G3W!ot}n|hq%aR~ zPi8M{dHP@pd`@fl;!y$55c+p9dbvp66`+HlNl@@ppQ}ITE#l zx0xBws3ZAxtBcq#regvYn6uU)LL-szy{wZTLWh?3JW|f3W^_NY`lQ*v!=1#vELpcv zjeWM7b9k=uVE#mKVtC8jT=n%Isfv%JEh-A@?j^a||Z96C%K8PK>i5Tb{f` zdLTVKf3<67-}-}nX1gvP-f&-)y=NZe^C2w#NQpmY1kMI)lb1U{5Z8ds@6r!qTH|V& zD_atNJyQLZya04W5iDrm30Zcvk79k=({VFtkU{|15qnSJ>zI3}Wb_3GzF9dqyb}-{ z9##JJM@}~(jewC-Kj3IxQiZH?Xq|}Bjuq9rAqe56JC2|3xV%GHO?Ub07YD6Qq^l-xE@L&4^oc zoGdx=lDxIW)T6%0Jc+&4RFTo9ZHP&gV~gk33pPb$U!je@~Sxo#43ne2(+L z{zxn#w9WRc+rx9k&|Rn-yT&_D=P-(tQ{JqN$Fk>1G?}Y5n3J z&ssSjs|$VsU0&y-+<2-XcDX@2Q)c)1cXt~s)aTk+kbU_c0Ji)0z!_L{THUd3e52hN zm-N###C04si;1+>(2azuAx zB@eaARPHrIX)krb%2c+aSbOg^1S*A%Yf$OR$Ds>lyy_b(7M64$Qx!DenOD8K&ths& zEz|p_el6_%4x*9r#oExPyOkw(`!|Kg#6T9xe1;Wy|J^#{Yw$+#xs*(2 z&5HipV`y{I>5s6rnw7H!Ae>zeAsO5q5N~H8!m0rbusq4^mHgP;wa*`!4@o=2xs2PN zle51<&aqcFy2`jJF;sq`Hu_m9iT@V#?YfLqs>Fio>5wEv-+lbyu5i_DQJ$v+Cr zq#|v^GE;N1Z?7i9BHSC+zlX4T@QUoWp8QJzYJOvebqr zx|a5RMs^O^Iq~op*9uj`l0U;3Qiq7QO|UUWqI!5Lis6vue1-##O;+Pz>o23R?CZ84 z?Npb8f?aNRM$~Db6~Mu+j`yH#F3;rd^W=eH3QCn)f@uE5*+2iBGdEmZ0b6HyM;@*0 zUsbn39e#WM>6GKCAl1D^G}H}!)dBaGNeThCvCjBlYYdDtey3Q~Hy*^NiMd9DQCsxA?^O$!=_6< zkz#7FrFer-*+E5p!)9BT*j=E;4>;&DzyV7$CR^*6_a{2VT4QKhKXMD@Rw%1Y;cW_^|y& ztB3ulPqDP{nlPkJD+mk8PN*Ns&IVpC??yTm0=TuK=NcYMFt73%4!TLY23RD+^&J~7 zjMsdyRkx~xP&&ckG++PV_VxUvRBENnbZkyqc>H~Kn4|JE4hMX*+7q2S`vv9JRf9;q z`4%VzMXy;u*JQ5t`)Nlc2TQF7^6&>VED?(5ZXM2xl=~AxIz9C7yV0yT_IOo46-D&3!qLbgM3h8#j z7$&fy=bB@4Dr*ybu*NUZ+bU%d5KBBXIxD%_I(n|JC|LtRY7xsS*cEwu- zAWUz*Sl%J*es`$u(og1lacN>S*KhMxyr>p^jc4cS!)l#VBvAwW;1XQOo9!}Z^C7P2 z8`Cf1hOxJbfXh{%adp35J(>(J||bpmD4a3VLr&r)kuO4UKRWyjvW=O*;=lPEVTK zENN8!=IlSs3GcksznBL+(F@fEZ&0YpNk^2`AX)k(|9G?c!3k*~V6333rPB@lG!eoh z4J)(&Ko_K?oddh>hNAl6lrCZ4B}fK+kc7w86X|;3rVpgOt&6%&AKX_vzR4z4(#DJ| z2t@-uOnqxgNn0i}%A?hgE>?f6qYu`3d#z>=1#))c9SXllp+FrO)hh2V;q+w84!tdeG+CmW0x^3n>x8&h+RIGeVhWa zA0{K?q%%1ZjQq&sFObA|TB5Qfv9a4V@KR9Ca2OJPZ>l}Ma&vF$V(fHS(r*G)$wN4p->*?u&7<^It6>oFkF2Y)6-b z>R7$xjvxP{1-biqv0ZuH2vFDh0b)baPDSA2$?r}U#BOJGoH$YT=fpj#;BGHP)AhSE zq*RR@i_IaOP%F|(S=05~(jq0+EYUW%v(cU6kb9u|GaRnl-k&>nEDgnvoLW}l=^Cq;l7pRyk)z4 zVF(n-P0FjhpD9VtaCbF{F5e+EXbf5CDHUvQi6Ey<*$ABT#Q>t2xLI(JEe({>(rEs} zmh0wDVY@Fh2rbx#3r#}Uc4~iw76K;Q@XxHy+8oz-Lfq_SMXU_^HzsASMAy4Y=m`L~ zA=g1cuMQhEoM>@#C0Z}%572g(2t2v3?5~7NbZwO+e13avq7(XW*`X&OCwBodc1QWi zgOwxj172^SKsn*4&4VFl61o)1g$+zuVBPR1f@5HI)nuDm!a4^483lOtJLlt_lE!g! z`Ft~6n!mI~^}uRm7jp}ifqS{)>3(^%_Uccp4Jcj~rMAd#{nIV(0YWg!s|^JvHJ;t= z=Q1t0&wKLH(<3*T>4|VJSu`it1|+=<<-I<%gBU-vU&<+vVkmuV-IzswA2p-&fKneZ~KiI`So0fL*avkLg2Ypplj^}lC zEJj?wU(h6#h-}NJTqH4!)ze+WV((pslUdv`bYls^mYpgz3z#D}5NDIJ<)dXO^7Kd_gkbD196ny>1dX(rSt8i3R(&x43 zr_d*Cch%PF;^c;L5&%zkK=_b~j!B<1>3PJ_EU=r`?g~{yG$fETy5hdoY81?8L{W|+GMUzyjc>-h#s{9GXF*sOw zSn!GaFD`WpzP9vD!yZ_W#8a9?qB+sXnsfI?AQ{@>!PShOm$; znzGUl7bAg;l|}1Ky2gJ?{EMR(HRHB9@EjNKT`X}Q|q2qo|B^PU_F_O zQ3a9EbOxBU{f!u%Y8B5@Y$gi0QR%IPk`?-m(n5hK81v5(qYq=)pqhlt%Q-RdqM#B` zKT9>Tw^VBTUPD3)(qG7YM8J8qrwHPjN_vz3SaSBakJOaU;Ykik?pDb0w#!bjwBka@ zVJ5l~1w8Z<&x?*vAv2kVJygGJ6F-h_Rt0nd_==H-fQ&|)sWQH!aq(xTSA3sRzKn@`i)YDjmz@9#WLN5cjsNPz8a2gF+D%Oz z<2X`G|2!&nDQlY7$#AGT8}+M8@8!kU=Q6quSUn>okbBkLFQt;!?9YSyNA}m!au4;Y zXk(0Ydyn%zL4m4XJcD(+(1{LewrKl~L>}sLaw>x6A_T#%;G1hFODCmrV%~sP#k=8j z)y^~xWot%iA}enhN!VnUIa%Et$gF9ohjHJ6_pkhmj?72+?M22SMRlcjLzfr9PuO}g zBf+n7*-_TN5^?_JsL@Jfg^N)Rz%eX@f5wam1oijC{M>qPga6(p)uPl`C2#r3>T@Ts zd|iMNeAz?o?nz%Y1_jgO&^^eLqWkzmM%=Z~Gk_L)vJ(K1dXZn+S(ME5(>yqrhLaj( zn+qx+Py*4S+2)9qXPXaaZVSIKa}J}d5dyO)Vwp+3^bf6b-lk#MB;q4*1SpOB(#-H+ zF`}3eGYjNR6kDL*>EpR!Jwefa--jR0eR_iy>=|EC&n!i_jzq*DFmSw>#W|y87>-2A z`|MO2Y?fqu+(wuUaF-Of(1Z(*LaXMHeiXrNlvn;L6RMk8NPE^_O$E6%VzATOQAbt? z2G~fb3YVEObw~<^Q4tXjyv8L=?+b@x1ErWEi`CQ~SZ_>NDap>BD3Ws$d&H>Z{ktPn zUpSp8{bO)Y4$sN8O07YfJluw;tmhIlLwU#EC}i@^TMmowB=e*(k%w!JYBZ+LlEkJm z{`LO>(P4`mR)e-HkRY$ETW^D=D*_^Rm}Q=wVMVW^tN%KfXpr^#(c-JHp@S6&qXO@T zP!B1#(Km0pzdI|L1t1Y<&~_4+QE$*kVpJK(d1?8YtrH=JkRla@yD>n&VzinxBEihy z-i7l9Zh@_SZ6a)bs(mII_vjLH>Dr!&K$5*@x+p;xHAUNei-=vh@rtKcD5^#Kq;pEi zE+DW`^_#q2Mz(_y)3#r}ON56A_y`2AuI#e36DKUEyyvVCf;6J{Fly*f(A_Oz?<#eu ziQ&|oqkHxpVUgr$FwdmBB@vvPU^)|eZz`TvvuT0Fgr}>y8`1r}Xqg*vSqHQoPNJ5W zFUAuQ`VD;?f_grLbfIy9e>LPQd+&3vt`=Ti6pAm38y(81CInwlj6}r2fsl{8YYs;q zUM2u#l1^t1Tz!jN89x3F-7HPI?LaE+mQ)anE#O^yf2;&kJCJ^W#rsSVUKR=w;d^4B z+`E71^Qd+4FvD0oTsOQi!i@WkwXC3*3Wq2Yr#&gx^JO{H1?8pM1)YK$lu{KFA`0=A z(Cf13yGl30d%JnPWQtGNOnkYX;%^v&b3+-?mWlmWX(rh7)3<3sM5n7yOKZ0;bp2F&6Ml0miu&`EF{W?bGAH8=Qvh1Y2IX~C{T+8U zya@ij1Jc1^r&V#9Oo1*3J;gw$2NqGa3G>{Mh4i1g)SJUR**7u+D!IziAIgS!CXJ}v z$U|cls^pAV_Pav(PVdXO`6QGzlhdg0mqfr2TVSc*G!jf`J~gg z#1rA~-zXW$AH>74geTrhf4{^_mr8swz#a}-(}yUPV97xj2c!cZxSzjRvX3PCP7SAx zQm?#wBt~}kEL?WQW3Zej4QJP*`ROuJhAD9NTWZT6#r^UTv)%Sgd_uvK@uqF2s}Chc zH80CK2mW-$sjUDe-zST5H{F<(t1X@FsbY9$4fHZdKbn%~QG^eY-i`Vab$Q${VV=z# zL-$)WkZZQ<6`Zd~sejsR3&Hk7xjFNDwA0jXQkMDW41S=XP}GcFd{W~I`~t$iEPaO?D3SgjYk&;bSa`27kKurL$BUEZBB1E{XP2Jy zDAPzt`$&V5VGb_Wfc7|+uw?b~d2_kYUyXnF)FXGM@V!6Une2rE6a^>k-$Ku1J6SK; zcKDpOirS^(Cp67x&$7tQv*6FOI)Wl6xUoiG^^Gc}BO$o~r4uB+wv_JTd%MWlD!YWE zdrr>J6K&o_Qf4C4rqI|}7o4&u!u5j7pP{DDq-%T}SER+s&OZV%4;9&BS*Xp8D*Ikn zLWnbicaIepS#D)0bUap7-faOWvZgTvp&$ZFN}duE7RSX@|>BD!?lF!M(M_XtKf_-iMiwmr0eXh+uYel+yDxrh| z-kQfr!z&T8X!*DoX5_`MJT&n#j|fY4xdQ#tSiJ{9A@{Z>xU^fl)DhsNT;??4qFr`R zN7&kjwT{N$kKXC<1Lim6t?jF=GT~6QflHc-+opT`k(-e{RR>Gt2cgqiC=1pCDVlff zDg;^5Nekz?UL^@`0aJ~SQ0W`%FYOrXzpo@fmR)L#=d#jV?#3SS3(wDuxa27<_l6C5 z7ng!3ul{RO%BKNqTu1$HU=b!8>QQjoOK($U)R(%8nhy)F4*GDEd$AFE=)1UZ^Hr=X zZx25va=ikf-wT=w9@O>w>(==GOZN|>z9$ausH;K`2s!cBl>@eash=YPWfs(*0@vZ^ zjarJh)+N3O5T}|UhxQb?Za?!3ka}VwmRpetyE4>uMi0U!BP~@UU3F>XcK=+h7A-10 z9fm>uI7beLicyW3D77)Roo;nIcO?qig)GUla-m5>VzKnQ;n1QnCvFI2k+{wae-QQZ!4lH7hMk1M1%*> z0cZC2C8}9Pd*kqRiWqXrA6H2j;)9Q7Nw%%FvzG)9*oWF<>feAHQum{Ih5z?U9)5;a zDDKbZzz${~cdYOQ_P>*g$vo^^fIXJTR3IQ@=fh(37R7U-yYTo&&gg!S#HO_BG?Tk2 zLY%fne`a33QDAP_1O84%nfR~b4da*O1#`;z$YX@N8q=S-HIS?20$4^P?q)0JtrZM+ zyL^J)bD#lHg~xtAv0gzO3BN^wJ;fhlw^HMwjgt^xQE2=M%>_erkMmudCAg_)j`P*(vz)`W zP=)BXT2r!VxzT!!-qZ03NCvvtZ#{@qm8-fub%$^idduxm%e>yai6rydA> z$&8Tv))6X;Yi>cHytVnct~itCR<-k<&4hsQOKbI&-w+%9=oo>RGxX z5zN%vwExtva=j99foIKw+TZwZ3Hry$Zy*3j+-oSwILWc6j^Lv#&5amKLMRIjm-&P7 zt*C>q>bDT3wEAE|TLmXOk5s1-;=%WAfa_rc<7FpOsp;`r_{G{KZ2;g%3RkJ#Hq2mB$ zAE?CIOlRJFX?_$BT2e2mBLi5z-7Rtk)r-c-$4UCSs8N&Y9&aMpvav9@$GwzevMsCq zT)G~%EF8j7&&Uv`4j#3&IjV@j%d3 zR_BTnjt-Yl&)QF_zrjzKZk+af0;(HG8TS2^rD3LCxm{e%Z0CoowLX73$Xu~McPkYF zg=l`nsN%pcT7=IWJ~wywdoRx+Q0H&uj8FN+&y%%}-bijJH9@+lkH8z1bX{L3y+0%X zHaNH7Rg-tzfUkxj-KgZuvruFsC2t6BZdPGT?;bwU-mEQYJFGy{pK~!f@dltc|3v9H z{N2k1JRsZx`S*-2hgPuw^pWyLP15}?O->r$Npj6n+o69jR%$+>*Iio*TT;T2n{|@p zu1^5QOm#BTjBRG{31jt?DgQpD06GqiDP60TVflg(P7>Em>QHvrOpF4WHx| zk0{Y%e+UW|a_PR_uWHq{U--6HOpAd#^;}z0Ahjd>>-fu6E9shH@fAb6HgUEXRR!ZPsA@l_W%MDoLw6g=_{Eabhw&ma3zQ$k zdcpPxeWZ@$Dq3l|zptt~EY*g7qio`LKaZT@`Mv^>++CyJRpVOG;q8wl@izrRTZD5T zca?g2bu^Z|@yml~f$C(mHJ*+uiI-iV*VYX7r^3Bxtj z-);*TtQAb^PzRoHs>Xduflsdg`SN^sI4Btke)SK7x`^xnSy~-aazJ`{tT=y}sirgB z6;9+hQ5Aj*jVC{+!n87}xre*#biaIvkjZ+B6^Bp31R6Tk6lfH39Qfmt90ryUFtm}1 zOy+nzukaOG0XT>Q7LevZ1&#?LoN}VaLbyUIPN5-Q9b1ILL6=lADUSu#(v4QtjZq+PBUQ zTfsNa4&%(Yk2-q0y2H*YSX*i(RAQ~f)ziNCmrkhvNl0uo6>01LBmr@?Pt<_n=Ai9-YAD>B+?(=MhusNQ{xT>2k5m5=(#h%bkpIU|<8h>S{bd z6Zn8!X%XFs|JxX~da_yv4ru8l>-~>+i#-0r@ZWNHVveQo+w!h!pIYV(?G63VY+uBS zKz6gTFdd?l-ywQwO7o=fga9F+VU*jY*GQAJofCAby~jCP?b^$9bB(Yyjs$Kr%a^Y4 zuL`AcS*PF}_>8&9`})uIy`|$?C#KfIKF6Vqi<#n%No)y0X zRi=R{pu~s`RFk<=I983eVWEcEf+VJ5avdi8(aDQv;5+hA@{1@QRnOP}1@kHGrx3k&~A@xrEGsAtNxF!i)2T-(uifnyA zVlKEiWffWdClyh)uP3hNZ7J-Uaf$0@^RiDDFh|2!*>|xGnK1_C^ZX6HoN^SVDC^aK zeX+;&?!v_Nek1tcWvOwN83M(bJ}xNv-KCwL{hfS*zdNU>_+erXeu{e9At z)VKzw*@uK={ho=aJl}*01!iKSJovuz9q*4}bs2*?1;&NNuh|o5%A;KDF(UN1+0_Fj z3C4HoOY~R1+V?cweLTW;9VlM^6zXD+1Q2K{_@!ZO8$U|oeh`5g*;d#>I4U(lGU3Yg zuXcW;g!ZJeVD61wWY<=!P+*=C%}ru;5fwzWh*sH=_3qe`%du5+v{FSE`h!`(REb&9 zB!kIlS0j$q350fPC7N;r7=wU7n=XF&a3p2u^(;bgQuGPL;)TUT`>RT<&O~}m03g#6 z7>8VU^{u@F6i73&;-8f^&91*(H=Um70phHMtq+G_WV)G&9Z=PIDEp?0rH*i=#}Vj6 zBVt0QV&WZWPjgmGvmasHt`4j9Ad5NqdLk8X?df@T+CJmhZSd%Hx@jX z#2NSHp9MML{ORAFv;bOBSMi5U2p$N3%el*s-53Voxcoev{BauU344dJUXzv3Ia?Oc z0bFF!i5vGQF)f;T#?L_pRz%o+4f(uaqy_Da$sEVNMJQzsI`VHGuH$NwPlY^neVcZ~ z@%bENGOF|u(Resy7K|_ruXV3~f&i_xK&?fnLGc?%NO2blcQZ0Bao4J#v-gWw1mb>E2f*5Pdsx3!r~+ z4m7Nz9KAUnXnN1_k05Yg71eyqdY#n3%n*+rfb+K!uk&(AT2gx#N=d~OJ0bqlo)gAf zGY^5ft4PBlfxl5zH%e&JqDFT5eejTaU}(1`no~Ap(}wBDsGfx+1DDfuX{}FQMgl{% zE50}aJp)lf`1qhx#FgtG!drOF7Uo$dxH8t<4830KAky3qonJxJ?-q+ov@?!XK$iU( zs9@EJ31I;$9p~Avs_&mY8RRS?oJ*s`z9*`VQid9pz1QK77|zrkD~d_0?Nr~0r>W4N zBJ4BeWk-n_aj(Vv*Ymks8h=j6i!h9)IgTchg^Ag={%lXwrkl=~CZt1{_2u za5>_aGvj#O!-=sGTMx*arKIW?ORPqMssrQlOl{m- zh4o*M88|j{OZ=*x?c5)Qzf-ho)>%~S*_v#MB1ZD&vi6vzPI0Vv@(u}!8J33jv`OM4 zCl9>yhn(ep4Pd9PVYx0QYtqvw5*e{B_kY#;S)&|khrXhMYrEu&K7a8#WkuMYg0q@u z@C|hT84+4Umcctos|-gbZS zHe(lJ+@-vw6-oORee@)Gyd!OlQWX47hO6Sdj=57?=8Fs)W{PDVb~r%gvBm4P*4#ae zB3lVsz+KjnS&}$cps8^2zW{|<166S+2;TJXE!maqCb1mnF^tAB4OUTJp~PQ?xV3eZ z33Ie5Ljq0l)N=j;%wZJvU`}{bm_n{J1)>*;c#pI@Ru3<;CMt$~J#ARNZgvh^IAji2(+u~M-W+(>lE6xX7-iiVC?Y-iocgZPJvEe#poKB0Nz zejwLPd#B&90;gCF6>|TMp6Z_G{99Km>w6VcS>Bj9T-v}CRw>MJ%OD?T6qD)?q?rA1 z?qMxCviM7-^xXuUnS5;|?;E>JNc!$lGxKA9%fRLVW2(KVtJG<0XmS+QdR{Fm7N*~z zu=z+?!~Wn39^{PfQaF-D_B@xM-TEvUL7imr9ej%hb?kQ{qD8OeM}|(-9;gCx7QSX| zB_)QB6*nooV3H|dO66K=_t6TVtwyL1n9*fz%?(cBMejv(XzK-OjXr=j0nrCs%(^3G$hG>kZufn7t^lwF7Q zJ>Gk(6h^(_62B2tcM3KVSYh}}eHzN1<5@_1pT|LUWCuf4;JoV>(MM1Tnjv@Y(U#4X zhVufw#8rJy#k)F&616-ySV85OE_u+G>L-Esd5CNDDU)c1tm?I7bii~iWG~yCY5rp~ zk~}T9OrF|8BDTJDio@4z{BT6YkzI8WSpd}a zd`}W(uq?##bN0e)Sp+*>St&IL8%_Q_ksJcaXfAfd&V5#6aPj%~=CBXEDfAw5DZamskbzRXT-7HsnUB=k(axcI{I_Wx7pw`O0nQ=CN{F;Qy+uh$f>K;MQ4^ z;`^<)#^x#TxMJLJTw_sM8GYBl+Lv6IZ}}Ehqpii!;5lFDa%dZ9vozQPi64;*yJ(%t zK?HR$kr*V~YyX0!gu*Xn#W-O~r%eK-cs%3)R7!I^n?GhmM`6O=w3#6Jl3p+AemJDLrg7@>9|Rrib;U|3c7{Y3Jck^W+k%w?XAIv$9BVL36a4!fzc%sYtBw^;rLgL2%J`q_XkiTKrJpKtwxAGMb9Ch2Oce5 zC3ce=RHQne?$BaYxCQp;{;kH6KcRQ(xM=6JN}17=Y7cG}bGAk|k<`W2u$*dqRC;yn zFQ$2Irg5jsWS*onh#K$9=WVNsdKGq`$jeLoGET(mJ*I21eh_mn3jA> zE_bgapzVSq2Cf0U{%%Rg1$AU#l`OZML4O?q4Q3ZnnUqv_@1!|M2dI^}{+Oz$LETg< z@OyQ>T+4Skx3)O)Tig)qX6Ob zx1Y2X`u#frA-7ydsFI{X%s{)|yOFppxWEYOpUJ&* zJ-Tdp|BaA#1i+5mCmH~xH5bU4S)O_Z2zzLB{x!mjz8ZkYl}YQ!RcjsH^Zpq7W#<$P zLHwJvSUoV6h+K$;(SO_)XX_DLXuX_F5r&bXVrMu!`_1shv+dGt`$e*7Nm_DJ$Y@MlfY9R9KF6rJT z93?l2FwKFI{T`~OA8@I$*MJ_ce`kj$s&^k3ke^x)pZH@Qf1kwPsZTIGS?6K1l_!>9 zC*}Q*sk01=s_oh^3`5sY(k&s~-3TZlE!|4jfJiq2($YwSbPLGPHGs4TNDbZHUEhA* zU*B(z0S;!*X5VXF*Lg}4C3k#3)HIh|r%~MYR$SJ*%5leToO?&0NJOWmvqF4OnBVzd z;}gKcR-B$!vuXDEJFH;6$T+fWs>j_%k+)TbnGaV;y^(b-$F;vy=UsQlHLS0p8T~Q= zanGBVj&!=R9wBcIp1H%|$nE299bao|*S#@u5e%4f$CKWd3SGX?S$$lsn6-A1Q*$Ld z#1!s7!(y;nx_Jm@Yx9efbp_mDaVFL8M|c;zGDFi&eU`l+@|&9v>1-7nI0rQ-JpR&cQZT7GRj8(QSo%X$Zw4C_z8nw6L@6cQ7`fic1IcHwq z{vw9^1Ng3IDLAjLsFt@%9FO@HvEXunm@aEPPH3mzohsk&YTiir9*4t z%dK^%0OiPVT`l5Fpil}kn(d?UQX$iy^xBo$Yx>mq=~XLj!6zP7OTJw zhN`bJP8x8~w8l79i^Hgn`VxX*-ogAC=s89yo2p%|)}oXeC+s+DPaZdse*M?E>Fjm? zG@}_i(54i9a6INCryA|!!`!TYY4+#w(u6-Jd1WY(zuK;DFhQCt>_FGIXblUDp&7`H zDAV%A2&B~fAFcE?Nt*eQ-@fR<8KS4imF0V)b|5Q!ayQ_V*J@5$U!Mi=O%()a;qMD1B#y{>eDnx(E422m- z-#W`8JV$*u`8&*P#pxkOgXWUeeJwwzveyZAo4f)v1E(*As>(;KE~Se@PlBr;a(eyY z3xF*X13}QZ5MPD<8aeHx3Ix5zOdlS<31}_^p+C%Mk~%0k%!A##SrSU;jWvSTi#Cn$ z)_y*pV3FB&Z`xwx-PTwYw(bEj8@~mMN>?58h;6=dg|9Pg{&gVJ>3*ali1P%-wi{mY zUj?!ZZ_k(rSMiBh|0i~=o<>?Y)q<3t#4q$?BhNL-eLO$&#V^gjP=K0ym#G=<*q7r% zsfp;-HlwrhJx!DWGw1U76-jHnLT~))e#5$9U*usbCEoF0__?u%KqQyiYy2k(t$x#2 zhNE}K-o}v`Y*9+h1IY@?Q@q?% zqzJPyC@J(7rqF5^AusP^yAA;6fn7?!JZ^x6OCx0z%nTc@yVnM`S|lP6DE4t>_(V=A z8BvF5RLNUFeJ9sJd0J)_+Q#+SX#j1UKG?N_L0B_)2f}0$(qCSU@n&>n*|C`Z{nuM| zFDT1IlzcZ^<@rIc*34&)&rSpo&klDKDR)8*lZeeD>RF=FuD)3(WF7Q#A!Hqc_ZPT1 z+G)$esDP((%(FV_dcVyV+*1{|1W8EUYZ$|99Q+#8iFQy%Z*CGHVeONSXPVjNs{SwR zPKR<#(V=cJkZc%{setSm>`)cdq|?U)Tnk=pbDgv$45U!@TL|?WeQ-18;_lB$kJ7zw zbX>waqdg2*ZP_qLYd9lljV7H0Zn8TUg4NRT#A96~)q*iwjkFnr~{kCIhO&12z5&*dfw668aoiDcQHC4`69t07+_s7n$ zU;WRg;(wPZ=#Gce-;Xn`>}Ez5h|k0WEp!no(Mali&Vm@A*_jVi3mh9!!{7dtYdVaXT#F4v92B$)&z-qrqi z@FI$%@IMlDoU47aw2NW29Z5Ze& zkeGjgUC2Zs=ROtx4@PwOifF!m(JP@jI=W0-1hT*iFfWaIU|4V_q=yVLVApkeSgMlU z+dJa_>4VQi%FhD+RRtRfjv4w$m6ezvW_qPFIiP_}gavQ^RxPW0#v0e(WZ6`Dni>j= zem&>q;7WakdcA7AfkpH3jyD~%H>aeaOiPFpRo9?1jA%VxzY|d!x?V!r-Yg~XVGqjW z{r*e_;z@K)o&#_djv_fyKWXG&Yn=(qyE}n2iGGg0^XJ+vDX&3OwE2E#Jmo}N(UF`v z(a6#UTWiYuD;UETk2w>HC(sAlQPF&(#>)-LN-O=HnhE+i{j8tUGqRCLraAz3Aumy5 zq#EF3!6{i?0(uiFbmnJzIxS2=3or2Vk~mPOUF&(jegu?-%yH0ZzcK!VxZlsWl*Q3A zIV5lrkJ}K}PmWgCJyHlv5?N#9k4)`mwD6CV#e19z4T^uE$eOKlsYDhr#a6DJNN}b$ z6*{+f{5b zvOUdurj{|5+R+L&wYP}HUjkxqF>l@LiSm5#I!lN{%y1q~+x#{|SY;Rfe4xpJCLX^E z&J`hFgWAeTB9fNdGzQP7c`z08+>Src>>6Wre;_WDlat%x;p1 ztqHN~)S}}e6;6?U1<`xk8%Rs%y!wg-%p2^SjmmQ1-I`vpLih!7vEG0c@Sq4x|B#{F z;Qm_I1~t(7Cs!d9L$cWdl#v~Efk!HbP7Zo{242Ggq zsZ9BE&H-3N+;=yxafQ!C7$JP2108^#xhzkK5T09}B;*sYfq@OjjMDhcAMU7& zWbCU4R_8F^+K-jw&pVwgvR5NXSU>eHODDT8c;9?ICI=6m@oulXJ=wKuY8qI`RH8KX zWQ%OIM359`dex@|KuMl$uu*cYdjiE=blB+rtdOajKV)EC74nX%-jjj|rTcEQ@oH&i z-5z;9imm>}r{~*MczTN!pF2^K{F9V4gnVb+-+Ib*|)x{0ecV5Tg z-C@^N33i?qKX&)Si`nK$jv5~IHREFw=0j8^2Wvk(ItHHc4v5&ET#szoIu9CfEDkowe)=o1^Xc5zo*yGlTAPo{1SjSz z2xlNO*VPJ5{!6xG;7VUv_tZTN?0xntlox8m^wY@Dv2ArZ@E1^e|{sE-~o52f5YZ8KkPB zcQc02M;M2~Ui>VS9z`d?YRkxBObLQHwwj@?rS{a~e70U-NRTbkV~hA{;`&r_?C;G< zJzK0cim%%t%EBTu>`gmuEr?Lv3DrpCQd$fw4NwhMRw*)$fXc6+9zB(Y>@<|K)|ecm zVUDZ6p_M68%I^H@!%j`xK*+QpgwiM~ZApGgmE}31{8%UvU*w%~$7z?_hHl|1I{B{A z#8giQKD0tQ-wBEw_Dkuly~yZK*8?&?vEz_9=5)A^C5?Vu{r!lbW<}9BPggD_VJ+v_ z9zPS?P}TquVaa&ugTJ?tnWH6j*{^qb;hU`f5m4!Z?(d`-PtLDI#_FPLagl}OoPCVB ze_d8gIz8sOW9Z2%pQd3)v$>RyDGxVN{mihamx(i*X`m=~{7rYxy2P@{n;5(Dem2+& zSnyp9xf@@9{}@DmKJ6`vu-~+R3!~99U7VZK1Y2-IVw5XVfOx-;d6& zlgY@(h~HRmNazG;?|b-2J^C#T$NIx!sQGd;5(2{9CD;zfDD4OYtwLBKlh7H4Tr+|0u;y70KFYC(}4DpCi(hJ(A$~(@1!rbR8bzo>i5w;D?K(;QUK^Bd1Ne z$`G(kNQ-gjn!^V+cA&s<+?><@tJ^!RLue9i)$vpj3@bXJJ@1Q+5J@v{hqz50s=1`f z2WE}hTuAaRpxmoCcTA*S3^Vf{c#7nl0KBTT4@eU-t6likeH3+rrUWukP_Oj+3);-{Te8Yde{Z z62Q}>a*4aFUXpg(Eth8H&RDl{SI<3($Qs-6GdX?Pte(M6e=nHE1{&IwlFr<9ug5LF zWkz}Z6SP6=hHtTIi@gMNPMW^2+dcottvy&es7T|LeRye`q*gu~zY~yH1M2sahj=Rb z?ld#H8~ln8*GwBpX(oue`GM?g2WgxFC-QEA4kkrAx3<1lyn|7b*(SN%z4 zP0KUR{Ct-3WsN1b&I7Z~X+Gnwx0C)tpN>DJ*}PtC`cXM&Rv)lM@!ZKTNf+Jp6UmtjOcLVaO`Eb;M?La=V4>Xv^IXd zvm*b()gz8qx&4JtDvsEh?19JD%~N$TuC=B`y;}1NWR0`qYOvRy zD#7qaZ_*ln%+ABIZnL|Z)xvM$`hx$$h?bBASR}Pd%1z2Ym*11^5-C^L#LqR=;@t$Y zbuC54U`_$vA(OVbK-`*3({7g*%%6ntb~-w)<>!uTz9)oPbiAUoRYX0?C2s`lZ0a?^ zP*l)*TE-8jR4J|865_SLS8B3Aj!qA-ByEG?{x-FE`vVlvf8)M9&RE2$Pp^9mTbxEd zJ2ejo3Jv5%xde&@iBIrSefG2n-W4)EZVk$fwmdX==tlxX2KVmkkG}FAv$hVeQ;Zkl zCLG^vp-4#Qngl%EY9rquh~65W55aP=eISYu^vSK3-qf3f+6_wxrVlsTj$;0$>U{Bh-<$u)bKB8S)Q6cFE3 z^zGZf5_P<5C^0TL8a~tW*32|W-VT2M(1x+a*7;YXG2A0JLb-8wc^}vCR($+5X!I5O z7}&RV`VtAdYUVWlTXcOWOdbnv;t&K|w2PmL_&$Cr+A-9tnwfzwiN5iyEQ_$}5UOkh zybm2fRGqL%G=Nb#!&-OVKdjt@ToyIAfSPGXgYHw0*Os#tVV}JVV)U3g5$U>5?#Pz z;;9h~JLgCP=SUv9^k&aSvQ8;7Ph!CZ=YMsCcNAa5hHG(4v*^qx@Dwuq33nO;kOJ*7 z*Jem-0k&e%3jb7Qw_2)*q3!|XH5s3OecUn#%}`+1+~BO&Bl+(vM=7sUE*aIF>VCGU zvdSgE!dW0R+)y4Ht2;91c)R{QO$MNW(Owvx%Qh7CYmnIYiUC3ZaUZHc3NcomqXi)2 z&xGiVVTE|+Typ$ssa|)iCAmDc!1*AG$Gq_%W+q`R%FhXe$DdmGK4;+wSbnWiHU~r` zI$cbD0GcWa_HZD7j>$nL9_=wkL3K90u2_j*D9XJS&xgiZeOA0*_us$DX^-(`*Lu7j zSrh}|u`hT*8_Ch^p2*VJZaU(@lSv z{^vViZ{jt!z7f`Ks+nFjr^oNnm&B1Id7Upnw(3T%QV)dlzfaRWv}uqWBa^ZwJ12@)v9iQqAN`3UkGOon`Y0W?f-a=jC6o&o^6fr zceaakXcm=0*uamDaVc_w=9g4%1V~nf+wGy6~WVB1sWKSkz_p zq`svz2M>Vu^Irz0VFpcB`Hx7yyv7O`ys(AW4tGY4s|kLRJS=anzb(g9BAUbPQ+X07h0dpg67>>?~cE@@fq@bT0wHPuw@jwM-;XZ`^w? zq$Z-OSyJFga|B|cpB)9Qjk!A$LazA-&^VxnT|S$H$6@7olJ0}sChA+*mP1W-#; zx854q(O^EmlkjF+W&uC&Oh-q#a{juFvuL!zPi<}jc>eo5Fwc@VEG6?VLX%GPINZW(y^lhFpFH2Ej>lJco#&4H?IV-YR(OO^XwO6EbBJ!%jlT>0i zHL=zVvAGaxK$-Z4_`hOsl?&th`+vX`A9Jhvs;2j@i`fzXu;<$jrm@Omzj=4eZ^r6z z=;$#z2zoB$1;{{7b}GO?B9O3DXUcj`IF)Vjr=;rdXJura$ILm^V3R$>19i$f@9M4( zRQ}EM#ww-*Uw3#9Fps-ZSI`_WDt++ai`4Vs+7p0Vduq+1g`CklI))c0krHwS_hf8e ztG}N3cBts_K=nDi$z0x*=^ttuwpS|`496i93{CreUzP7MOF0)uRL5BQ)>P5xmwd8o z${M$U_5A$sD8&WOmy)ejpntY_8OgyD}zB)}k(xrDihv(efJ z$`yds+Ov<^wFohciOpx4H4lOb^kkwlEND{Kz!#^eKUw?!FoEJ&<_5?E0mZ zA3rEm?A+kuWnqDc5BC9yev~=KdM0Xe>|czgTi%2#b5 zh%lcgpe7M8N-FPaA5m-gu`rQJq2SxYSl1&FXr%f|AMXc4&pU!K1|ZFVD?y{e@zcL2 zddwKzxws~e&HG?e2JuHqN5NsD>ps|#xY`dn7}L47s!JIc%7&5lNWPzDyD#dvYvmWx_=EN$nxQ`*Itml|S@VZK;bddVe-Tl<$=LpJk_9L+ z53+y-`Jw&gSlnv}=P8mHAwBXT#=KTSA`(~ZsU_na8QLTPue%W5^^Gck#s5cF{Z6`D z0~yL_iYQ`mW(ceE)9NVE4IU1joKuxSD8+bdK+50uGO1Qr=ydS?TGrN}t3HbbfEuvR z(WjJH>bNDAWTP*^J4I1ktJAvszsr~sn-JJr)HP)z-m?e)^0mK1-SagL z6y+suf|Fws$)T_{GcdF{nvVsm&2GJbly=IGM4$p?TPNs;4@PgM=^Uq3$Pa(zjqF_{ zS^G9QR{}Bkp z#uhAFbf*ual`L>=<#|($BR7McF*kth8#{^1`Yx<=`3zzBHZ3=$dO_dG&FV2HuB zRum}al+^uNMwj1h$-xQ(XjRL9GL=z(GsNtL*-elds*c^c`=JhlqZY4-_{xu*G7^* zh@=&tlz2R7qujT;DT}aNB5SbaeyLFBC)F9*j=wIk^16_km2#yC-vlGqRVpnBxJ`yFeb9FXBMKtL#UsT} zlf@TBRykr;WE)5$j1ToC=3kmeYAI^TUa4xo`Yn?}n2HjrPu|dn-1FnPS zZ->r>Dpoi7KHj@m2lxH$-E$+)Z{>fgXO?SrSZ03t{(IQ3h~(^bqIB5U*;dkJy+`@Dyc9b5ikj_Se@_!oS>*zFH4rAMdjw`7szF?f0i7S@OqAt>(omTaP0;kl{d#r&4 zB+Mh(_I7nl#^f{-@#6;D;4M2n5*x9Kne&f&VrAVtbd<)kwSi3BqV7N!-Id^Q=q`UH z_Z1_UXo(-Nh1c`ZB@^i(YsLEH=IHsEKuE`5j<-Q={s@p9k_Ekih5CCC=iEr1xSqV5JxW{gMi#A^Kx1hSu3isflUe@@@ES8ilA++N+s%}pa&OE@QHr~>0 zQo16bl82FZAOg*cckdwUpDsp8y_Nj;RZr(9;KcmLDOHoFC5XpQ zt%?$RobmqZSm#-4hw8O_Olz36a`GtgN`6RnC)L#7;yszhnYH%UytH=`691IFFJ8%+ zAlgEZkBUAH=mpOj+M^QESE`VeFs&waxk>%j(Wue#+SVUB^Q|L)EQz5W-{@wsz(Bj= zi+naI5As+}J)7u$t`tX$t*^xRq+yWRMYSJ$EhE7_tUNOy-TO(V9xJBkSUPdVj?H=^ za4x5T_Qis`W?AARlkAv-MXL;UrRQC|b8E{}E_Y`E$u_sy8)^;Qvj`1eZT8c^ z{@bq3iGSpOBy37CjhrM4vZmSCM#u-_JDzYL!gtfanQ~ufRK|LY8bjYblo0JLUxG?E zXuLOYUO8X6dE9r1+T8uGnVWMzH0hkkRLNx}{~muj9+;6Mj{#eoWQ{O38&LKhjm%-x z8*{JvQ8L=%{VJ~j>h!T@0+RgM4s~y}0fl)G-1$5{T3!$q^pI=@A)O*zVY4zf)&P9T&v6Ls>- zLBBsV<3#AVFUr-UY+NGJw{GwsW1d#oc=A?kt~*tpiwV<(bLl+vfz4^ZlK*ZjS~bPn z+o&nJKs+VPK#6L>Z0cWA%q0e0-))l%1EV+5&G2s{y9_Dxl>jB4>Tru9s*hY%{miIq zik-ZXMp;V0Fcs;~-=~%h$(nJg%=MQ8ev((vqr4iWK#pADlkXf><+Sx9+~7*Bv;)Q> zZlV6Yzx&DCW|?RLK=sX)C`XAemmV>En&Q59jZS%z$+a|D`lJ*;=*Jxt;E;WD^x3y& z#Kjwbs7nr4@Z`Zqo-*#78+&ami+eHQSD9?CgHG?L!loElDkGq(2k;VeHqk=*r%!$Z zviiH6+<*bM;&Fms2V3n#_sOIalPOL~*Dy+xJe{>{T`@oz+(3k&gp`(Qs(za(ZA)zc)9LLWN*z*QCW zPA1i)N|+;hQxo4H`-0zMzcpVLVlmAbe1uZnOdL%^Wp% zPX;!W1*mOTHPmcBBwib36+)9BW9^lMb*=G&3Y^*Wz~Po~Qk&LWoT#K$fwxBHkloh|IhJ`?i`_@$51KS>HVi zcp&jHu(a=6Mn6&^2UxI`N~zS_a$p_Nz>bxssNCA;e^#_+yZjgO|BUh#Kdc-cJ4r3`v&6-w26!+f6fsA$ub#_p8|(3g(W;_&@Ao$!sVirn1Q{xJJX z0gf0w$>WulJVO*+rvzE{w$8w(Iu$vDY_)edv25v^rsE2W18Hd;M>GwsZ|_CKdxFO&K0oogSz ze8MePp|HI!j8r3v)2%MShmI1o&fN|iAn#TXJtN62b9C&(wLbb(kh)P-{yy60;_8N?AoB!DqwduT{fZq)S( z+@bg^y5K5q*{6{j)$=MN&F)02*Qeej^SQ8&#@pY9KDe4V*9ylxqlgB;5(Yi*iSbtj z0pS2G`s+n{xh~w&i_2BhPdL4EdBB6%!=5*0DBFO=ppq-EKupoU)*Gv5)Q6wj907~& zpDEyv3Z6^>OWMF%pJCW3>*OX*nhO$L@DxW2L-xd4*}VaXJ)!cGd>*eQ#{SxKtXPb-EWh*8Kv@9h0U#?66xG0anh z6#jUVp5dC8XouD>0iD3i3gqY^8N_lsPNaiGt~JGwe+A-(+BA0n z4E4oWQv}wQo4m1fM-j!*`gX0sk4wx`ukRFa(}J_?jk)`|Y}voKm8kta_Y)-c_$}IqbVao+pM7jaRvWQ7A z)P!FaAsv7ksZyI_g_WX@Nyg?{PX+hqO{gHIGW+l2X+|r?It0V6oEACo4Z1%ih}rN1 z^|-xbh15Zh&ip2d^K}?G4;*fcw!RIuWM=6B4oa&Xq$dHt72uG_-~AqujSAOgD^T{= zmQg}pOSF9lXrVkwa}Ct7z3#U#g7r|>Q#*34M88bOsmva?hhndOZqUH>lwj~s&edTX zD1RC{*UQnXLK+eCdJQ`{4GS7*oZxc&G`(Uqj2Y~*%uD?O0$5hSP<$XLERF)#9jY}W zh5HY*QMzP)UXwhRs{Ew0rc+CUpVZ5<**5t!1dR70hiBhDsXymFiloFwxH(TLEYwZ= zYZ61Bt>=S1Rl_VuBJY=gYv|=?Uk9iZBJ6%p_ST62uIukt=cs%8_Xob;kWFP0D4PJ@ zPUzIP+6C-h!oH{gB(pN^p$ehkw;%mB&g*f|-0*aiC~E(C7_JzxtpwOE3Ic@D-k&B? zMz+#nfO(`ex>4Eia9#Fw32cyXV2=efL-=!gQ#5n;SjzjV*)R9jStY(e%#YUBFAex6 zSka}w#eY%K0)t%f+O7`TeG?Lqjheo`Hz+j4Xcn(r#w4g)QZ40MQGQ zLtTq<+b2H0ttT68)gX20!drgJ;pR-T^EoHfeD8&K_PRdzuc=0&d(cHJI%qYH#TDvU7`P-hxnQhm;R2I0dyY>|UGJAIvf@pY9ExdEq45oB zzgSQo*#bFgq)j4*BBq`VI+g}m!_Pkh0usx>6F`Xr7)f}Jfh(15ig|A$dAIwwUI@(o zJeC&)-hM$ycXVeU13Zq=agCSdTW6R2mFO7asRp%^5RWzYYAi)9l%bc#nG65B7sdn>1VGQZ!q1^@sPn}>h_a5o0iTpe?@zYXGbw5Abb{w?Y2h$EBxkhu&B`ojO{yb%qCx=l4l2!N=s13Yl=}`T4%*pP3p4V)8D)Y_{R_h z)ABW7+0;|0qEPn>XkO|~roATd{2|k4*fXu8_P*mikVSFje43^^YWZWMPk9Hx^NCI+ zVJRI^OMcP^M9yI}WzF7>ZlEh;#g&n}T2fDW8UaN=!WmUaQ)r%Ja+f1U`ygawj>i#| z77aTTmQvO?aUegguLt-J-Y2-H~`lSt}`zFAVE*vYT{z^@_i(m{HKDfpRxDPj8^VS;eX z4E+!GtH{%)1J7GyS5URz3+hvh>O09&w*~0nKIBFx^h=zavSmQ0P-LdMg#ab#Nvek$ zhF%2(K!eT5^GFiO8-;7B+nHND&F z-h=MyYy~o>k!;vTQi4Qq5}wmxHTlx8XAJx#T8eiAfQb|_%y z!YE3Hu!jUPqtV-#a$>t@INn=P6QYK)3e-8_yr2cn)4Z;gu->xb%Cpl47c)U^Z_Ul2Pif9qGJ*zG#*bFW&`WQ9VMm8bN;Y32 zu3|pnb26c`GZ%aMaW4!`5>8uWI^jlr0`^A$V3Xaq7TA?t=5HcR3`4Cboa%(qolV=-*Pd#cLj=$rspNj`i# zznivSU}Fd!9%f$uC5Ck}eBI(kUP{EDE2hP9ry*m)oLsiun@la0;9_p1R;034e8Aj2 z&SHcoa~Q1^dDFhgNUo_)M|JG2%nU6+3^EiI&Q`~MP{GibF6B~RuCSeFiIVx{Q_6$8 zwl%dfK+W2r0x(m| zpT7(}wXq+#`>&gO-rs2h5I0hhuqdehpX7rz*FPM~@A(e6b&gw6pyZSB!1FZGPyzbZ zTcnqv6vPQXLfpvz$OHmmJ`7J0qLe(Q;&n{f@4$1^896O$7$l>?fO}NqtSrLVMLSx}zza#P2Jk8^?U#x_=+AK0 z#Q64fzf`aclcjDv$N8@h5Xyd^*Z#_8naDXKL@2dS(xZZIs;mb;24bAqFt-b9w=veP zELf*8Jp;gVWk~(GKPHDip*@bw^pEikSpxMw?dGK-KKaI)^rI0bL) z1_Vzj(Qhd)S9$`3!r1{HqzE({gE zc{3tP@?2xFUb1i#{g2_L)lZ7FJR-j#;lbr58)o3)|S>|-K;@EY*fmZ=8o$eZ4j%YRN6$NhZ zq;b>7LBHC%KAkkZqjhQt82URBkR2_GgOEI+Ae7d5tYu@@6}ArrQ=IqaIf2ZrzQAJm z`=B~aCW8I;Bo}kbq(Ijg6Za$I-*{JdFdDITexg*(W3InQ=%az@dAJccjA5$l*C2Ws z1)LK#ze9cUa$Ju@=IYtzSUPK6>~EvG>r+8&?BdtCTkFp(mPej0p34jV3xf@Y_GL_s zs>9KVJMGs?lz)=wc4XB51k<%Cb(0L`w_T$uF?vW-j%Tt2hlZfbM(MDVx#*DSr?8x> z`JT0P`oRJYQt~?3Em%^?WUu(f$kwBd#&v>A)G=Kktkyid^u}mB<(HvX@mEDx3${X^ z=+K78WlTT@ph$=SBta$keWmu|j3^pmwLZdtQ(1PeHaIz1$t;j93fAJ7)p{$O>QvLJ z`wuUSAtGcg=E_zk>6W=e@KIWtsB)tvHRv>CjLjhP(F|Y5cZ9YxgA}dk+&4_7M#;pD z2lKq^LO^HGZ>NioEtAiG3}1p(u1ZCbjSz1PAD2n-&Iv?OaiLURvX#cUtYgHtgyj6vs9 zaLk1Vt|nyugAw`M42feQJ`arg@^{k@AlR2 z&-Y%-6bo%d@ZbdwOAr(=J}4r6NUKl?l8aLsiN6YVZdEpMwQYxozG`uUddrlWBLW8F z#VW1$=&HTj;m1y&1y&pr_T@T}-e)y=ETPY^FkdcAaCAP54;Q1X?Rh}%c^0VryL#pH z1Ma@9v(Cgg4pav6zvfMyK=*kp_3vqMyJq^>K3o@eE_l3a=d)-Ve(v=KbD{5ZwHb<# z=E3=8S=S@4EFx74cq$h2hFq_X(^U&SsVx(Yyo^*?{>edMY>^F>UQMpi9_oU|Jy}Zb z`pWs^7LR&oI)$%1Rh1eAsN~iyjW}tgSc!lggo@HDWRydKz|ag9HW96=#C`0zCh)Wf zGe0c|{QO$hxMRB|Y-VFV!YOgRxQ3f)-|sG5YVu^?*1mV^DQ|(}TFk3-W;Bv=xT=xw z>gQqn^vtd{jUT)bCExc*&rZP@*MrX=SA*9@=eCvFW4K)iA0z)*QJd`JBb0-nZ}G^Q zI6`n|7zK@Zw)DOot*8HIz8iar{!;wJ_6YmTN>;9vZ3lZ)bz#*pLpSnV1RMoASF*u@7I-t7;#is^rLb6j89- zkHf;a)o$^LmqUVtW|#C%4vvjC8hhsy0ebG_on>2+z0sI!du}JX5BA`FHyZY@Ew%ql zLpueGi7>9E%g3<(J7L+wI(eiz=el}XRDg~I83XH)9(snv7KLu3|Dv;^gLonN!uO?I zD@pg71anu-JQPZ5!JEp<7f<@01fAtvg!gJRk@pMp?l)6fA(D%+tm8>ns*TbE z0*tcpfUg;rpXLzwwy!dDII?$J>j_4M9C{^u>RqBt@>VYyeSBV(A_JM)QIxJ5D}MP~ zo=kc#8Jl=iak-6)ieNwnv=IB>eO-&m9 zV%*2Qd-?UX6ETWg|M^d{i05j_FJ{wJq>$_Se-*RGW%3?T5%{k#^!n+__)%Hx>Ha#h z)nFNJ*jzbOr&UU75=V&FPJPysK|GgBGV>hS0;8JLXnp6_|C({hubpZ!A}ffYf=E<8 z>9SV+@r6%{ehX0Q8o{g=DT~XQz}#nwy4PhdZf&%fU*EDd);<4yun#8kA9bo$T|}tQ z`|@ko0lt8Ehd?Rq50uOTDz%^EOR!X&noi#CE40mh0@R-WX?<5=eowGVi7kT~tNIF@ zFS1h77Z@BxtERYXXD->27Rf9otXPfa?G?ni4cP+~u>&UycfDwlzMw#RF$<(-uwgV$ z=f2pL7d!OTeB53GWn4!()j`F-sXft}W-6<)x-It3EtI0$;{8y&GvR{B%ug#`K-$ej z2i`8h7J2`97}JjjD{?r`HCt&qK=IdMzC%3VcciOEMQI@9bzajauP5m5T^Z0H4e7+N0vo2 zarmB;q?#1Oh|hdR8vt#Vsf7bocAG-t=;}4Eb=Ld$1jkfNr|a|G~Ja^mzTQT0ug0YJME5}YlOd^EtG0S zx+E-PT)x_2<@Z#)PbSpDy{=PA{(G)$=3yG#>!)MLzE>7cI@FusEg=~ zF932J#L#F>;(#FEx7dd6ZNj>Tg0yhzGv1kRR4Pi^@OC~x5b+5{+z8~;Fh0K_5biXM z2!-j?ZDwum#^;Moel5%=hYOv(Atn8R3y@O1_|of4yNPU=0as7_)CZA@3QY#M*Tr`58AHn zYNR%sEqmSC4_>S8CB+LcjW0S{oF!p}-|heuH=zQ-?XdWv$b$5;DbaI_{t4CYF6H)w zt|EiFtM@h|9PA#S^bv|CC#Ke?@+$JmrOZ;~@rk6zpMU zqG=eBt%HF`eWwex7qe*e#=1)K<$br8CC_G=Pm}{_A=ORVB(v0F%ydUHpf#>h6lfZ5 z2n@Zq1b}5xZf2l0T(^M#Qenf3peC{ki2HDcqYg|N#A*~QrS{sJX>XR6^Q z(=Pq}4+}ip{JmplcfUjIdzqNGGDNtIwC^h^ExgE1aDiUe796I679q>kU=v4DrbibAi|UgYhaIk}iI7XjWtI_YhBsbm zWeal2@C^^{Z``vkk3_-3V2EZa!=zU_@CO);9lY#>=>Ye*JN1O35}&j0`-+RgA6GFCce^0R1HF>?%N$s z0IJ^K@!Q!Ex2Avo1XPI?$WC`u{-;TwG$;OWB1MFFIj+9U3YML(;b8$H;()%L$h{sXHLu z?7QyZ%ItyBR6nCJqs`vItf~e{+k7K!DRF0&bV~On!p%eu)*TQPQlvqSzp9l-`NdS6 z>n0mUbo%xCOIgDi0btVi%V|!80u^4gJW5v$ddNY8GkF<(!zhTMbJmhg0HbFJSs2ST z>-=W20`d?21M#S9Y=UZXK2J|sGEHEpid6uDe@fPXCP3*7n3GP7;N*XoG43h;$I%>L z%Gx8uR9N7=kYR21?(KtEAU{Q<3dy213fzf*$~9Y(ctwlt=X!UA^sn7B9+$9h;(Soe z-jC8H+!(57$I7^RDIXbz(M58b>JG7Vvefc~$X~doln)ZWu`>95^QM(zvx&Pvb1@Bp z+DsT13)U;UsJP!f2SEpZ`mKDHU_2jep|2T`QhoE?qxV$q+COzOP?IO}r);SchzJJ9 zu;1+G3#Rz&gXh)8YQY6+{zN9c>H(>I8daYdq2u!Ji6w0OKaQ@#uc@w&!{{E}Fi^T1 zq(MYMQc@bEb08%h(xr5V(%qwLfYOTe5Eued1El-C&-)MD&%N8d=XcIGzv)5T`YUMo zA4~q& zZ78X%W=zkoh0R(G)DjbnJu~@Xxu5dbOgq2TFz95&!D1GzUxaY8kO*V}N^)MO7CPR& zmdsS^_<{}-h}abuQX;)9e#WPufMDWRv!jBSB5UiXIlyktof@GCg%Gsws)R0+#UW}{ zjboy}N)!++K-(7QS_RL5`_sR>W0w7~v~aeTs~17BoXM!aZbD%&!V4y1q!XKiT;%39 z3&&ffF`1sxg?dEDyJh2WQx5D*bpO= zu+v^)$M=wO@xXx$D_2}ch5-bn#gxYcYY@Y2m+vMNgl`fDYSn97CAasVD?dvRrKC(m zg$ky{*-U)6ZP$8MhVmX19QMHf-p)ij+hMR&o1FLqT|-kf zeu#Sqk75d);4Hc>A@@%Re}toiH2n!=mt639dNRp&A><}y4`1_Ow{E2S!sNC|#j|+k`0TgS1W|@vF6&-ZzRqg#4R%$`+np1*sAkX)8a{oyqjqWR3-wM#;A=DL`1|L1^EPp>5WTMtY%4GXUttVc&w_3oHDVkt|2J4=W& zQ_(uPH$*aviR9C|Qf#>dDV#6)h6pSX@%PDZnLkejYo1UmnvF$B1C8Ir^BcMiRK6vy z4zB~YA|Xt?1F69WvJ9hSHgtVF9Qd?_9SWPv;RKd$F~?RwBk#Bsvr98}!griBJ?*Es zqy56z0pu5!OQMjXaX$1e5EJ(nah10_RD3gGEov+>9HL*e;?a=4U~924qVB7u7RU*fFraZ1(7#rN@1?4Nk-bu5zP=h)0IA zU|IbF#diOv?^))_$LapaNq+a=w2*H_gIXqPrIUo{qRN6Kr^7O2Ei8FDbf<$a)~yxL zs|2`XszLU1vGEa*x?;)7+m0xvtD71{(+l~s>Bqtq9WL~3y*#T&TY9SxWTMWP4bC3+ zys7`_)@&{LnY*!XX32Ob`wg}~ZtjD# z+HlC9Fl__l8MjCJhzy8bq`{(ktwGCS?L=gSB}i2)FSpUn?;0`@y7hE@;ZO42{`SfY zP1Qhu3|dWO81;L-sv$yPrc;Ve`Dcc;$09x$_uyp@{MP^0Tq`2XC1e&IYAjyI4CA+6+q<>0^yn!aSDig%Upsp|(SJ-j zWn!5bo_9hQVFy9|A=p9c+8HVBQQWP2oC_tLzhT=uHy%x=L(+-uwt>%>n+QbJJTi`X zW_Mua<5HBf+Uy}(eqm$p^eDE&(CI=qj7oNNw>Qf%k^esAVJww*Q2lTnAzaXGodiF% zxhE&IwwSMY`-<=Vj+_k6WVcUy1O?)}Yn?^G-4 zz~Kv~mSawi(-LAAikL;*7t;cnz;l--N&i}?R0|$k&0%% z42c>?r{X|I!=S2R#2msz6b?WNnn~EA~)iT6pNl3Pe z#aCE%Cz8ke=0OU_V`LJYxREqFW=uR5sWcZv$EQh6!AlWhCPq*a+&)x;U<|CKrVu5y|C zzW(TwfBh?kU=4E%W&(Kr>eSFf)USHrtmA~*w%_IxPEoNJj~gFRwOboODPhY$x?k@z+VhwGIxW97W278{&!O6Ch=y%{1AA@N{G3K{mPmg(mje$a;3K z)0w3;rUswnGqs;()hrjk#ev?7=mReU$q}Vb7q7$Xk8IyErb8A-usn0ozKTBfF)W_^ zDNegKpOEf&(5?rvNp}&2bvI$Mgu%d8NM;2yQ=9#etqPD9HA5?8Wb@#6N5si0oYt#Hyu>Dy*l8r7l^|y6X z@1Fa#34On@&OcN^ojt)shx(#3SFrk?-@LLf#=?L)_P*>z1Povf?vHZ3u3%g2Z5?~s zWZorw^i;O`Q_8O`l2?{-W<}kdj8wj_&bsqp4~)Q7%3Jm#sFhz&Ex9w$ zu3syev0Hpch&yBXgAI(_*SfkIo4L)D68F+@uKXl-Sp+z3hRo%S)H`c#P802%nBDRL z<8^4xgL+R_?)~LRY0U@O($Nxo*KXp`!dGFi)+dUHwT1k_g~J6XVvSd@F`PSUeTC&Q z(e36@kFk1) zTeMjW^PHC-=Puh^nXN*xkm7=}Kn>_zAolp7FO&^|Zla~PjULtyw@Ag&n)G0gc*SR2 zHDm-`G>o3R=(;MYHKOnki@8-Bg6e!L)kW1L@fg|m#eaGDpvT^2OFV`HeUjYdaWSl& zd4lw8VKnJvUO&Bv_p5!yg?woIV}f z)ex^*Vncw{DbatUhnL0lQ9)^aa{LFji-*MsM?UY0X5-}wK&;cd(-+#WXj*1oveymM z=@dfo;p!_{*8-%B7Hiy_YL*HiDF-AkoTbHF||L*KctasW`e8AN5DS&Je-#i zA$>T(mp1#vHG6W2>OY(oKj;N)S#8kuiYd2!$$kjoYFCI1@^rY)e@@=^f&Vo=e3c*K zCWT@%`5}&r^qgX5gqOaOzc-Jq1ou{aH!3GWMltDDgq_|#iJcvbR>gvdja9IiZZ}p- zgx+!y5Cfn~?`bIK8X!A@paBjzK+<5k6U;zpuI%5bu`Ibmmw%BWuWG*FQq`L-%-^R4 zSVK^g&lxo%-L0zIaS8HqC}Nxe4-k5xuj`=1#i7yPHczzok%dx7IpNLu&_Yt5zWBf=!3LwD>g%(y{{A5LxOl zdOTl*lN^G>L|hRS?p7|d5Uz2V%SO(Xp0YcJmO?Le9{6_J}9+afJo z3w>L957xJlL}9K*dnSA{e6Cgi(81C`8O=KCAp`}qO!^M{tt^6I`YL5|2I+$jC4jrs zY+lFEUBan(5|;fH|A@ahL9I-{pkCDiy~q?$^A|<% z&99u&2k*~zrqCK0sIkiDx#hR)@glBI3dZng=MB3&JPT#TuV`KWHCc9#X^-S{fKmVY z4;;f`GW{Pzbzh8F7+RodNDC2w6wK2mf>>mu9DK zwZHkGrhCzAWbxXhRlT%G?I9HZqwkZrkpe}%1 z?B7gg2`qrM(V|FKD@6OJPJ{Sx=ame1Sezf4gfdD7oLL1^RA!Xm1WBU`Y7R=JZn~fX z0p!tSCWI=cSjakNO89Ch!S3e2`?%Lc+`5dM$z3{tcY5xmp+CLk%1PJW_MXgutwQDF z(w-@0UD@=8o+tCg=mHT2bU~$e1RDcx#{4!WkwqkCg%^j49DYs^BW-^6MoS#@&1-++g8>K3SG}7+;RE6>c zV71DM{S~$}y-+!AZ8;G+RX+ZNOpMeYw?Q|>hiU(5{vx?P*u#mH&-yQfqWHc7uoZv75k7J4Rn3uj@fxI2nbi*q)Kct6{Z8obBCq`RuxMuhFWnQ^j}^M5gWDP# z`D8={k3HTSWso?_X>HP!-4f3gEWMb3)S*b^sbJ42zpO1;n91V9=Yr-4C-&vC9#?j3 zuNw}H*b(Iuv9#zXQck(jjNI)eajY6Eb5>JX=!{p=t44E&z zw7F5cKeqs4rL8GniN6A382S$aB%9jUHj!u`8#>Di2>tFnKztz^u~ToQ3W zIT{SKu`G?%f7swnm=gsxGp9xbUqT|sFZF<`mWsh@OA2M7xrV#$-k7o#%Ka=7h7PXD zXZ8V}m$sOL-nu>rOr#of?u%>OUt}Yt^}5Nke^K5;pWRfvs<7Jfh&Ir%Yix-=Vqt~s zuWgl!BiO8+37vSAPtbUycv-C$`EDc0CZ(>|VrG%&!N>{0Z z8>Y`Vpl)=QcTk}}a8~C;OnsrEQ|c(sz50Yu9wMe-gl-&TodF`w|3?~ek?j8SfHKPY z*CK&E`7dSvIQq(bAC2FXBj|PMaSw&n07de9p*A>~@n6graU`C`7^rN?!291~pOXD4ex#icrvo@Xx53T8M{j4^ zIFNYQI!&nZ%Tz}Z0aMdsyKpeSyU~h>(ADszjJG6LzYK;u!Tq7+-?|~q9gKtb85=2G zR4QRUrbJypD;m}2ZR~;PBG-s0?cGbsHa5oekF?a84D`mq8OB3dcl0|JpbX5ui%z~0 zpYcY!mjlrQw)mErMZHz(WHI;cWnG@yXmeG`{?b_gs$OAli9T`W=T{I^B=ug_QM!@6 z|B*sCuA#x9zjo_|l=z;iLoH05U8IMtNtw{C zm;UtI`CJ$WcS?rBP>TYBSyZsblF5zrg#A-kWV9?kt9`B&(_*Gr#dCS#!ocaGci5G0 zu4~vBsq{_daP4#G{-rzj2tw+fNfppn$&1HS&)ToN6J(DNuG|~*4?8A^c=djU+m#hf zcXC#FZ7XXkH*h=i7z3l6_UZJ#R{_%dbi-+0VnYNwy=hHIfWac0YSv(XH5)@+Or{FM z>$*Q9*Bmo$u?!cJ+^uAd2G_a3#Ct{nqYH1IROu@jr+%X`&Oto`PV333(a7VDJB{{~ zA!s*J8#f)C0HGPW)(1|F@(sX(=G`E_QwGw)aeBjo{#YO%Q+@X`M7SZvHP1$BZWjOv zvF9fKjnYo7@g`5WPhNgS(WYr##r3Xtt36g2o(IcpUP?009`xYR?%*1cDVf<;r(cxn z3r~(YMUMS;gCznWOgHME86Q(8WF?_)@TN0f(sF@)3CH+0bY8WS!Z zG36X^~nl`XM2D;oW9D&r)1FcOA4^p_-9+Dm&_} zw7P#l#7Qi@b;+9>KJaTm@w%5`@&y`93w`qem@wG*w1Gow$GwUBgi}E-o7Y~<_1}dO z&tGcC%$#%e=@WAxJ3n9BrSyg?q|v!Nc#nz@LI1VCj^5<60vyjQGJ|rX-b>%k$xch> z)lH`x4w)`}N@P%(%5Q&lnyuPn5_-D(Bjkb~WlI>VTd$;03~_SWBv{+3kE; zH@T;?=B$!)zB30ZR6*%17E^sefl0U#X4{mZQNltArv-jeQR@&Jsb2^y{@iB{vG)a+ zc-_=)-=nZzT7v}^q|R1nLtzI3rpnNe80XpR{PdEz@$2Vdu(2Hh`WWXr3)zg*o+vL# zIl=V=+Z`CZm1)7m^b%?|(UE^Sb-Hx4<|PHwoNjdIU3pv~__?srV)ZTsL>ckQ)7} zrcf_L8-GgLbW*tdI9U1-B0rBK?}b{ImD)I0+9h#%$bK90GQJST@n!!*ReuFGG+Sb- zvP#}au&)`!EDj`y@73e^sRL#-8bBfrFdIbj04%o*%PE%}^&qzCl4V@C5+XVNAbV6E z_aYQ_cUQgV<=4LZY<|hvL(E#W8m)e;{&h%a@K*EDkAM29|2ARuL|)I-0GuVcO62Ne zf8&s%Y4AhC^)qqFDk#@G6|*>;*pbpz!JwXu1-UFh_W?K`0`G0TS%US=VkGF|8)5r$ zQy-sU{{Ca6&MYV^tD2=~N_WXt$y>cc7My7l-!31U;eu<(YG$-k0S}nWJh2e_c%^dA zbysF58KWN1d;+5K`8^D^h{vq--hw4*jnio)+uVGZUY3mVyxS0?jG?E)fXlL7L_fnq zKD41Ig3SUz_2PL02UBDeSSA~P6G`NbcB-*K95!cSbJC84?|3vM8>ft;+HSN;-+q=exuc1AdPzzVf9FCK&n@wwX32Lj# zL-Dw9zKYBUy(b=LBbNJ#aVJYTADC$u7aW@ zIP=hv1_Twrr*c(t__<=6>1-aU_!(cUQW2c#747D$XXSPTaKwY`mWK7l0wU2CVXGT5=@ZC@KC*22P%(11}MDQPSxZr3oob`)_Q?g@i0*hJMW zJng2aW-^+N%3LD6TM~ouHjFh!_)_ro;LAACH=9m ze_t6dQ_X;z=m%nZh;POl4T=^CuDZW~nQ>`=G$%fsEdT}DVJvT4G*37zkd_4M>YTv< zQ+Eh(kT{gkLW!6aDK7{=U~`Q0Tx&TPxOK&8obV?d{)8~d-jfR{f3sL6VjOB=QJ ztZn_YZq?{W4k!}*0J~)c&0d5|E7zun4!+aiqW8M<;}m@E_%ocb*E-O4CE`+A9N^Pp zy`|;8V?cML@f#)sNIz}}BQ#q2g+cJSYZ`O6-Et93WYc5<4pObB$*g(pn-!lU?Dk2+ zpH8TVPO|KSde%OI1IXc6>7$3B%FRsvxMOIHY+4*d&IpZbWyMG$90DM{8Drtw>e*8>IU+EV$sPr1Rq89~y3z{WcLmec22 zph(gnX*dkf|AVKxckV9TF&sXkRev|dg0;#){B zSf$&`Yev==%ghlvC#x!$gLS$Pd-V;jXslI}lT}De z*9Rp)H`o%SRe<~MdjQv0lrmA$mE5q~p`oI`cOU4caTBgwx#X>jdraW0! zaAv6B+NoUh!{0scVs?}0`0rkejH@x}#ZpFecW)I;m0&Gf14n;OZ;q`Ql8y#yfk2?M zwt?R}QO#=vs)ec(b4M!eCmn42@OwWT{^%SX2B(o#KWVyV;`bMww&vAZ(mGV_B~RxQ z#(#L`C7P3~Anrf)EYcZE<09(_Ln8Dyjxgb?WX5r;jpvdXi}5_W1Qkb)q3!Z6p)h&K zt)Dg6cTN!OD{c^F7wekD`@#w-=;YNZ%*?vPQcM2yC`~k@WK%uT?NB~ zC*u5R6=RHUH{^=%#JS@fUme(h`_#lwjKm#NgMQZ~PcUJ@&5}PXu zcH|cwp)gEkeT3kE)W|OlK&*lf_y+-EN;wYp@dx0^bNNIwhB6;<1D2Gg`(tnj6E9`v zP5W6J((Qs>ll{`t#D#SJMc-f!u%GDDhq#^b)WioTPBwNdl3Rp5`R*#2`z(PzJDzho zy`-@m-L>cN??E$Omh;h3RCA&07{?~o!Ujq%y!sXTlW`kGQ(_o&eh0p#0JLZYhiOTB z;i13ez(I0XWE^pksbsZEF;cE)doWu`g0dp-|9W|fX<;CRU8^=SUIcv(R?R5UdFS{O zgltOGVar_Dj@SMY#i)3RIg^&8R=|OU%&|lO zcx10#SG5)=xcv!Zv}|r<7e``0V5CfUUm~IVtP=*UOd9Xg;r%@53m|dK20^3=*Ve{Y z1^#x0)f(U^lGv1tCz(n`?w)EeyYXnT!pt9Qe}qJhCYykd`Y`ugo&C)@&bHT|Ba5fx zesk+D@fzOD07E14s|5u(GXu~K+YKooYCuq_=?1q&6i~4wchl#gGHblsgm#&uKJ~rBhDLvLN{qbWSo4$P=Qww%M#~&dNa$7AUnFp zbzg1`mj{xW?APePj>}BaHKV>?^+QHzEa5M!e!K`Lnh7PNurQaq+=@~0Rnn_H#X)xv zG<~pc>JbuiD~qvx^G-)0CLhesV#@EAC!3eoIg{rU$+n7Vn9TTH70>^#TzXsae$>%Y z2wqJSF->>Ns4J;MXqeO{0MoPm#lY@+bDbvm--;a(rWJ+c-@w7X&^AsNd=gPZ5mOBj znr{U`@oqR~GLird&S7&2&q8=v3l<64A&kOp)Xf*8*Oey~&6F}ll1y+Gjb0zCPSvd8 zd}K?piV4Ht%b#PrpIw!$w*dh+IX66x&HRuw<3V{N7`z-m1S|^<1b|rBu222 zFh9e&_-6dPuH%v3(0%DA_HnqVv9AlYp0}}c_2{cUN?W|XvlAw~hK(q1+%^}Sx1Wjr zzHA>{SxJNsNq%73nR%3@RMLYG@30Vs{6iPSctZb^Md$sy84(PJ-O&w&y%bjdHIa&R z#SXx{N85iH70$CGFs0}sAfryQ01+PE$nfty`@aHxW#w}Q|Jr;`)%bvO}G7Aq`s;^V&)FC@B z65UQ!$;d-|ep6mf>PESqRyFY@6c+gHTQ2`#521(5x*K_4^J7zDqul$VVr;=hbDAOz z+&Bm~#>rxG%V3J8G_ykfH_@W1piyu71wq0{-ZS4<9xS7d+<&vJSQt~LFC(+(m-jsQ zEtU0IArkY580#FD_XoCisSj$h&NIk6~al8 z0;d{7O?Ujvaw4#lIEE7Np+j1c&5aRHMlQx~Hp%>DX00vfaoZR1Ni^qDyVChHeSPBN+R*x0sa_F+9s!kAqC1>&Dcofj;4LsG55 zMKd~F5^ptUM{%BGG_;-0ZNp1Fdm>t<27ZzTsWZ0_Hp+{e%~QU^$X4V`bLJZ;sXWDvf`;cQOs@f=+6uz1Ey!qu;#Z4;3Q*Z2ueG|Z%NT~ z)s6--Ek1OU(C&ZZX!7|6Dm6p5b$BxYNi2WSWpjD&C z<42?5?FjB42jxx^2TVfzN%jmTmGk3kokks zJCa8tDfth%{3&B-ArA%D*8TDr5xAKi{46!YCkclc`?zh!`2tub)Z;V?t@HP*wVbi< zzpycqW@YZ5?nc0d7Sy}zzv2s~f6h`h)BG--e)xiGA^u$|7BqVMEdmGi z2Qb~}qdmpo%u1?^h}6rqUHw(61fqc+g?sQWG~E2oIv*7OeiC_@;+67y4Mv3m65H$u z;Y4?Y$nDI;kN_$`dHy{>z3i2(>Y%^pbn>=S2x+p)=I5&Ox838Nvo}20XO4C=}8z;bb zX=^b!Pj0xs$rT1$uE#fe_xSWr|3mB2QU$6#VaR{Nrk$sbF>HpVvnDWV#i z3-!7mOC&JJ#SEUqGRzlkHpYfTa;<4&au_?_SOHba8Rk@AK*;fr;Qq@Ij?^PG zIovhtlz>EIgN3=q{!SR3`0GAH7Ve%hBXh2Z!kVT|RT4V3$09X$`Tt7g|DJ0R+Q{$WWvmJ$- zz@PU6<^pn7A(ppWGG!xrV&AxH6 zFqpD4)s51%Sllg?B+1W2sC`q;yt)rSGxhob%D%p8Y9oXUUi&QiGRMubxtZA4dKIK4 z{7rDJ{(2$*TZ^uM1)f#o)E5jX9ZY%V7HcbeTJu_gkv_wGQW{_;J+gVYeBwkt)LuU` zSmM_H>#l5!NSrc#KF|9)#7+UhdRMY18mtpU7vjb{!W|%`W=-sOlXg?+rhX>G(%iV5 zkst*)?!_ICVvD(VRdgB{d0a`3-DYj?I?KR)qJYSxtqu3lF%;%5W)5$vyOm^iQT2L; z=59fD65So5VdLTy`AH}?b6_EzW>Kh&L4$JI&2O>V0_x~5YJRCHK23>RI z8nkzfgsV5KnLI%gP&A#Q4a8Q5WF98nr-!X$zIFb|#Bj1;({|4NfC$9zbC=`>;y<7k z&U$gMdNC&QmzRgzvsXpuH5EHkjpl$uhNw>W;GbSmzhV6B0J|w+JMwJ{1{;(I#dZMN zC7U85<{Wltqn#HxRm$a!919kai!nJ<3WJ5X$%PxzksvPQyFf)f7Ck%+Hm{mVQ$1XI!UIy6;7 zv6e(h*i|~<3OKrj)WwJKhVeIXj0FLU+r9CVs1>9A&e-9L@vHd{#D(5@Bhi3D$9!L> z+eRv({Vo3S4i%^gNV;W3S>KjY zt5MP#sM*Mzg9su>Mth5eDd_Q?;Qe>Hd*NeQ66*~sY}z!Au7=qFf=WSc8B3!qS0ZT`_QHy1 zEI-j-unPRu=njSl^#v^emR2ie2><2un-WfG2DmJ6#Wf%*7$0yr$fFQR$i3wWj65gGH*Wly=GG`jWWsI9V|7X^ts}<1e8^}|7|A=Nk>{w zIx($CEUS+g@Sl`&zWTLkUS&+thk8m6T@dUo{Dxx7)y{FsII>7yST{YBONw&Cwd`6B zVmM_8003Vgxg_zb+gZeJsoko;i^SkP^9b>ylxa+Q?B_Z_KKuA65+h9sHq=8flRj7; zXcIEZGU`>5{}K+6MH&eZ0-6ltMzvuPucAlEN>--T%Qie#;e zg4%b@+r$Ro_+V$+dK^Cp)G~^zQ?Y&PU{;Szdzaz{5JN%LVhG z@U%DpRImx6d;yo38FDGSwYO)HQ6`q)#Ka+`i4-1mMgc*^DT005oGG_q1~!%UA{Wt` zUqtl@jud`rlW(&WaZ@=qjoh8dY@B`_1-&w`%kkg@K4BU96OBtxbay=D&k5jJ*L-xQ zWSP6de(Dju4LAVNI2{{c49HW(Nat)RmrT!2_^&_9TYrMCpq@;*@VUKF`n~oq54_(~ zm%M;17Jz_GcqzcX0Ujh%!vbHz#~Ngb(K)i2?gu&-f@$4MkD3lo9z|9#Mp(Q9W_XE~yILy$`r0pdrtM`x8aP-Tu#iVbk`m zbln(wRn6WVcIeKPZUNHXsua%k?DZR-|KdX1sL80G zpSN-9L=O6~XpU-azPrOr8X>j`c`x7-*>3s9fpH$o(AwLB%K)3o#@}*-6N1vbW>iFs z$bcnI|9<+Dz3J{70zT|9tN3QH8Hi-?`Pgn<8Vb9P13rg7ps&E=An_Mb%b#cKs7WC-FB{PpCA~TT+F4Fu@r;9|rsM9;t^tP(B zvuhPp+Cb?Y_0(aQ^4+n?8GTOz*~_@^6wpzoX?JMs1j$v1_Wv zs}$c@o)vKtxhK`YJC6fvh(kC8`7Q8}Zb`fYb${P7#2$^5{*wB&wKs|l71;z}0gqO0 zROd0nK};RI1IUIx6Mbn`hBY6|tH9U6ru2C(7JzKJ0hdt;uTv-tuQZ1n;>H@&_MV~F ze8lQ+I--{9VH4IrnaLx=9*i>eEr8*Fo<%6YUiT!!zBB$%F4 z#+c;B6bVr>>IDY91^ecQ!gw&@vgAE6IF(fXNyx)P<%&Lwenr5T^u}@}MU8K>9A@#Y zV|so^Nu`cZrBZp3)Pl7isHwEaOBgqNNUYB-X>R0e19xrmcnCH!jecIy$y!d1uiS*? z$ilYI@8UJ#|i?DxwM1=mJv#T~N05f%^*Gu+plh z*Q7W0tYAas)+-^l=qzYRQOl~aADJL8V{@SoehKryg>Tto9hX{h!`Z??zNNp_ZZ> z`rJTaFfYNQJ3B?t>BeNXFwrk3kMzNEAVJ*JoR(mW$G-s3V%v7v7vQbxB3>8yqeClA z?~$Rf&7~}enQ zzFIV1tn_bcyNJD(SQfbBWB&Tj3WGl9NoHDD_{e3A>2C=5h8~h&)fp_udu5YFYxhTa z<9BoqXoD<)4WfSjcCZ;xMY=MAkmBC0Uw$q}1>{p9b^!<0ms*T`Vjh<$QaIye7O@51 zCK>!Z`W|#w=E;Q~njKwnaOYq>sp9C+x(L@K7zAp zw|>pC5jNTb;t@Jd8^|G?U}-7CDD$@b41(6bD&h`mh{iYkgt96+I0H;0GvE6au+4>W z^TyEHOWe?@vgP(e6>SKG*ENuknB3TboJ93dQHdQaI2+E zakz~iGzZg=`!-X(aDuEhY^eJvgOPhZoP$r|_{FO2 z-4q%$n<^szuQImxeep#nW=P1)d%)()mM>Ovr|!LRI7Q{+Ep8M4h1Mi*a&gb)lOg3x zg9tJ4!7f|tYS%3z=V~~108!gB`i9k|gv2Cv-oG^?IDD7KPWME2QDL?(Zr`PFjTh^~ zak)wHpC0QM0H?mq&ksLWomF6KNq>|jSnrucOI;)n9Q&y=0DJr^a2#ag6R7jr9lte~*UhjM!Ro-!{?0ZOxiA z`Ic}2RXJNq&cY0&E-GSi8UQ5&V_EC^2v%kB&fYMFZ+6H~?59g5#`oR;+21KJ2iBK= z4%Cq!T1@t`!uf@}1S8yZd*qt%;X!2g9(__EXJq$+=J+Q|l&iQHO zsG6rNmf#r0Pb&%Uw;tq)jH02rElgLoiI39xi$SRnpb|LLY1z+QuMQ49Ok5~qWkI*X zX4Ccdh#qI{U(F6>WFt)u{oZ|o9L)5$ETEZiiPEkl9-k&;hg@lTOM`eL%W0l}b8a?w zP%fezC8x|A?bYay8kqc~+A#p}$nP~~^ly4$k@#CVVC~Uwbd8;Xaat&=-2A(OQZxUT(Wu|-KS9bZRdy8U73 z_jxH9=GE%oyKQ=z>s0l_Vzf)c_t@10%V1@1m|EG(d6pvK!9C+ck;TH|UgP3e{|vs= z`|wlD1>x;}SE8N9I{8*aX73A!jG*^bkUHX&`5ChPztiVzKjr)cu_6ZSK~-Oq{RJ^c zNiHnf2#8)2MRN;$KgTQk!6DNU+K^AI#teF?-*e&-Kl0iLv}NpWVT4MSm8Th4$z!fS z6KMEcY*`zD%CfJ0E+D^d=4lH9uy2d_P#bLVEnjpU zp|i-WHhj)C3daHLU{^@<+m5hRojhiI-|MhAy-iYraB$^?vGI$t$`!(m#lz0}g@m6A ziA^U=376JuE$IX=ry7%8Q|mv-r9D`vPGe3Ep4> zpO>lE+0&B&c*hy#7DwjHqB0 z;PFYj11ci6{uHyz_$68LjuLFEv=$Z;$2e?_g;~BuAS1xbduQio?88iO^~w>lD`>MmiilK^Bo#ej@UVV zNOC3xifsz}Y5)nXG=s0y3up~;ImNYxpYgLY0p1$baSE5Ah{2ewTj`l`-LRZXM?3&$ zY#xr7Ajzkiw|k^6n&s!sQ!l1(`EFj;XXET(4*7QPYyi%TQTe_7v|F6I*uNrJNMcTK zW&pvXUrh9)ALqa_z$84m9ir?u2*6lt)n9MvQzs6|l8cds?2A5R^lmOI-6(Hf-G^O1 z9+1!<5=m|yrS&i;0b2vx!gVjMDOnkYwA)O??aGR5aL5dRr%ksKlN_JW?9JdC>7EzV z8$F}7VYW6lrp|jKwZ?Gj9rF*BSzGE?y%7}(>!U$Onu~?O68}@@6zgp*P~-@+AQGN6 zPOl~$Evo~kFI&oVyXho+Wbaxa#){dwU&=8dlcZ{&@cr(M{+34eR~t0(g5MN%stiWU z`fj1HkD$$mWlZG57=Si7cSe=Y<47VM6<@*8)!8G9iY4pjeGr);&%i)bkLIR)Ri&Cq z!Z|UwxZk_FHv!-AxyJ<60agwdgoT^9+V?Sc9b6zyHr z4aGzAHpRnFKhkPf5)ZzgZ0N>%9k0|^=J#^C=U+Np7}M03E=;DPLqjZl>FVd-P_~1C zXq$msKI+Cn^SE(R?!%{r`0#Z5+($pw{rb4C^d_d1SN)zk{Yz_eg%r4%BbRny-wt%- z?*yM>v2ln+E6LM+SOE<;*{URcgJsVb!VveKNW(p?jlTV)%}Z~+Gue*|^qL!5iRCAD zZ&-de=M60|8a4t2MJB71i-(nDD_jP#`6#sma5c@sRgan5`F-u`7HFNneGSl%#9yfU z^_Aj=xP7HNg5EWTDI7zu@7%mdhVz-=EHKoYlDk&e?JJ;YrG$Zq+% z?YYR<09yIqvY)9QkR|lq6v+HVyeD%PD;!+mD?ia3cf4yY1s|DAtslAW9BTlIoyJu- z_KvKJFZp^6S^uRHOh3)PR@Mr=Y|%hpT5KCZivhLZ{SR-_8v+6=JqfGx*#K1yh1lCN zu_b4%dA&l>OM-_U!y=1Pe(LB}j>xD4oKie`epNn6${O-TALmQP8tCtS-CIiD21*;B z1+0mtf}zZO`{#!jvlnl!x)xtGCNFEnfKa!!qsMOhI(Mz-fJ4LGgm_aR12AMvLQrJ4 zYzN1PVJUQI7mlK7c%uL)Mw%%>T0F+&`b#*hr4Q(p&z#>}{M(yEFBJdl1Yq1S1+Pt% zL@+IU1Kc-x_MzP?Z6rr6hor|BK^XA4!oD`9Av!}L{JT;Zo$K?U5w=ja*{^+g-D-IY zU-CEwC2Ut=`3^%H3bYwg)Bh#bUNVNm4gsvd1ju{nH;>sI@O+gC5g4^aKS+=v_$sdE zKO(Xn?Z3&Rh}cUbvR9&9M0G@!CW&OtdH=BoUsft2YC&+ISL&j}TVi{epkdaR);E>v z3Y%;e2U<$JRIdN}wMr*O0LB79u>ewEw^7yn70ki^2X5?05nDCy$Y@5QkapeZ8pfG_ zl*3^7bj+Po+8w2ZQ;?YPmJtl7KO-CW4~!!P23J`onU}3d)0Wq0D^f{8p!MK)Y-rUA zrXZNbvX5m(P$nm`4q6E34-vu-m+;`#3;$A_Tk=kta??GDwojU(J5Kh&+U11h6?(gp(Oi1vf}lIkd~E!E(c7-4kb!4%Ii42)_kcgR8gBg91VNz*C;J%% zW3L8TwftcKGIRPXziGIfF%2_t%v$h>kE22RJZgr4F~_*yFcP2*SsJO)_~jwh>s2$e zt3~Pbm2{6Bb_SL2zSjv06c|Av6^3!j+o$ffa z-#$NBjoALEt_1=#xwj?hpD2;KSH&TR-?@ zeriV5$K3E)BuB+V1^uYHKpc%r7NK*$SB(ySCrGV2pVT^w^?KI=NE>xPn`NRqi4T_6 zdf*+^UNa*oK$a**J$JQ7?SCYlWmr^g+lA?lp*sXgX{5UZ3F(rdM380%B$Vz3i*Ar^ zsgaH$1O$0dK$=02?#}P_{r>m|Js4;9?0sL?TI*bjQ2Jjm)3-kPtVR*In>cjwK+OGr z=S@1xUDAMXIqzgx-%5ko`tPv)R(#spZs_@z65xw~{m$B4l3dSf;j$l>d1Pv~v#APe z&G2A67V5tv+wXtvQSpNW8i}&n_>$AVw^i*+nE#^E>i7{BHXyVb0S7BX4yy|By}n|k z_fLBZoBh*avw@Sw;HD*YiPK<4b-dPweVMBc?x#zAH3#zO9_2xRced~JFEmx$Ni{<~ z8`(P}HLsOY#52vQ*|`!;nY_&S4X&5Mzw~M86{vB4!AJE5e7P_$#=2^n12&G$XU#Mb zRb0Hwv)8hP+|Vo+Ri`s__s?1|;WuQZtEI4q&qFYQ(}ZF%mTARphJG>Pdjatb?el2j z0x_@!k#pP*uT(|%)q&BOVB;+dkm32N*}M-yj9?r`ha&vhW#GI)%8J$%+etVmk>n(K z!A!4eZk@COZmXD_6@D{1vlx!M-)8jbz{X<01XhK(h5oQdfq=awesNt?7&X%2RV*#@ zC;Bj9so=+Z9C&pGC2t`al+>q4@@Lrbdw)p^nP|Iu72xgd)-yDlZOOs>Tp(1Jb!lox<_A# z=h(LEgxig}EqcF1IEclx@qEFODRR++EXAUJn*Uti`W&c3jLhK>5}4!+(VC;R3Xz-e z2EVPaywrUCr844MwCw8-&LsrMYMm(9lHTJ$$T4BM)=Bm^_$um zx;87eFsOq1fSR`pw71j@MN9YzZ5+}x7Iw#VV&W`wF9_>In`y66m9U5P*rkToF!?~D zG|@;zZbyjB@9nZ7{A=Vzfp0(y{B{wQ$m@x`;>Z$z!8L#&ro%Q~iB_-KAtv z?XFcbPJ|+FxH;Zn9cvDH8 z#v<0j5m=_*q~3qCk@?)}p(4U}z;&POJuZG-7={R66aE?a?cE1ofQ-xyV|5?V#YQF` z!f?Y7^*xwqW~rq(@UQRtNHlqDqXGW_hH^;DCV6_XVvUCUC2woKNdfZdsWW6V<}Wbk zS@p8wPw<27&hT0Cw{X1~m(4?)U6pYNe1uHsxv1S=lie_cVWh0}g(*a36qr_U8>EQ8 zf67Wp82h}sV@@7#rI`*aU+|F~b52TMo7_N?{p4nycMREHF>j6F9|o|{Mb~1@eqWkK zJn-vO6OxwC??GfQ@>mi2>>xr%3SSo&`AevrU^F8BYo_mpm&lMKdRe7#vV{&*F|DK_IcJ(omXL;ZMv8|;QFokkqf@)h;qF{M}Ki-3>vU5p+}AZ%z(V6712=VTZ{I{)M5eaB@k zRt{syx6eug6S?JOyu#MKdw+roeo>?@C!M z_OZ+e_LonrY#+B$qe?D(aXiW9ZEOU7g%>4zM(uyKP3`$!hFR%Gb&|YdAMH+gOvKMdCQOJi5`EBOT~~Qf|!PFrpyY4 ze;d1ySsCj8aa^Wu10CDUo|7tt+x8f0BFs?4DjT-XmSc|}w3U^T(_Sp?(X0du%DjSt zpi_k#H+JneI?Nw;^UoTuKY_f#!tky-mZw3Rwp>< zZ0RwId#oBv_J_5qXUUNGgPmkx?Wbi*n+)r{SGEMQFJ(-X6e7^@!XT0lG?Wk2e)b#> z&=H@*zV}PL+ontn_VF+7?tdGU6Sw&$Bgp=q197QzEZ4r^$51=9K)bVjQiNlWj$6Ut zRkbP|dw@$y@dhN8TyRTVaQ@KxRk3cCf|==EefH`Ej(WJFN>_!ETVH$XuT|PPp}9em zXalmOSHS5##ZU-&5K zj#U)uEy?!m&C7F#;Stg5j**UF`SKc)wt9|!e!*JfE~=du=Vas;lqp^`byD$Nh&56X zgY;C-?Mbx^&RoKK8n3Je>1vTiHFS6)Lf_$Y2}Sy>9TT%e*V5Pcwgh415lu4+<=kUe zsMDjt{#fnAtToRN%<1QhulzP3*Nk&vd)sg4|FmkIpC->tyETC{M9~Pav{!4FeosPk zA8gQ9ME)g44bQ47LW^w{GZTj%XhOH)xBcF+qk%Y#pZ8fn9Cp7Jk@Vo?p$oa;6}^cc zz2SKzK_-W4uQx$~7G3bsr?;09N&e7=W3*5mS(~Ay$T)=Vr#(8ON84GzPq2PUd#jDt z#6h9&qBKT|Mg1zj9Z-xhP+Rh&ca@}7%eS++?%o#|fBjRfSr$J8SAWZ-L#{nfJ^rSo zo0V|he(x~%_d*iSGDC5`g~5HqtoM5LSScFKSQG;#9fSiv6&oGsk|Ttep0mq8{9_BB zUlmzW0DGBXg>y$x{++J~9mAeySy@E;%UKbbu^pajom#IGiolS+Q%U?d`e;xi%vBZ| z>B2&c`jV|621(m)>p7`3zN(UFex&?OTb=3RAGyUp+_~#LtAUDi1QQ58d7u7xZt^ee z#E2_7PUyGMFx(+9&9Y<7IC+}+-dh*;E@XeL4pXKrYpqU#m^m|W@C)$y?(cXo&Q%%& zsWRK++D<;$c>ORz`u*nh>&1~H=8rDrhIay04H9?}!`HcKRLEZg{@zI*jCpwKM~mM+ z#O8C-y$kRnJu7QbA#r{XGIA}G)RR48UfSNZ7I-R%C2hR=U{G=F(7B_4#CyVjwo0ah z3n~56E9{JEI?cK<)i$Mi5e@#;_xR+WXG_oJx5SpFP)i5-s~d5tgosTqk}Q#i9? zv~wTX3kP-Ik%!lPf%?^Jxunw~pyO!v8Ax4z>Xn>UboG~g2ttWo7cZ|c=d6tX6NG#n z-iAP=QeSNP4G5=ilZIu_KU%YOlfAL8?jW&lSs1jY_uz%JeDGS12d3kT*boZLw72%z z)jHTPDc8ZVy(gp2ZPC+P7dMKbh%WI^#J$NIoUW?EqaB@{y>(lGApFNKTXnZh8|vlc zu5#r~t|xqfeYTpsRsu>cHXon{MTfhLuPl^Qn$5gnxn4*_kZ&p5@v_Q0WP0j8)&Zqa zVrl@Mc)Fl`Q_%|Xkgyz}Hs#;?FR01n`tSLd+Oe+^U9x>6B_wIZ}Ms&eMLCV*M-79n%k$5ylM&+!4frQN;|JT5++Y2bv5Ve(bdG zN~cB2N#UV7XJLSE!`B;~s%5su-Ph!prnpc=(c5@30V{(A7=rInV(yTieuk%=g)fJE zBPAhBi)tR62|W?E0%88bxX&)L>SnFtk`qsYvT#wI6MpnymC@72|M%djg>dI?dlYsv zIbZVvxy8#zJ-q_6I(+%&gAzfya{=4Lqnqtf9?~_-@n;=Q@-Q zg#u&Fq1-Qc`G@PlsGj#EbPY7($5r`7m^&?Ktxc*3S8jDcP7tejd(NL#9zWxGyMI^i^W-woOOi|4I2xK__C|i{^zU(K& zG@YzsbE0j&{#1}Wxtv=0SGD9$hb;&>VRRo|O&7Xx6a88Zsl~8p-G5QMD!uM)i8N)x zs?bGwR1Y3L+a_zb=jmqP$31+0jNU%m&QdGBJLvNL`ta>B`c3&|$W5L>C;z+sJ9`LH z?xr^sQC^A$zntGKSA=elh9W%7@lbnxAnkMzG^Z3W6NJ}L#Z})Qh{xhehNV7JZ9f6W*ScpyJfX-NYg3MNe}A}-UC(P6DI zn6dwjhtiv97Fg|VG7|+MC)?Q7D!@I2EjfX;a@#?wS}1~W_Z3XqC^ogqbie__LwY=7 zWuUUHKH;(;k1|Hf7{)Lb^{9TtpJ^mV4Ge5;AbWontPk3Ca)roZw2BD!N~dxzezp=? zzuxT$7_{9vvs82XVmx3FmH{>`UrqeNHj4OoCrx%p=ewcmp=byeixzy4r2tr3FOtD< zUzmy_w6uGs2&59$(t@0S9s;^{uf8I*B#kt=;s|bKp!uH>qZ@TdBVFWs|CvAhy{>~+ z=r9Fxj#+;2YD~{^E(SUoyt1$Bk>08{^NEY1GdujfocnaHC)6*B{+@hx``DuAT6F$+ z%KsUDNZXg|GDXC3w*O&bAZ{lF;wvh@I~y_HCcfe_CyxF)4MFlE{+wv+iPl8=EgcfT z#kDx*v%6mdS5g=K7fVD6@M<22Rh=`_k)Wi(icAw7KK+Ie_P|GXn3-9Flouk;AESk) z7mjGkAc4lEp!7B{#4kzWrGbiWs*8@i4FVgJncq{Zz2UDL&^rCYO0gSn2hiZ<36)Co zUl$mJyZl9|+gj|Jd#ty}tN?7Y{RKhDp24^{ zAIt;94A5#q5CXhYHGOR34*z(-XUoFbi3_Th%?ns4154Ny>t6d_(+k1{hPr_^LiOIi zdb#eD=?R@#HEaUG>g@AoAM2ML|Hzv7wb(wBSeZ+~SWH5Lcg)ps`4PP;G=NQZQ%)P{y$AO`l;Sc=KsrYpY6qmVH0#rj_;#RGrIS#2JBvHu9r zf=ZT6C{>dRB;myNo6e2rGaPcg{hIdYuOMjya+tkk^qm}a+RLrQrI<~>pM0|Cg^LCf z(tPZf%#n=52-Wg^;o`^+xH5L$Hc}>7)OO|E6JveK_l$feDZ)I3U zFbJ_ai^-6d!Wc+PQBZ6q8j7gWvha}DYS2M^Yz?2R|2RXo_!3xY>Rf4KWEkQxmIz|} zxm!tnC(muRy%~77RXX(`dq2UR?+H`JLuS=J1UYO)`5mh}&)9$`BXuB6O4h zVSq#+}`@+{xrWv;-jx0)!cA>nJVJ;DK!V>ISLM_22i0pURE-=E- zo5$hI7iR2R-u2h}#%iHwW3}Pg}!}GY0+V;E%kpxjwYj zb9Iti*b&zANaHdTE|DmIWguqt4d-49O7xzntrI`OHc^-F%N+W96g+1~h`lbCJ(EE3 zEr(m1sXOun4%MYu4Jx5D&Uj+H^O;i%yCmZ z-WFk>FIfdfemQpMM)=8y;`{lFiVUo&lnEBr?~GP<2@<{%;5YzZClDv|^ts6u@VeVC zwY$t;p9F`|Uj$z$l{mPDS|1pVPS?09(<0NbkyPH+VU-DfPfT3|PK`GzLL06gd3^p|_FKuRog0^1s(9w}e`mFrD9_1w3g*yn3Bnro#dgOh zg2d|w5=1ED?i_=>)pf#0QC#*7cE1~*hQcp%gVS{EDKrZCStxJn6Y93l$)UHjf$arD z#gL@v72>y`Z*sWF0WvLuhiWc-4MFB){xj2d`XZQM*9(R147!8wx5vwI^9Q=pn2>AV z>2x1WunN%7fTDL+zvtjCX1y+qenlG)C~wwa()iipN2XI`TUyo(9Y}B=Zz@3rglN&m z6;sCffmU``f;F|VY?(=-`bvl(Jdl?1aaV)pC%dm2`bsxguZ(lH4rA>9K7oybqvj9_ zqp?kbMAw6|hB>vG(9MZZy20(>^i2s7sv@XT30iEWBL)p?aO9V9htgS06Vg2Z=KIbT6>*?5>DtDIy7+ zbhqlzcr$(MSHB#rO7`t1;-EN*Ak(=G`RsE^>j}i9vsi^tTF` z!s%(dyWg)E-uM_A?$}LrJ->ljtwP7M2n6mVt?RAH zb8UX`WA3Go-LLLB-6-tm^xSjHB;OySht3{fC=8FSf@K8-JG4^geitk=WJd24&c{)~ z{Bq&gOB3*_{+7H?V(N$#csOhIz`m61b<$S9d^bQu(4WTVG> zJ8)^KgiDZVEB_l8U)Yobqc8z6;g05s^SCIb){Nz*YL1DjoK~aCc=hp2rP5@q&Cgiv zp1dV3s|;Tp>B*%X4_Eez??lm&>FQSz-9w#wCV*A*Ir(_qBotB7dKn9NX-1Tg^NABh zs26K_E(_j4z1yB|3xN&y!5C2pf{z_@Q)`u3KaHbKrHNso83%I{u5y@gtelqpB) zU{wzo$F#JALH2DH9QXZkVqO*#JFRI}oYoQ7v1Hmll;f&f(&Nu@ma9@}R_|R|mkM3= zziSst-CR19AbRM~6h{ga4^u`t}>_p?ofyF3!<5@+8x{|R>9!RCfG3JjVq<5B=```=Nc81E13-K7QoRc|LkQ%vH0gd{eYoUx zb5U~I6T#|!^)#=d<+C-(`pkwSZ8pn^tk~5Jj8r|4X=5jLg!c3F2W{(?www>a+u~FCh z^XEJ^6h;PtfqxKE#;fVyI>#R4&v{kbN5PJ-TTPa&X3ROxC9^AE|1Kd!{r3c|WfkPI zFF-^L$A)@m9FKcIe7LE*{j5NRyK(7+@$(Apnb?^+b2~D+lzvC74*?Pp6;7~Jr^9^6 znbR55diXYuSLbVa{I|ga*ZOmiY~`5uJyEk&U_Hx(NhDeX)RyX@|0+wn@6Dt zSAXC^6k;31#-Sh17ViT~aDhcHvM+z>)m0kkTTy=f0m8bB<9K84Fg>zqDX%yLcwt*1 zd9lBYi?s(3-OU4NE#T~huLv#MhSx@ISG5Tz&-;4{{AnLs$~yMw47QQ;T;w_##JosP z%H3~DJ{l2ze<&f6mZb<~{#gV(NFT%)LBs4?DS$n8^q%Bl$IPYU+xq&(H!>`eI-csz zg1Rd0DY{kAWG=+I8Ukr{VRjh!+9Mk*5*XxgZMy(pXqj7JyL_s!Nu}{o-j3OO@%X{d zSXZo=te~#|;v=`!MFw4w?G5bug3z_m0a7+h?>G$wUv=zUBzpvj4Mgs!OW?LKo#~o6;aKsM9D8>21uh0I@jH#3~OJ^Y! z=6%Olw2rPZ&tVxXNypmpc7?;oCn5TDhSvW+i7b5Nnxt9E$%=9r;T-hzqIDN+9&;)F z0E8jdc&T{?(&|Wk)%B(f$+W z#2Ed$D--;#D0Ea!kdhKKwN&mOmxOpQAQ99)M<&w*m5qmREsdO9ZSu>N@($?gg-BbX(|@ z9)_;*b#5c#m=>rI3@wB^pQk=@LQK~cu??|t|0^56fC>K>Wtq#%*R<68YM16PEp^hb zAI<&pN^@1e9e_#XC+~j1R9Qh!l3@4#HYwp}t(19Ei*eLsGvURTaK$4kzAp>N=YK7C z&Wx7*@|n}vtGTsiCbAEECK#v?@6TzTKk(%fG8w3$0d>*efmVBQm$=?{f#`r(ES&4* zdd7%cYXd|R3&~nuGy>9V&phXkQKlgULLE_FD^IfVe&PkREm+2#){yfxSW}^$Zzr*# z!jFFsq$)|d;7>3|=;5$;cvwnT9{v+Lc+2;!xSD!C-6%z(r0`MHW z8uz=W&nzzn>Me}C{>qTr6l_DNzmnJ%Y_n1y9Y1yp^-=)H58E0$K?fNhyVStwf+#J# zG{pm)H@Cgb*h@1lb_HH6;(oe?LY}y%zXep8>ua@%k+(Mhl*=Ng08Vn5MG_&c+Fb4r zD`1abV{f-db1*3*tffH~fgn3@#-sn{?o9)_G$9W=U75_cvujPl z)8aK^=dbgdS_t{&a>_=hR-h>I=4c zRvb@u%c>&~S0v)mM)R$!IB7_66T)K{D@21XoDN=OT9Gt0Rs z>5m1PcSogInm^?;XhHYS-OEIKZd7yWNA5%{{T*KvG@tG-Td^cfSIoyl_8E1Ege-_H zVYIPj5kXpBegOF%Kov3i>kNi>Ca%@!`UOxKjoU>9@og%IY2$p%;-W%WFW*j^)jLur z_Jv%A&81HCi;0!5s)?O{t{ZV}Z^;i$SG=0;fn@?$l4@l0P({zadty~Dbr4s(!I5s$ z0`Urm8I2Y9kKL^U*D8X*_>=+ta9SB7NcidNZGVk2U5I!B+tLmH~q=gU7%^8Ab6#NC@KeTNzqtLU}G6B4LtH z@w!sBlH^pM^__p_^HZOPHWh$(Bx{zmHC&bKviTzW8FO#w#S_ zj;Xl72WWd+L!}t2NBc%290_eQozRf^@YvJB5B?%wabJB@2P76{_>D+hFNY)@BH8fn zITXLCh;1)LdTZ}NS*eXCF?q6aQ~+f9Lu>)~2ol}_7D5JR|E#Lm>o|a*v+1kK%B9>Q zx7F|Ch|yZJyh{{frejj}1A*2MKdi7_xr$s&O!Lbm@Q+GFfJos+PR<~tpLmTq`elD*f zLka4xJkj&8jptYgBacwZ-4j-%iRGgC|FDC;5xt6D+_4Mqev1LXl zJ+8?iCA>3pz=4-*XtAd9HvM}@YOOt2Zix6-PV1~5j*l$nb?<*j1s99aTJ;A=*@0pV zj}i%X(x~9KtnTB$DK?1-_}uioJ+AR`x`=~9dS|_E3yU$%3Pb?$3GTbV4=GF9)F$6s zfedC`R$3?rf+fev#=+0 z+M>^GMDE9yMR5v%Nb+JxAk=0t$bFrJJH`bEz?@RCBxv(ZGfv{^v02`USW@BrF036>o~=Obc2^%`?>}n|MG52I|r_r>0g)Q89yYO*OQ_dYp!Z%$^~mn&VDBfpF(j^lQW zvu-sS-?x~g6e%2*eD83f#IPN9%HOjVbto5zZ0_l{2;(3ceYq?izE6uBvgtd=XKFIG z$!aji*x{uJ+O!C`C_Qpie2EhygZKTS4GYDkDn{+7W-Y{Ggpk?Y|Il1O%Awa2#ojZy znT`QBmVYC?ypV2cWN7x}4EstYc|zLp-J6F96|)b+&@`22`ae)%m%zjAGlEWpHAwqT zTn=JdtZQd+6L>0CzJ#IMhEi7F-NBnfL!;6^0&ToQd&SO=2Yd!?LKw?t}%s|h%wHPfi}!A|2gCH367DS| z$Ir6C@I5Mjc;7y^So&Jrv?1gqo4rxt-yo`MLY8(um9+S|u|PC*Vm-Rxt>`!@QPry- za(}7irjEoE?hS?SI`5p`mjFmK_zW+cM>E?HfVg&esEug3??vo0_E=&wT*#o>*K_##nR;bwpT_O)<~Qx#l9W2SNLK7 z-4w|$0iXknB&aVn2%2xFBh;^o%06fHsB{QSEI+s(2>0`YVEPWk!fT=IF76(=(ZJ7qPCP1mI_GrDl+J(es}rF4t-EKsoWD`wCnxb)Q-*^ zm#<~f|NcIuQcg0g<#8Z4)9sPMn|qge%xyVQ%jhd+^J{lJWVNUw^d4+y3eZts7y*>j zJ9wEM9Q<`gooYWd2^xo75;?ZUA>Q6cocknh3Z4113>Sz~oJU{J2=PGD>OM=qbULQI z!X#y?f5|SAx23{;bgV%2QTP`Clc#dUv<+BA*J6PXx1FG5%*fYs|D*}$+9I}<{;&B| z7TMkxUrq(As#lqPS0^u|SJIvwneN=DxNQR)pRPNHw0 zd`;CwEol-+CuJ|_n#Tr=K zt~{kVG=~Kz#(QCjbwCLfXF8jEQs#?gOo`A=5_$o%=1h z{VqC#hqx30kM!L8^!1Tq491?o*^l8No`;iCW!JOl+d#ooMqVFCcU-?UL|=53XUoH1?R1k$ z5|kddEo~v9;wk-<;+AsSbN4a0x}5g7Px_BPGq>`P#EDSiST1Cbvr3Y=tj9#<)Tdxq zq_e@Q+mz|m;T!)4@=gko$+ORv14o40Cwp(Gm&d>3V%KoI)S5X<*15)N|8>Cs3xpCp zAs&s4A_@D%ke0PITyP@-^Cmwhq-7T(@5mM7|2!0dKcGK~71Oqa1}DXfxo$ee5+@Bq zz}atsRNWQK=GG{_i+m8wv;O
      LBua9P}|El5o%`@e3O7em< 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
      B~%X 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%0DiTWTe1i!`m8Z$ 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 From 632f67b92ec9afa78fe88120fc6cb0ead86e879b Mon Sep 17 00:00:00 2001 From: chetantoshniwal Date: Tue, 9 Jun 2026 09:53:48 -0700 Subject: [PATCH 10/25] Python: [Generated by SRE Agent] docs: clarify checkpoint storage security model and deserialization trust boundaries (#6295) * docs: clarify checkpoint storage security model and deserialization trust boundaries Add Security Model documentation sections to the checkpoint encoding and Azure Functions serialization modules explaining: - Checkpoint storage is a trusted data source requiring access controls - The RestrictedUnpickler allowlist is defense-in-depth, not a security boundary - Developer responsibilities for securing storage backends - Guidance on using allowed_types and strip_pickle_markers Co-authored-by: Azure SRE Agent * Apply suggestions from code review Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Azure SRE Agent Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- .../_serialization.py | 18 ++++++++++++ .../_workflows/_checkpoint_encoding.py | 29 +++++++++++++++++++ 2 files changed, 47 insertions(+) diff --git a/python/packages/azurefunctions/agent_framework_azurefunctions/_serialization.py b/python/packages/azurefunctions/agent_framework_azurefunctions/_serialization.py index 4ed080ecebb..27730fb441e 100644 --- a/python/packages/azurefunctions/agent_framework_azurefunctions/_serialization.py +++ b/python/packages/azurefunctions/agent_framework_azurefunctions/_serialization.py @@ -14,6 +14,24 @@ - reconstruct_to_type: for HITL responses where external data (without type markers) needs to be reconstructed to a known type - resolve_type: resolves 'module:class' type keys to Python types + +Security Model +-------------- +The underlying Azure Durable Functions storage (Azure Storage account) is the +trusted persistence layer for serialized checkpoint data. The +``RestrictedUnpickler`` in the core encoding module provides defense-in-depth +type filtering, but checkpoint storage itself must be properly access-controlled: + +- Ensure the Azure Storage account used by Durable Functions is not publicly + writable and uses appropriate RBAC / shared-access policies. +- Never route untrusted user input directly into ``deserialize_value`` without + first calling :func:`strip_pickle_markers` to neutralize injection of + pickle markers into the data path. +- Configure your checkpoint storage with ``allowed_checkpoint_types`` (or call + ``decode_checkpoint_value(..., allowed_types=...)`` directly) to restrict the set of types that can be deserialized. + +See :mod:`agent_framework._workflows._checkpoint_encoding` for the full +security model documentation. """ from __future__ import annotations diff --git a/python/packages/core/agent_framework/_workflows/_checkpoint_encoding.py b/python/packages/core/agent_framework/_workflows/_checkpoint_encoding.py index dd1fb3d7044..c66faae75e2 100644 --- a/python/packages/core/agent_framework/_workflows/_checkpoint_encoding.py +++ b/python/packages/core/agent_framework/_workflows/_checkpoint_encoding.py @@ -13,6 +13,35 @@ value types (primitives, datetime, uuid, ...), all ``agent_framework`` internal types, and all ``openai.types`` types. Callers can extend the set by passing additional ``"module:qualname"`` strings. + +Security Model +-------------- +Checkpoint storage is treated as a **trusted data source**. The serialization +format uses Python's ``pickle`` module which can execute arbitrary code during +deserialization. The ``RestrictedUnpickler`` provides a defense-in-depth +allowlist that limits instantiable classes, but it is **not** a security +boundary — certain allowlisted builtins (e.g. ``getattr``) are required for +legitimate object reconstruction (enums, named tuples) and cannot be removed +without breaking compatibility. + +Developers **must** ensure that: + +1. The checkpoint storage backend (file system, Cosmos DB, Azure Blob, Durable + Functions storage) is access-controlled and not writable by untrusted + parties. +2. Data flowing into ``decode_checkpoint_value`` originates exclusively from + the application's own checkpoint storage — never from user-supplied HTTP + requests, message payloads, or other untrusted sources. +3. The ``allowed_types`` parameter is specified whenever possible to restrict + the set of reconstructible types to the minimum required by the application. +4. Never pass untrusted external input to ``decode_checkpoint_value``. If you + must accept external JSON that might contain checkpoint markers, sanitize it + first (for example, :func:`agent_framework_azurefunctions._serialization.strip_pickle_markers`). + +The allowlist is a mitigation that reduces attack surface but does not +eliminate the inherent risks of deserializing untrusted pickle data. Treat +your checkpoint storage with the same access controls you would apply to +application secrets or database credentials. """ from __future__ import annotations From 2a345e5d3b2ba3096bde727256faa1ed544b9895 Mon Sep 17 00:00:00 2001 From: Hasan Ghomi Date: Tue, 9 Jun 2026 21:00:42 +0400 Subject: [PATCH 11/25] .NET: Fix Magentic to share agent replies across team (#6222) * Fix Magentic to share agent replies across team The per-round instruction was sent untargeted (fan-out delivered it to every participant) and replies were never relayed, so a later speaker saw the prior speaker's instruction but not its response - inverted from GroupChatHost and the Python reference. - Target the instruction at the selected speaker only. - Broadcast each reply to the other participants (buffered, no TurnToken), excluding the responder via _currentSpeakerExecutorId, mirroring GroupChatHost. - Persist _currentSpeakerExecutorId across checkpoints. - Add a regression test. * Address review feedback: null-guard, explicit checkpoint key, drop vacuous assertion * Address review feedback: centralize checkpoint keys, clear current speaker - Move CurrentSpeakerStateKey into MagenticConstants as nameof(CurrentSpeakerStateKey) - Clear _currentSpeakerExecutorId in ResetAndReplanAsync and PrepareFinalAnswerAsync so a checkpoint taken in those windows does not persist a stale speaker - Add UTF-8 BOM to RecordingEchoAgent.cs to satisfy the format check. --- .../Specialized/Magentic/MagenticConstants.cs | 1 + .../Magentic/MagenticOrchestrator.cs | 63 +++++++++++++-- .../MagenticOrchestrationTests.cs | 76 +++++++++++++++++++ .../RecordingEchoAgent.cs | 37 +++++++++ 4 files changed, 170 insertions(+), 7 deletions(-) create mode 100644 dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/RecordingEchoAgent.cs diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticConstants.cs b/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticConstants.cs index 2ff41cc43d7..b71a50390c5 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticConstants.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticConstants.cs @@ -5,4 +5,5 @@ namespace Microsoft.Agents.AI.Workflows.Specialized.Magentic; internal static class MagenticConstants { public const string MagenticTaskContextKey = nameof(MagenticTaskContextKey); + public const string CurrentSpeakerStateKey = nameof(CurrentSpeakerStateKey); } diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticOrchestrator.cs b/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticOrchestrator.cs index 31e80d87250..5b685dc8356 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticOrchestrator.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows/Specialized/Magentic/MagenticOrchestrator.cs @@ -90,6 +90,7 @@ internal class MagenticOrchestrator(AIAgent managerAgent, List team, Ta private MagenticTaskContext? _taskContext; private PortBinding? _planReviewPort; + private string? _currentSpeakerExecutorId; protected override ProtocolBuilder ConfigureProtocol(ProtocolBuilder protocolBuilder) { @@ -196,15 +197,46 @@ protected override async ValueTask TakeTurnAsync(List messages, IWo else { // Subsequent turns: agent returned control, go directly to coordination (progress ledger only, no replan). - // Capture the participant's reply into the manager-visible chat history so the progress ledger can see it. if (messages is { Count: > 0 }) { + // Capture the participant's reply into the manager-visible chat history so the progress ledger can see it. this._taskContext.ChatHistory.AddRange(messages); + + // Share the reply with the other participants except the replier + await this.BroadcastReplyToOtherParticipantsAsync(messages, context, cancellationToken).ConfigureAwait(false); } await this.RunCoordinationRoundAsync(this._taskContext, context, cancellationToken).ConfigureAwait(false); } } + ///

      + /// Forwards a participant's reply to every other participant so they share the running conversation. + /// The messages are buffered (no is sent) - they only become context for the participant's next turn. + /// + private ValueTask BroadcastReplyToOtherParticipantsAsync( + List messages, IWorkflowContext context, CancellationToken cancellationToken) + { + // Without a known current speaker we cannot exclude the reply's author, so skip the broadcast + // rather than risk echoing the reply back to its own author. This covers the window after a + // checkpoint restore but before any delegation has set the current speaker. + if (string.IsNullOrEmpty(this._currentSpeakerExecutorId)) + { + return default; + } + + List? sendTasks = null; + foreach (AIAgent agent in team) + { + string executorId = AIAgentHostExecutor.IdFor(agent); + if (string.Equals(executorId, this._currentSpeakerExecutorId, StringComparison.Ordinal)) + { + continue; + } + (sendTasks ??= []).Add(context.SendMessageAsync(messages, executorId, cancellationToken).AsTask()); + } + return sendTasks is null ? default : new ValueTask(Task.WhenAll(sendTasks)); + } + private ChatMessage? _fullTaskLedgerMessage; private ValueTask DelegateToTeamAsync(MagenticTaskContext taskContext, IWorkflowContext context, CancellationToken cancellationToken) { @@ -287,15 +319,18 @@ await context.AddEventAsync(new WorkflowWarningEvent($"Invalid next speaker: {ne return; } + string nextExecutorId = AIAgentHostExecutor.IdFor(nextAgent); + if (!string.IsNullOrWhiteSpace(taskContext.ProgressLedger.InstructionOrQuestion)) { ChatMessage instruction = new(ChatRole.Assistant, taskContext.ProgressLedger.InstructionOrQuestion); taskContext.ChatHistory.Add(instruction); - await context.SendMessageAsync(instruction, cancellationToken).ConfigureAwait(false); + // Target the instruction at the chosen speaker only. + await context.SendMessageAsync(instruction, nextExecutorId, cancellationToken).ConfigureAwait(false); } - string nextExecutorId = AIAgentHostExecutor.IdFor(nextAgent); + this._currentSpeakerExecutorId = nextExecutorId; await context.SendMessageAsync(new TurnToken(taskContext.EmitUpdateEvents), nextExecutorId, cancellationToken).ConfigureAwait(false); } @@ -303,6 +338,7 @@ private async ValueTask ResetAndReplanAsync(MagenticTaskContext taskContext, IWo { bool wasStalled = taskContext.IsStalled; taskContext.Reset(); + this._currentSpeakerExecutorId = null; await context.SendMessageAsync(new ResetChatSignal(), cancellationToken: cancellationToken).ConfigureAwait(false); await this.UpdatePlanAndDelegateAsync(taskContext, context, cancellationToken, replanAfterStall: wasStalled).ConfigureAwait(false); @@ -313,9 +349,9 @@ private async ValueTask PrepareFinalAnswerAsync(MagenticTaskContext taskContext, List messages = [await this._manager.PrepareFinalAnswerAsync(taskContext, context, cancellationToken).ConfigureAwait(false)]; await context.YieldOutputAsync(messages, cancellationToken).ConfigureAwait(false); taskContext.IsTerminated = true; + this._currentSpeakerExecutorId = null; } - private const string CurrentTurnEmitUpdateEventsKey = nameof(CurrentTurnEmitUpdateEventsKey); protected internal override async ValueTask OnCheckpointingAsync(IWorkflowContext context, CancellationToken cancellationToken = default) { Task contextStateTask = this._taskContext == null @@ -325,14 +361,21 @@ protected internal override async ValueTask OnCheckpointingAsync(IWorkflowContex cancellationToken: cancellationToken) .AsTask(); + Task currentSpeakerTask = context.QueueStateUpdateAsync(MagenticConstants.CurrentSpeakerStateKey, + this._currentSpeakerExecutorId, + cancellationToken: cancellationToken) + .AsTask(); + await Task.WhenAll(base.OnCheckpointingAsync(context, cancellationToken).AsTask(), - contextStateTask).ConfigureAwait(false); + contextStateTask, + currentSpeakerTask).ConfigureAwait(false); } protected internal override async ValueTask OnCheckpointRestoredAsync(IWorkflowContext context, CancellationToken cancellationToken = default) { - await Task.WhenAll(base.OnCheckpointRestoredAsync(context, cancellationToken).AsTask(), LoadContextStateAsync()) - .ConfigureAwait(false); + await Task.WhenAll(base.OnCheckpointRestoredAsync(context, cancellationToken).AsTask(), + LoadContextStateAsync(), + LoadCurrentSpeakerAsync()).ConfigureAwait(false); async Task LoadContextStateAsync() { @@ -344,5 +387,11 @@ async Task LoadContextStateAsync() this._taskContext = new MagenticTaskContext(state, team, limits, []); } } + + async Task LoadCurrentSpeakerAsync() + { + this._currentSpeakerExecutorId = await context.ReadStateAsync(MagenticConstants.CurrentSpeakerStateKey, cancellationToken: cancellationToken) + .ConfigureAwait(false); + } } } diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs index 30be5bd8736..7c5260f507e 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs @@ -419,6 +419,82 @@ public async Task RunCoordinationRound_Forwards_Participant_Reply_To_ManagerAsyn "final-answer synthesis must see what participants actually said"); } + [Fact] + public async Task Participant_Receives_Prior_Participant_Response_Not_InstructionAsync() + { + // Regression: each participant must see prior participants' *responses* (the running conversation), + // not their *instructions*. Previously the orchestrator broadcast the per-round instruction to every + // participant (untargeted fan-out) and never broadcast replies, so a later speaker received the earlier + // speaker's instruction and never its answer. + const string HealthInstruction = "HEALTH_CHECKER_INSTRUCTION_check_framework"; + const string DatabaseInstruction = "DATABASE_CHECKER_INSTRUCTION_check_database"; + const string HealthEchoPrefix = "HC_RESPONSE::"; + const string DatabaseEchoPrefix = "DB_RESPONSE::"; + + List facts = CreatePlanResponse("Facts"); + List plan = CreatePlanResponse("Plan"); + List round1Ledger = CreateProgressLedgerResponse( + isRequestSatisfied: false, + isInLoop: false, + isProgressBeingMade: true, + nextSpeaker: "HealthChecker", + instructionOrQuestion: HealthInstruction); + List round2Ledger = CreateProgressLedgerResponse( + isRequestSatisfied: false, + isInLoop: false, + isProgressBeingMade: true, + nextSpeaker: "DatabaseChecker", + instructionOrQuestion: DatabaseInstruction); + List round3Ledger = CreateProgressLedgerResponse( + isRequestSatisfied: true, + isInLoop: false, + isProgressBeingMade: true, + nextSpeaker: "DatabaseChecker", + instructionOrQuestion: "Done"); + List finalAnswer = CreateFinalAnswerResponse("All systems checked"); + + TestReplayAgent manager = new( + [facts, plan, round1Ledger, round2Ledger, round3Ledger, finalAnswer], + name: "Manager"); + RecordingEchoAgent healthChecker = new(name: "HealthChecker", prefix: HealthEchoPrefix); + RecordingEchoAgent databaseChecker = new(name: "DatabaseChecker", prefix: DatabaseEchoPrefix); + + Workflow workflow = new MagenticWorkflowBuilder(manager) + .AddParticipants(healthChecker, databaseChecker) + .RequirePlanSignoff(false) + .Build(); + + WorkflowRunResult runResult = await RunMagenticWorkflowAsync( + workflow, + [new ChatMessage(ChatRole.User, "Check system health")]); + + runResult.Result.Should().NotBeNull(); + runResult.Result![0].Text.Should().Contain("All systems checked"); + + // Each participant takes exactly one turn. + healthChecker.RecordedInputs.Should().ContainSingle(); + databaseChecker.RecordedInputs.Should().ContainSingle(); + + // The first speaker receives its own instruction. + List healthInput = healthChecker.RecordedInputs[0]; + healthInput.Should().Contain(m => m.Text.Contains(HealthInstruction), "the first speaker receives its own instruction"); + + // The second speaker must see the first speaker's RESPONSE (authored by HealthChecker, carrying the echo + // prefix that only the response — not the raw instruction — has), plus its own instruction. + List databaseInput = databaseChecker.RecordedInputs[0]; + databaseInput.Should().Contain( + m => m.AuthorName == "HealthChecker" && m.Text.Contains(HealthEchoPrefix), + "the next speaker must receive the prior participant's response (the running conversation)"); + databaseInput.Should().Contain(m => m.Text.Contains(DatabaseInstruction), + "the next speaker must receive its own instruction"); + + // The leaked-instruction bug: the second speaker must not receive HealthChecker's instruction as a + // bare message (it should only appear, if at all, embedded in HealthChecker's prefixed response). + databaseInput.Should().NotContain( + m => m.AuthorName != "HealthChecker" && m.Text.Trim() == HealthInstruction, + "the prior speaker's instruction must not leak into the next speaker's context as a standalone message"); + } + [Fact] public async Task PlanReview_Revised_Triggers_ReplanAsync() { diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/RecordingEchoAgent.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/RecordingEchoAgent.cs new file mode 100644 index 00000000000..83a0e994a14 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/RecordingEchoAgent.cs @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System.Collections.Generic; +using System.Linq; +using System.Runtime.CompilerServices; +using System.Threading; +using Microsoft.Extensions.AI; + +namespace Microsoft.Agents.AI.Workflows.UnitTests; + +/// +/// A that records the input messages it receives on each call. +/// Used by tests that need to assert what context a participant was actually handed - for example, +/// that a later speaker sees prior participants' responses (the running conversation) rather +/// than their instructions. +/// +internal sealed class RecordingEchoAgent(string? id = null, string? name = null, string? prefix = null) + : TestEchoAgent(id, name, prefix) +{ + public List> RecordedInputs { get; } = []; + + protected override async IAsyncEnumerable RunCoreStreamingAsync( + IEnumerable messages, + AgentSession? session = null, + AgentRunOptions? options = null, + [EnumeratorCancellation] CancellationToken cancellationToken = default) + { + // Materialize once so the deferred input is recorded and replayed identically. + List recorded = messages.ToList(); + this.RecordedInputs.Add(recorded); + + await foreach (AgentResponseUpdate update in base.RunCoreStreamingAsync(recorded, session, options, cancellationToken)) + { + yield return update; + } + } +} From 383d551b86fb227a22cbd666c0ed0a7c7e59affc Mon Sep 17 00:00:00 2001 From: Taisir Hassan Date: Tue, 9 Jun 2026 11:01:21 -0700 Subject: [PATCH 12/25] Purview: Parallelize PSPC cold-cache scope refresh (#5832) * Parallelize Purview PSPC cold cache path * Cache Purview payment-required state for scope refresh * Cache Purview payment-required state for scope refresh * Align Purview policy action dedupe and 402 caching Deduplicate combined policy actions by action and restriction action so restriction-only actions are preserved without duplicating identical entries. Cache tenant-level payment-required state from background scope refresh so subsequent calls short-circuit consistently. * .NET: Implement best-effort caching for background job scope retrieval and add unit tests for cache write failures * Purview - feat: Enhance ScopedContentProcessor to queue ContentActivityJob when no applicable scopes are found and update related tests * docs: Update purview package README and AGENTS documentation to reflect caching optimizations and policy enforcement scenarios Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../BackgroundJobRunner.cs | 31 +- .../Common/PaymentRequiredCacheEntry.cs | 23 + .../Models/Common/PaymentRequiredCacheKey.cs | 23 + .../Models/Jobs/ScopeRetrievalJob.cs | 44 ++ .../Models/Requests/ProcessContentRequest.cs | 6 + .../PurviewClient.cs | 5 + .../src/Microsoft.Agents.AI.Purview/README.md | 4 +- .../ScopedContentProcessor.cs | 98 ++++- .../PurviewSerializationUtils.cs | 2 + .../PurviewClientTests.cs | 24 ++ .../ScopedContentProcessorTests.cs | 398 ++++++++++++++++-- python/packages/purview/README.md | 1 + .../agent_framework_purview/_processor.py | 85 ++-- .../purview/tests/purview/test_processor.py | 188 +++++++-- .../05-end-to-end/purview_agent/README.md | 44 +- .../purview_agent/sample_purview_agent.py | 163 ++++--- 16 files changed, 914 insertions(+), 225 deletions(-) create mode 100644 dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheEntry.cs create mode 100644 dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheKey.cs create mode 100644 dotnet/src/Microsoft.Agents.AI.Purview/Models/Jobs/ScopeRetrievalJob.cs diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/BackgroundJobRunner.cs b/dotnet/src/Microsoft.Agents.AI.Purview/BackgroundJobRunner.cs index 85a4fa54c3c..03f73d8007a 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/BackgroundJobRunner.cs +++ b/dotnet/src/Microsoft.Agents.AI.Purview/BackgroundJobRunner.cs @@ -1,10 +1,14 @@ // Copyright (c) Microsoft. All rights reserved. using System; +using System.Collections.Generic; using System.Threading; using System.Threading.Channels; using System.Threading.Tasks; +using Microsoft.Agents.AI.Purview.Models.Common; using Microsoft.Agents.AI.Purview.Models.Jobs; +using Microsoft.Agents.AI.Purview.Models.Requests; +using Microsoft.Agents.AI.Purview.Models.Responses; using Microsoft.Extensions.Logging; namespace Microsoft.Agents.AI.Purview; @@ -16,6 +20,7 @@ internal sealed class BackgroundJobRunner : IBackgroundJobRunner { private readonly IChannelHandler _channelHandler; private readonly IPurviewClient _purviewClient; + private readonly ICacheProvider _cacheProvider; private readonly ILogger _logger; /// @@ -23,12 +28,14 @@ internal sealed class BackgroundJobRunner : IBackgroundJobRunner /// /// The channel handler used to manage job channels. /// The Purview client used to send requests to Purview. + /// The cache provider used to store protection scopes results. /// The logger used to log information about background jobs. /// The settings used to configure Purview client behavior. - public BackgroundJobRunner(IChannelHandler channelHandler, IPurviewClient purviewClient, ILogger logger, PurviewSettings purviewSettings) + public BackgroundJobRunner(IChannelHandler channelHandler, IPurviewClient purviewClient, ICacheProvider cacheProvider, ILogger logger, PurviewSettings purviewSettings) { this._channelHandler = channelHandler; this._purviewClient = purviewClient; + this._cacheProvider = cacheProvider; this._logger = logger; for (int i = 0; i < purviewSettings.MaxConcurrentJobConsumers; i++) @@ -67,6 +74,28 @@ private async Task RunJobAsync(BackgroundJobBase job) break; case ContentActivityJob contentActivityJob: _ = await this._purviewClient.SendContentActivitiesAsync(contentActivityJob.Request, CancellationToken.None).ConfigureAwait(false); + break; + case ScopeRetrievalJob scopeRetrievalJob: + try + { + ProtectionScopesResponse response = await this._purviewClient.GetProtectionScopesAsync(scopeRetrievalJob.Request, CancellationToken.None).ConfigureAwait(false); + await this._cacheProvider.SetAsync(scopeRetrievalJob.CacheKey, response, CancellationToken.None).ConfigureAwait(false); + (bool shouldProcess, List _, ExecutionMode _) = ScopedContentProcessor.CheckApplicableScopes(scopeRetrievalJob.ProcessContentRequest, response); + if (!shouldProcess) + { + ProcessContentRequest pcRequest = scopeRetrievalJob.ProcessContentRequest; + ContentActivitiesRequest caRequest = new(pcRequest.UserId, pcRequest.TenantId, pcRequest.ContentToProcess, pcRequest.CorrelationId); + this._channelHandler.QueueJob(new ContentActivityJob(caRequest)); + } + } + catch (PurviewPaymentRequiredException ex) + { + await this._cacheProvider.SetAsync( + new PaymentRequiredCacheKey(scopeRetrievalJob.Request.TenantId), + new PaymentRequiredCacheEntry(ex.Message), + CancellationToken.None).ConfigureAwait(false); + } + break; } } diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheEntry.cs b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheEntry.cs new file mode 100644 index 00000000000..6bd9d40853a --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheEntry.cs @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft. All rights reserved. + +namespace Microsoft.Agents.AI.Purview.Models.Common; + +/// +/// Cached tenant-level payment required state. +/// +internal sealed class PaymentRequiredCacheEntry +{ + /// + /// Creates a new instance of . + /// + /// The payment required error message. + public PaymentRequiredCacheEntry(string? message) + { + this.Message = message; + } + + /// + /// The payment required error message. + /// + public string? Message { get; set; } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheKey.cs b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheKey.cs new file mode 100644 index 00000000000..3c9ad4f813b --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Common/PaymentRequiredCacheKey.cs @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft. All rights reserved. + +namespace Microsoft.Agents.AI.Purview.Models.Common; + +/// +/// A cache key for tenant-level payment required state. +/// +internal sealed class PaymentRequiredCacheKey +{ + /// + /// Creates a new instance of . + /// + /// The id of the tenant. + public PaymentRequiredCacheKey(string tenantId) + { + this.TenantId = tenantId; + } + + /// + /// The id of the tenant. + /// + public string TenantId { get; set; } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/Models/Jobs/ScopeRetrievalJob.cs b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Jobs/ScopeRetrievalJob.cs new file mode 100644 index 00000000000..c23553f1855 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Jobs/ScopeRetrievalJob.cs @@ -0,0 +1,44 @@ +// Copyright (c) Microsoft. All rights reserved. + +using Microsoft.Agents.AI.Purview.Models.Common; +using Microsoft.Agents.AI.Purview.Models.Requests; + +namespace Microsoft.Agents.AI.Purview.Models.Jobs; + +/// +/// Class representing a job that refreshes the protection scopes cache in the background. +/// +/// +/// Used by the parallel protection scopes retrieval path to warm the cache without blocking the +/// foreground ProcessContent call. +/// +internal sealed class ScopeRetrievalJob : BackgroundJobBase +{ + /// + /// Initializes a new instance of the class. + /// + /// The protection scopes request to send to Purview. + /// The cache key used to store the response. + /// The original process content request that triggered scope retrieval. + public ScopeRetrievalJob(ProtectionScopesRequest request, ProtectionScopesCacheKey cacheKey, ProcessContentRequest processContentRequest) + { + this.Request = request; + this.CacheKey = cacheKey; + this.ProcessContentRequest = processContentRequest; + } + + /// + /// Gets the protection scopes request. + /// + public ProtectionScopesRequest Request { get; } + + /// + /// Gets the cache key used to store the response. + /// + public ProtectionScopesCacheKey CacheKey { get; } + + /// + /// Gets the original process content request that triggered scope retrieval. + /// + public ProcessContentRequest ProcessContentRequest { get; } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/Models/Requests/ProcessContentRequest.cs b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Requests/ProcessContentRequest.cs index f8e9602cefb..d41a3a20905 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/Models/Requests/ProcessContentRequest.cs +++ b/dotnet/src/Microsoft.Agents.AI.Purview/Models/Requests/ProcessContentRequest.cs @@ -53,4 +53,10 @@ public ProcessContentRequest(ContentToProcess contentToProcess, string userId, s ///

    S~e-#tL{=x2OY4sWuvF_N_{p_HRAL>OtluH$Km7 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

    IT6cz=l#)|@o0|~km^*LkW6T? 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 j&pepp z3U0n1mF*af3|Sc3wDhZ>iz~&nWk2`2YNtP`8YUjY7WBG4)-OB?O5Na?cu!yQIwDyO|tB&}t4CEc+c5p6vF_I#}n!+TenGK%tIVFG1 zcpmvCDyLIeZ?^`_JD2drra+qcX`TG^%i$&!5LI|+9b;oP$wjw$9{rt6y)Jo1m7@la zE4kKu-_~rUE?tnwRWx{a%n~}^OAJRTqC%)$+9awuh98pie)_rdPKHHRPLJyaR^`d3 zYC3ay>OLeKl{3JSOj;J|N(I}mBl|K#T7rs-i4-&WH5X~E*HwG5vVr$()XHMY=eXLR z1>`FJaPk*G7$SE8=_UAr{H2R2b)1>nPvqsGZ|JiqVGYuaNWUZRCp=Ec)rM^33KfiY zK=0*Cunx|Cge{KjpJ={2#!1W+kQjy`wlL84J3RM^eb)SVouzjW9ffMIqP@x0)B=j? z!>VLI*Eos2Ox@NidYmbEH;-Gg4QVfJuSi69ejh>u?a!^)P)_(q+d4Ub@_a#~w7|by z^v~;Ynmig%nvMyHlFpCRmEfIhZfsD3U`z=5nQTKehwL-+Kt>2n4915)dn!iTfrtgV zUJ$Dq9L~6^YgUx=NMx?ky=hzSy?r^*XRPGiFOOJN3sOZF6D~k!YemUg1XPV?#q2D&xoEnh7KK{xKgHo_&4Z)+Q-}$8*^3Xo{{A)PPl1;R<_pJzO7GSR z<5Qiv^EGfaMWl7uajh!IOv-<^6vtaoYT+Joe;JAyF6OC#D6?Qj(-Iw(CXI}$M=|lQ zeN6H75ifTnq?PSsI(!(U#B?HR#oi6Pi;u5Ia~*iYG#4uE2i^%V^*b65bk@}*9Or0u z$!E#Smd2pq^NGppk>&VyoLIeAx|{J~K8ju=>{ux&5DZdoY|A^)a_(S2suw2@HHvNW zt8x7Mzfr)AFj0o1TGH%m^(~89o;1ju+k^Dw$H&0DcCVYQc*=Gr zBRhJPmhUZoo{=*`4pTLC5iruXglfSyduu0y>RQBjZD$fSx_IvUG%7gMmsO9ha_~aD zG!_%Pds4~?wyWnC5cbl*bDO&+5JxZRpAQ(S>Yuas>v6G09qUrKtk9ABY-b=bQ)drV z?`3D-o+2@NMR5`v4M#V`A5M9{AvaA>t=H|^*}O0*ki!(il^4I5xT>u*n`cjUC6?Vi zZ0L=@D9nfQ{q&X)q169*I4F*k*lO^^JVVh!y?~0QLewy& zF)ZJ~((d-h2F!Eq%3D03=AyrF{+sSBd+);JY<=-y=zv0cpQ|urTt9*DvV$+F@_f^j zrR|sgrOTOQ+s)}a!{0aid;u>OnvU~+F`w4#i6yp1uPNSN&5K_B#)cgRjmd6HJmV>9 z-BKZnr5{nX3>){>hIK2)Z5TM?E5~uw{4Kbq*&I*)7TkE<4LW_ZBhPh^{sPeCBEJF0 z0rbP)(mVQ7bp_}pB^*kof^K;gX(CA9c_ll8n#l6*+%u=~;eE;44f?@Ypb;x42%gv0 zrnX~E2C0X(is^&uQ>Of~IIv-JSTy7O6JiAR%@ZeT4x_-1eV3V$K^bK+{V4q4D}lb7PUBUvR=kIj!C5gvKktEQ;Du)!B6Wmv^uUUv z?4tAR6Q5U3GR@h$wq8PW6VPa%#}68izGvxyOP}sBScUyb zD+k?SV}5~nj;=1*>{6$MeO}BYQ)OD-t=abe^@PHow(!rW@BqtEWS|r?bT&}sQX-=1 zho5$U$ydqjhue3z;mOYC9~&nLr2$p7zO8^ouM2KJE z&DEa}=WhXbW8eRbP9P5nu;{RWQBwn z(F?d|<JaL3+(#qm)-5Yj z zi@|wcUzYj<7*0RsrtoBJzm_>fFSCpjJNe2jne$B2b;f&7Wl4 ztx@P2D(1#WZ}tCtvXQWP4TKsnDmM*$&ids}mg9tW_mPn|v@ofwk7#7OdMgigRAHiS z;hoUbyc?XagxcQ?vp8?kqM;CynT|x+duZLa>sCyJC8UYWaaE5ubBXT=snXEXkqCn7 z{hp?D2vpD(+0fQ8jT5#&i?R3y=YY zFFcv;vA;YJh;1s}9tTx1@0XR6kd2KQ*R94Ei|N;yKdUCBX*UCYrIBjsHlV{py*2q3 z&R$acnaOMG?`FRG1m@j<4GU$tKCj=;3u9x!nG%3vz-0`THv$8Po=D<<6^LMtv&pEx z3PcZp)jEvkity&8_qfMP`p->Y8+TVI5q2h>SVdbJJ@>1gSyK`HvB2kG&wq6hZTe@p zjlJ!B>iXSTHQ!A&2gkAQ3UTYwgM&o>19gPyf$62z+3m#>!nMkPsm1t!tCu$l7o4Vi z={FY%FL%_>Cx}sp{Wagj)c;3ET)UtH?H^t7dW?L%iKGAKBO9i!RYIG;cw;N=Nong{ z)aa*Pfw;fTa4XDGb>tEonUQ_gldRxGKE4=<@?=&-au(T==Rx%3dgOl@+UXyk+J~dw zt?5#%htWN_AJSFEQGoANiO@AjNm6JgJaPL0=56~5=H091XBeeN%=%1Z`6822JU9&u zY;|MW9%LsvwAknTe%wpowRPBC3^($_0iDYAO!!HJ!+j8NJ2~h%Enno(vvMbx zDW})Y?Ny{KyNAJ(!C`GJsS5bTjIWYZqI!St#3ye(!)wt9l%0&K6;W z$zjBTNgs^Em%NJfbVMoMl0cr%+m$KyT>Ke$#Dp0&VHUA4m8%a`=vGAXabd&yOK1F* zCvnGmk0`*ruI&SJ<;U)^23|=!=>d0w`#uk9uNpGH-mO~q!PBsi?a7|Xf6S!aW;#3| z`_-a3SEFN1vd&kZSCZIg@C(oJi#L{wr`z4;AdfinHJ}yERH7O9Lc2JqPOcC6v$o(p zP-GwLw#)RYP^Co0es(G4h8g&q>SdD^up_s0m2OK}ly3}h{~^NZm~rITQmI%eQ6r9x{O=1BBPO_s}<~{N*DZ7 z*wITrX2%+%aGsqz$#P;N+rlZo0}OxSunXDrysSJFNKYwDD2;)aUE8rQ zS5sE&&Fo;Rhcnf`Xe_XNYBtb(Ij#1d(w`a1WnT5@5D!ld=#9o&Qj)@riCE#e3MK+X zRjFK9@C9S37OC3cd!$rWf*AINeET?$33$c+XDC6%M62Hf<=HMtj zTn~ILDv?@B&5%sJ@(^@?a$-27bM5(3KQY}^rr@ z^C{S;MOqwdKp~&CllSMsx(sf1Yu5A9R0Kt$qDaUCJuJ#%7+aWTOk_E)KH*&z)->{{ zwhg5oAUG`YH8_-*Y?M5{Cr>_&H!x%!N}mjnD#n$)0re$GA< zYt>1kzAwrMnyvyjjnsA!c*FMWEMFb;L!dir(z z{7I~if~AA9AW3=yRrKxtW8&&Xh|S$2M{#5cD&53H{)qnY#YN|M|Hs=?F~xASS6XKD zbGC!{+q{^wTOEY>=jAYNY=+wa#l?C8@M*Ñdc?RJ4*5ViUXbIFakyNVisP=Uew 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%0DH}vhrt%FVUfK*4*n8=1elkH(e6@oUt%mxp0{lP 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%0D?r%MCV&-y2Ed{O4rj(0|8G<;iapgTGHF07)K zRrpoS%R}Fk4GjDWC*Y>)h+cv{%$|ek{Wq)B`6cRHFEZj^o(K_g=0Ov6{AxQ{l4{27 zGB5~}ys^JJ?~$IziYZQv1s$3wQSTpKAlrdk0pZ^PJYzd2BY?c|WaB=wUG6>eCkoLx z6pH$vho^J&RqxU83>Gz<-w;*&z&kc<0}dV~@hlcP7Mx8`tOcV6E8RlDTzmaT#t;Qh zb}Cueib^x-zaacZ&=fBk1=tLe(2Cy5uH~d356EOSiNF47O1LE&M}^ES#;H;Af*ZKy zOG%_)OfJl!+ovw(P3k$bAO_S5o--N^D^#jQJCx=e!8gs7!3-pyS*$ zG&r)eGbIXzMgUsBH2PTD@jXC1lyi<#TP`9e)N=W-k=M+SL;J)biyuqz#qQOQm6SgE zqY2TLpeHAsIM;<=`3fN<&rKrg_!-BsW%DSLx-~!51!WyC`oZr6RN?^Q&n$fiCB&{^ zyd_|=j+GnGrS=_0&^tNK8VVo#1DI6Nq0iKo2CWxlBo=-OvvVpo0e)H|Oim1Q3|pMF zEf0aAD(h~VkVlY0B0k#Mk!$Cpr5dl-$`r__0}c$Z5s)_ao1GuL}yU%wdWtbz65 zE1(Ubn^zHJ{aI`MiRo|?ad@%s=_p=ZtIkvnCqLv>2&KIy<5Zvg&u!VpiTEt_32OHr zygbHvMm0xy!tV=6Dt_D*;ZekZ@_Y9Uu}?7 zh>Ta%%6qwDBMY!brd_Oed`*!fdL$SZeD_MW)tqCRYJj(bThAb|R$6vEJ?%dT3~=G` z=2YogfKB>Ziiqde7s}Ko+>r-pp>Hy2?H0G)I#QmKYw=|N8D9F)heyiqzCh)8+8dBT z%eG@jej3I7u^E*4NYZ`}i5|I~1%g5BdpzqaN{e*C9_HP{Wnx#ROJ!kyf(Zh26m7Rp zLe>Q{zXBq}gqXj!e5PV$Rr5W;1~sLD z1_!mJS6!P^CW?lV=%+WjZ#eA|i5%+E;!hLe^^5X0rA3*GhhqI3*_BbOP7Ie3yRpDd zs-LPJ^RhD9kG2sY_3jq;>sB)=D65jB`+vV2cwZ{;604>^cBg7AY4@4yZNeJ_@|>=Q zmTEJ@Q=y0N2IupA87CF`Lhm^x5O*9})xDwaX*tC=rMq;P3=<_ArM#d?lcz?(KG=Kr z$v4KSoU>B-(_39L9ZM23%le1sUtq5uKHh(Kno&ymO15yDDv)c*4e)<_OOFi;?)Z}cVf^lM?~BcSw0@x#q}5UNl|doBs+Nzuc;o1+-ggY; z-0Q*Q{Qex?)n@d9lpII4G>*ET^=oJi&rwSA4M;vX|Mqd)3?gsIynL|hyc$jmzt*YJ zinGsW-!JuN=X0!D`SK~OD2@Fm()0`y)e4h4U*2WPXd|{krW1+L|Xrk_I#OXq&&iJDDwh>5S zxmFQbtK@6+zQ!+kkZ@I6Rn=W|n?!RGPNv0fW0!g#R9vP>-zb&?G z6s)U`sO(6j@oD0{a);N@PM>*SJW^LuT!~IpY)AQiEms`3jEk8apF%rIJ)%pQBbP>) zUkzWrhX4Y*Tg*q2#7^p1zN|Kb608;>UJJi4Fndi~lIV5?Z1As8(hTNW-bSB>c7~kH z5msmI8Wn)wb~0o)n?k=N4UN9zCQc-+f&#qI*g{>&27HN}4&N&GbWAjW6IY2ZHdkf| zi`EhkDH|9el7s=&y;*nFw?Qkce^=9*0A?lwCw_Zde|99C>F!&AZPa|J-hHBfyw-qV zpuJy+5f|g8r(h`%2#$p#s-`pf=Gxr!CpPM_>>e>xfc6c$@M%f;)OJ~FqL%LB#|M4N zcWpXtHG2j7saLLeg&}~+o7?(%+^sHJQ%8jap|>EC&xWp)39aJT|2s)Atz-J6E5(uP z15T%vq)wJW7Q(Ts=DWS`jjxVz6a@WrNqJ9O_;qCM2HRhs?C3;(97`_(#D|4JD4??F z>L=|Rv82|n?kj)tGZ{?9?r@udpQP;Lr++QRU~JVMENUu8hZ3xZSa;;yO#x2I>I|B09>&{<1uopS+07DM`teG-^t?EE}UbbEB{geIrvAPB^F46EqN34^Nz;d+kl?(^>8 z3pbMgAY<0=kK*;{IO`7@sSFre=>TPs9ErM+9LXh}1i^Mh|MB*}gA1edHrDR@b-DWmJo@D)SLrLXM`86kgPXLeL}pdSLr5lLl(3j7p<%QAuP zhgKG(i z6~MEY92RW2>p<%$nj+yCB`+a)Er9V(ac%Zbw{k{den5H8?~eAVJl;BaHHt3)hM0{k zJc=~1?R6tH?2Q&Tn+zc%Gey3mvhB%(s#f zx_*U!Zeb6-2zm$i+e+JVb*_GONc~yu#;4xn5Pou@@8YKoc2l@d>(rGfJ0*f}C^S+g z^wX6SI$_G5gX{|_J97sMP>Y9a*r)Btf;Tkf)zZIrLOq>Xg?@qs%-RPDq$Pexz^4~A z|3s&kZ9P4zhp(0KCz|~fVz7=d>vK{cUxFOJ>rdN`h>IY7fmc(U^(;QQKisOcGLKGV z)C0&GhJ9)%<4@1KQ@R=^X=>e=#Byzr6bv999CAXc9cks(PHBEdWbknQmMtz-$2dCN zVa)LSi66rij$aHOy||vHoh?-nTdnYv_q>0hWO*$UGj|moA-a&Y-5?W z3$y+&h6>2@0z@g*aP>jC<*{oH$N3Dgvj}Ian-$mWu7!9!HC(rDGQfV9io6h>Hy;!= z10YcmAh=k#he-}$8HCqdQa=M~Yh{3*f!5|#OPF9}{&r(*6kA2+X;R!r%Ahlr=p|C=AiP!k^_B9{npW5eh#Iu@YN!!X2`6MW3{)G?$VzB3m z+SB9dFSR=HyY8Bt@o{sss&?pjj9byrJ;|)KCS9{ zs~)E|!M9Em2p+D=HVR{uo1kC`o)f$gI%jo>4Db!z(FaSk_LhWhUmw7Z_580#$>FW` z6M}#NH(rC0zFc|vTcvKS8+D$4PptplSiNDjOIQO^$I}fm&FT}|zw64;j?NADc`ct? z06c4yB7$nb-Fj`>Hk$#lKnb8c)clg0kW}a{Kdki&Y4zq67cojvQWz!jJ8Qu|pJJ-9 z^>>G{LOVnxw*H8x(E$58dz7pIu-^l)f9le!A&R!j`VJwS>KLjM+ngc)^=33(L9YlG zdF*wEyDj|R>X3cMuyqWe%cty&PdVFn-}0%ov(UWFyWvLk>0v&XpYK7^&yN6b6I-D$ z=Q){5n$VDd@=fx57k2a3K~MTZVJO6s((n6*4a1VC79C@uX1`O!wdRN-~~e+g=(286D0ts$)h4Rq56v&SD%CL6b%nrIu(yB8BO z76oX(Hq(YTuWWU2B0JAKr~`8*MXPjGEbzeb!|TX=Mf8)oF@Lxn@eyqZ&Xcg}ow&k~ zM{h2(nlX%pR7=GLgSqdb4-MMV6SLiU?jXqUG3OofekTR^Ezi}ecH*Z52;K%-A9h0( z;fAw!fZVl_MA_M8c3~)~UnaQ#ntZj+(-2^|KK1V1aKeN`Zc0M3yQHzELAEIG80t!s zx-RZ3Yh*~RwicTXj3YCeA6qVv)3ybj7hrirTx2b&KDpEcy1uBdAI#}<>5c%1AEgp* zML%|#A*#W)Gm~sai*nqsFpzi-Uk~43tO@!d&o;X zAIB$ab$bpiYS9QJ3rsX~+#0;?Kve+@3~&CnCtuCI76oO#RsnTQVfTXR1=Z3?me(meBBN(4mFa813jQrF|*t zi8_jJ2Xsm&ij`r@FlIb`DeN_TNsTs*IW#lSa-|AavItp9AaW5nzKz}O+q$MmB`AW| zoH4h*f~H0D*9;170{S|KeBmdIHgxv6v2h9lJqYZ%;||TyeD@Jima1#{Oxb0!KocRNjbqy(B6Z>JJh^%Z zc4(=hyAQZn$DzdI#t+f8eaWv}Olqa^;6|<&Of4TN6eD7b)E6;VUx=+o&r>!sp$MFg zhJ)iIDL_e~Eai72#`WV2fG6=4+IPi z7#_4u9CpIdi>0b|0!Zh1X0?^k36$| z95jGmdce9Xn->>9b@NM6s|*NGD90Ycw=!FfN+tA>Ln!T2lAnGJ6|ifNekl`TE{^zA zT7T_rXqC!WI8i#nCjpG`0WN?I zW~grluMDZ*ubO^!jM9Ig(T*0{nl5ETK@fqkpkRK);G$a&TEbaO;;_2kGMz1~MDw4i zuI~?yJrcbiA#4BXZxM>9a!$r;uutho*mdV%OJcQbP*L99*Wk!M!C4lbH`rwj;iZ_i zoc@p1jaga1Cs}G9!{mqc1~KSX(nPA2EF&Qbvuq$3QPyk3VH7W}C&cB`=%)POw3^oJ z`Zw+FdK`9LoDhcmIW^!uD2`q>u-)#63>yqmoN~M|#a!j7uS1+lF7(9&-dXIQ!S130 z_1gjkl2F<~ZFju2oXcTc1NA0h$itamp8TzhQJqPj#1%{WpY7raYRR)U5478O_}Ce^ zcv1g;r3Vs|(9*ZsrUW>SN-QGot!blG7%AwzUDSx#?n>w9AE=qD|0aSpQs=3iO;Phu z%DhU+Ch)-CKeS_xI}!5TC__FLyhizMsC^r)R8Wlf}8lYYb;Gk@J2 z+eo{6Eyx^|3wPCvMSPcZ?(Gr`U!IzIJ_r<#E%HZzwV9<1cg7K81MM|7Ht`3VUuu(M z3f&dUrrRAFD8>=H?uyg8K!my&+Z4?1-XW+AGX^%)5h!K(a(6+7^Lw)1DoOUtTwy~$ z6#4ueN}sAI2}k?Hd7DomTCXfuw+>>0dqg zW_|HjOldv_Z9J7&_@c7Jo@bV;GbUh9J$UA_F2JN;ZsScq+%x->d74x-5-t&e zow@kJyPl{ACaK>xoKy{k(Nj)TxfRF94glyFiP+kGiCEzFee7acxymq|r;=IlzI?4N z703nS5PWDEIx_~W1Z$DO&;|_Wn3F!e{%c)6u5w~Eq&t0X7J%mmu>!rN4$7P)JPxJd z`&K$iyAEx+^zwvh{vz}irq|^_u9|Hcrq^R2Vbt#W4c^u+QSQQn z(WX1?_snO(i=`a!zPwZFcpe{YtV;&4A1;{3x=)IV@be|$8{o1wz%fbm7MBF}UZ+Z# znlM4DO+%Y+FR%0&_S)LXth3XhI1@QrM65rYf3mWM4xImM@CW*bhCEUlQOGR(Z$`~1 zr!NGo4M4i$FwbM_SdhW3^V2#&f`)@XM4_p!Y(Kt7Bf(uQKC5vR2)6QBR&M{@3zP*) z)(oZ>ld3*{19vL|mY|}*(2pi}F%hZ$M+WNx)K-Z2^yYH9vc>@1MG~-@ePH&tF0mhA zU;H$K=bVY-Rt8FFuBIYSGH8z)Pr9m@0xzT&u1Y7IyijQnJB6GeMOi` zFke!BT|(_eK@hoO$O*BOY!^!Kg4(2obSUnPsl6J4pqhMioWgS2l(wHG_OR_)mJ7oU ze!Nx=E5YF$4>ZyfwL~3p0fOrawXqumFk%p-!7x#`n(5F`;Vm=|KzjLYbk~8QeUxpS z68dRSz=4&P6GZ~t#OVsqdwgvMzQv;H87G%>u!c}tO67{YVk5LzVCETz5vMbc=A zznv_o<))-$3U;N-q_h8nIS5`1A-6Ta4Xz&55arUc)@e{1*xQeA zHzY}mMJwn?FGACm(s7FAHX!JW(3Qxu+UM58>2+XWA9K;||CVwFx!_ek#-(f%TQIm1y!^@p7 zUpo2*8r9={)u+?#e$Xvrch(|M-+9yPQeglr!X5`>r9o%a!>{${GeugOl@ z6-Bx1;)#%9iW03f2GJkUfMZ{ilg0B^2FI@Nc%+5?xA1Ao9e#@Ur-$1?YoteY`2g); z3;l75kNSB=U^OrTuptkxs(`I|?kNAM+g9+!+>*eRP)n74CWq*$p?(=e`G9zdK|&Pp@iF|(M2n-J6jf@J^bsR(qc{czW1@^T%P$yFiFnU5V(v+J z3EyxLH2?WpTnt5!s#-m1~Fii2Z6szeR|XR{QILRsH>G9Ijw zFvc+LuT0Yi<82!2(%6eA8{Lz|&R9<|5r)he zIOo5b;TfpZgXR5qPZ4`1G3sV|BkYm>%QXe0K4%H#=xfrv@(n=-AfDhn$BX^H?FJGN zXHzv;84RF2DIwxyNY3+i^s0OFyC6>{PgSv2sPZ}2pHpPvC_3@KfAVK3cQ2}6A@=2* zCu$GFPNYHdMy-+ZrgV=8@y0V}JCx?ldMm@JKhPD~Us^HeE}CTs2Bf^Dj(2iuVy0Pn z-$x$A#`f&~&2`{fbF->WLh*S8d;NIq!KX7%Z-f-Ew3+@EOPcfFyT2Uq?=W@oH?FVj z-oBhDm&?(M?$XrfoYvax8m|%2fwM<#bM-$9R6uI1eit!nq%Z%pwW;Q%WS;sI%h^GV zY_it-L|DZ1&LSfm@jpv_Us0C!^u)&RpdtHk^zas4qZlnV{^zat-WO8W<~Nqt?l&yg z(!f`jEuAS>?vXx%Dz5&xu4;#dR>n$B3=-;HTxtufWgO0;+atoXu3W0G7HRg-R^m~5}a-_~sSfV&P z-yC>Ee(LK;ObGS8$PgvIDdFkzEo?3xBy0FRaBi)(#~;CPi0ab&ayS?KnaG-IKX!lJ zJoIOjaAbC7sAJ`^2=D8%z+2B4+PdGsbse0;`FsLEJ#7+?29$zkj2BPq&=O{0+I-TXe_!G`{}3rB06%{>}h;)ZE=k&^~d` z%-=|B(6czB5wl-Nc`q+0$0i&MuDgO`CTaBb}4Pm*?-)IO8XDN3_2I zzzPE(H$w$9U--gxU@wzYeoW!5nIAt{i);tXu{djLu7(_p#ND3=5kPv*@8byR1a?I` zF1c)cV-;qZyP2fU^nSJ2y}V%lU(A4RV^X)b2nNo2{B@Tq6*fYSzi6Fa+0mLki?h0_ zk~*#R5O@Pb-Q+OnT}@8Z)k>>XG76;;PXGAV3W&&D5gP+~h=LfQ>u19(!!@WIA)>9% zUTPXoOL9_LXFaHr#EYne)OKbXYegyInYrs>iVXllJsq0D-fP7MeWxc~n6U&y<8VTAfmkec)=?tYaq^13&&YOdVL*@`BSH(Jq(LShm}sBNi3uX^&h+) z)5I*i1%MJ}63Qf9U{aDB^jQlGv$DD@I!Fn1(#_VWl;!~JIb%!Q0$o`(`aycMgrm}Q z`lrzPjyY@EH-Z_`f+d83}t(Rk=@;Suu7Q&37%8FH@bVgKO=`GE3rR&+SDlSg~AO~07G!_(~ zTTC<$v>)K(uBA|R6e;igK&x)TJuj{6D+3#_AWPsmmOa`t2o4azTn(6J9px2{F@VhRi-@e z`7Lp1O>C7mL9e2-jwXd7%_8|vIwgG4jNhe^A8obY1*b|wP-eYCj%gV~gq8oNZc*#;Yk3^IuTHnPA?3V5 zsPjJeRBvChiK6!p-MEne^9?(#^4{Ad&VD0KgXrIet&Fs~4eYdrX2w^1*Y%?%cOpP7 zowT9P^9o0&ZuR3@CP@aBGJ>5YSEx@1)uMNIVIpn9x5Mvg9L&URH~JQulJ%EdM$wmp zzhC|qw_cfF&hY-^?YKvLeO}0ewC2A!qg4O8@muNlueGM-AMR31qW=`q0Y z$xV;HdcLWyypQNoTSPo7lK56h#{qlq3%351-B0rCmHwC4*~VTd3*P*r7k7F^mmFzv zKH4osblXm%`C-%We3>(1L-;7-+tb5@TcM@XY=%^M5JEhTV4xm2t^Y<)A`xs!8(fK; zy|?5Onw*6^7t5svF;N(014-GZNPRJYVllcbtedw`|LnnABH^EoN`2*2qJ7hgBsLZp zYZLu)2Yk7!e6};<}J*n%7uKEq1p%zXbfyj&rSxIq3*uEgQKU@fk`{BP>W?8zbsmA`_3*XBilFMJ&!FaEdKMClISe0ykfC=oL5 z@smiMS)Xnp$~GTYU}{91NJ>DqiPD6RAZ z<6`lC3Py%C;nEWk0J?EM`Ct9wjTf~(s2Y11ayrjQ*+*>F9ok2kKnxRcecu}6sUSuS zlM^FxR|Yw3!0p!FTOwdR#(V{-f+W$saZ+x-aEZ*AfbbW;a{K1PlvsZznr zQRAwihYnYjSzi78+9-7@bcmPHR6h3Gwv^K|2FW8 zGF2l3`%^5=<1d?!-b#Z?;wV}&{3dVRsZ>anYXpv4HClf~A8M(8w1Crwd3_Y4@%Zq- z_ken>ai==7)+YGo#U9U$Ep zTL?o=ovkCUCqHT!Dc&o##y$jka@+@avYp0@B>Ko17U`?Xd>&>#7`~Y1p!W8d%XgvRYE?h}JGlhX4No#Y{LU5# zpwnNWz7-K7OtOBHZ;r=mtqdlGc6fa_q;40^>!xE$jLuWe4_GTX5E3!Ii9HQ#a^!0QfQ#xL*xxF*>$ zjByl3qcZLBP}&J?)B&B=8LE>|zC=&Rl$Y7q)Yo6to>p)?FkU;x_d)CA0D1(yIH@PN z#p5Cd^a67h3Mec{Fyt1!{J0HP-8x)?%d-w30NkJR{Kt)A%cr*ENV+3$vLx$pAd2G! z5bfxvB) zB{b`MWi}m!0Q|E?F5UKb@<&I#C-nr|n#CS(4|odYA4=0&IG#$AHWzu`XIh}sMaQ}0 zkT=}aI=h69bGR*S;A^|M%^lW!P*el$b?f-dH~Z2zFJK*jH^JDe0w9nww=wsC-K!pa zS~VvxJBepJ2s)_)Wuo*Tu6lc1wx(r<8e&gR;>5@WNbRXFzF#qC_kG8TG?f%jpK z+zGU#OcXLu92gA#a(Z8<`#`^)sxj1)$^S+A=Y$5 z*&}T8oTVPbpXnhP4G?9N;UJ+kPJYdovvP8dsexbPkB2#<-N_mxA3LN?(nHw!NX!Z= z=~gvWzTc+_=t<;p>>iK0%!pPq6dJzQ)Rk&bQz&NZGA-nDZvPDB!P$1ZfA>YXl}abN zTqbEFwesb)yOUunQF1I-V0ph5gVyGJB_&eZK{=zptasMoLt?66-x=lj%-dA-8FXjR z#yTC)=O&>8pp{WdQC2Zhf&0i_ckbwjoNe`sLuyo!Iqye=BQ;Rawa(YX_Zqy4;RlX- zdu(&sfzGeONmy?tvCtvBM$wzlh#Hc5^nr1My(soDI{pTz3!HkcFZMjdV?v@VAoQE< zuV?WezP<-YS*W(^S}v0Mq-lEzcya4O^Bjfv*s*}Q(GF~wv`<;3jWb{(%E=Z{as=w& zZQ02$=49fRJjmn=oswq*UWPH90P++58^R zBh)~->->+;gPLKDaky~~OgoBChN5r?0PZm|Aec_E`(Wr9|JRMM#jZ_F&VB;j|2yKi zJ&ri6TfYW#VH|dKW|cbeq}WfdT}i)PPs@7ZhdOPuT0Y)Bp;FCa^2 ze)%u{vp!NP{a6>NV&tuK+m^IhpJ%8#dcqb13pBoZ8aec5=VM{{r?Cc{jpu7;BX7uCvr~lK3tgVMPwD6Mj)u`WleM z77ptp)NQ@C%q&o!(r3J>PH^4rj2(^ZvYF*LAx-RF!0et_7)y9#8xE>kS^u zm;`Fw9ymif4g%}{CSopzii!56Q;2_Y@{Hc+cr~&1kEa!@{2y%4UEZqqg>X8@S%!e# z=m4((HX7`uEM4uR+P-)vJPbbfMyDK%_5*Lzgz1@5LpD~G_xVz-=+dAve&dN5Xzr3; z59u6&dwfe($JyKdm-J=DMj&Zl(7IN5eauTwn^k*`*7^XErfvBNI=agYR1R?6PD5r0 zzUgxsmF8%bKqc=7@QyUSiXl2!f5*4Q?5+sa$(`k`3ZM#=IaI= zIQ>H@*1%_%Wlg*%4(QW1&rM#DmV&F(nBzWEJo<#dNU7&>)I9wzoZszMri2(j?vDyJ zp`p$(ZU34v-^)%DaL?3Yts4PCZ~tISPeT*9g;i#tnbB0`R{oa%$^2nb+ z&%>J45nwwOE%R$VfZ>c~nxNA(f%H{N{?(^GkxgLK>3d(FMzJz{Ry?t?KsrDM0CdC_ z%llmS=HzOyEk%xaKkwu%iNYr@w;HqNF&#T2ggU!zI@;%P0cNhue@*hE$@6x<` z5GA>#ql?;(X2=|1ds*x!b^@kctrj5rW*g%nP`N}j5M9MJIg;2iB5a^+*}8M{fs^a6 zBjo$L4tW%LSIxtgrrzn)TakHAm7hte=N`IL#=*;?4I470P)KV1_OFr}Cb9$TX*udw z%b&U*1Chm%PXL+FVAfay0Gagj%|&3w{q|R} zL|xsFP<|ZTGLcSwA_|@Sq&m;mTT&{@$%fT@}bs z4@FnFx7HVr;$rVjk_`{WXG}n?-Xj!%qdvD_Wp&yN(hRmnE%`T_$0SMk4FEP4n+PC5 z-S6YI?@;#2kp5oRGVU%s0x-snfQz;_Q{=VHmx@y|3A%>u9%FA#SUbDAhZaNDreq70 z0p8xs6UzFxLw!+uUox?Qp@=d_D7I#5@2|O+RcAG*tfTTUqC`T^YKbScl1LG^7N=q1 zRP><;IMWpyV)F~$M@8Wm&cV>MeD>f%7Hsx*?R6|}7v9R2SEKKuQcD6GHr}-^P^k$BVd#DSGMTo9HBkr^^vFx8zKeh~o*T$Y^*Ib?0$im@{ zxQLGK_=g*egZOl8)Llx#jujErs`~^tQVcv+I5O68r`f)o-q@4Z94H~^Y){3@83z?C z&s85SlWz&(Gh#>o3P__2?ECN)BG=hVrV~QpR0Hc$70+bkvAxF4>P1O1G(+W*9)9?( zrGJu$AGF98)w{BShfGh#-}V5fR-d4D_>Wyt@#`bQLC9KBj@RbK6}_8@(Cdbm|7~29# z(?c2=16w`*-Ef-RLT?&)JZ`RQqL7}&JDW`QJ6jvUYRLI9Az;o?29*0$YGU(xU5)-G zo%k3JC2F$`=k`!DD#-7(6eW+K(pvhLLG{?sjKyTF*Yd;e_eD9$@GTE3Gd{|->(H42 zssFm9;7OG1lAjEB!bO949pYWaLBZ7X+WO`Aqv4UclNkGYJgBd@;g4nRmqRh+3_MYk zPkCVyZe7jPpgLgJquVjel7bDbnwTs3;PU{>#~DQJT=&~BNuIZ~3@-X7U;KH$TQ1PY zl9HO&I0?;iz2@^?UEWr%D%oKZe-u7U4Jc|lBz<6RM$VY%l|ICh$ul?4r=~)2ChLZv zG&ci$mdI-PN&sv(-SeZ%2rfb0HUE*_Oiemgt?s(Y&UeXjmSuKO4NeKf%`3TPQkkci zn-ZVBUp#t>UmnJOWJpi3>nflU|xz=`)x{PQ_Qh^cr@oV-`xWrD9n{_ z%@f&(K2*nejVi{|dSsfS|ITKM0Fi#i=A~+Zkt%y)kr%KGc3h{ri_XRO1AB7)#K`}O z{{HizxRZ6yp<=)Iu5^53G5GM6wacIOOSKRwfOQtnV&Hd}X1$V^ONxg^`& zb)L;;VB=*q#?-*{tw;l#fLx^e2O|{soZ4m59MykN^JXUjSJMsANOB&T7h#Kf^^m~< z9YAXnewkZwS-v95bT?Z=y(t3``Z0oheY1Hd>r4gO2=sG`L&pKPpm%PEO774uLzH~D zZ)z+lLi(P?t<&*$=ah^YAIju%&hM!#5N5fLN4_*+P1wn+=6!eIU0t(*?laQ$FV+8mGPu-YSFo>Su-y@naEZ zb4o=d?g;@Z-jqFsrvDeqo*OBUXMK8_!Dl(NoQwXgkQZd75tE3S`NO*~UD_iP#&nQ2 z_A;rfrU8n#*N8g3yZ3vIzg7(~wU`-1-6m;TD=$5%4BIH>4)YSnmsO8Cf+sQ=508c7 zbRb_QsGs1Oz4`o(Z5DfF(Hys=_TIu{@8$-Exb2nXKs8CGK>FL?7{fIQWLZslKYdw% z(n`&h5IVP}{9tF*^rjM1UQ<5sNj`1>C0ITfqx|;s{=mFJ%y#Fx5KgFOp}NoVmcZ1- z+p^=P9qG3*!Fu#RfveXHs+xJCzrUvEDCGWspHKf6J-u_Qat8WdKY}BYNOS5P~;ENMlAnMTIn_1UTAReukYNX}9>fdyd z?9v3L}CZ9NXC{mp4r&4QpYie-LOWO?6%7Cv%+%{>8hG#{WmX zpbT5JX#QX-x3Fg|o8{b^;j1s5;irE4{DQ=(G?yXbXfmGl^H5W9)s*8*@zeZXo{Ah+@otGM3%>!e4r02=FLO8eD(-b@7e<5Ii< zaKNjdb9>kL=tIi0=pWq$=3S*W=}YjY(dzg-8lAVTO*tqYGu_J4FW z748E=yoprqR?Nu2S2A`Uzj$FERoiy}V%u?@h$iGf#YI?f`K=MUw;xNnXkH^fL4 z1VnRVaR6RJ^7&*DOfu;+P{Z`4DgDiWn@~9yshtq?G(zS@EI)&zfmr^zwO(f+2Xz`y z+re{wKep{3bpL6%Q?tPA94^$@2p{0&c#Gx412v`KqRlCIg4YJKck|aI00Z38!Hrea z(5}bp{6T36T4Lg$yJ^AC#A}5>eh~g%RvGj=3>)S4HXab;fIv!Jm_p_|V$v|*noI+) zxsXaa`(x`fV?#D6+}*U{pez-nR{Hocp zJ1(1Ly%U?-<$P*COUYWPf6+Bh60mUEY)-Ejl!ev&;0zqvo~n9pR@wpB(3veWaDjNR zcpU4n;N2gzh*E$QVT!WSlfww{b)0n<$(_RxI1q=CJ;eWGQDLV2D|Vo>pKVOS+iqcF zd^;ul3KS*0Ac236>nv(Ni1uSRWd|P75Q=zWe(%BH;Ylpq`q4&hQ|ZwoDZJOAr6l!Q zS*cNZv@XA!nA2XEiTVO%I5k9-+ALTS~odzuFfu)B`scFg^yn?B$&4jMc4R%esu>QOc z$}>h*crJ#RksoSiIE{oCPv^A=)6cLvaaJ5(8dwe+COZ?q6DxXa?OOajXjk;@g-50L z;9t?BZ68$tQSmZus+p3nt|ff2jHx+e`S&`|05xwIfgRE^Pl7aU}eTgGfx<3V^sQ zhcz6sO33Ne0?NJ@cNiSibR>?D*r4qukOM*1EE>d-J1BIeeK2 zfPk61E@k_lJIGHXwn-KU==5@L=fLNXUk@daJ{-?YqlfxUc}(M1GyF}SZevkmM~=0& zBAfPCO?;GZbEtFlPqzJ|cD4v2_0pXv&f0m2DGV{MFPF%r9=HeI>pNdxVoIp5<9C&y zs>2Dwmb&G78qXWHvsrGy!@+g`#OgViL4aqv=Y6; z2er$yGk}lS{6U^BLO6&SSEQRTvuP9;5Zj+(Ym?t6I)C-u5#Y#Q$Sox?4kTY&3nmjsMYz4cpRI%)K4CD%hM`X*2~wj62sdGaFKBzPEeVWRiayr5wfox?6r&JrbyPh- zKkRiOU>4krqwEq|D-RCH5uwEe`^%ZQ?0Mcgo(~ieK=0nkEg4j=PS*;A&Gf4wF;c`f zTRAi3gKs7XaG`sy=O|cR-B~XpDy7;_s)3#UUCYmhjSYW0rm0_=+NGWCB?ESG^xYlc zdiv**;+&2S`7omYYKOJ$s|WZ(KC^{YhY1uzx^pFNJ$|=D)a8Fi#K04~I%J-s1wzSy z{gvCnvP&{pT_)a_vfyG9Sx3T7ja2356`$myuOT4RwD#L)8pHjq5r7;BZ2q-xPp3vH zdv2!pOxeSV8ICfsp?5-mfT`yQQhUSCyCxFYTtFke@!hc@ZzLacA;y~Nj}!0Kn#1rL zG`HbAYXo!o5Z^Qd1hbcOFBQ-Et%cWOmq^XJUsvO!Osovqw;o2{Dz znIu#R=IyN+`VqQ0@3`=GX9A@Qe3krko-YSJkm8mZHA(YkU9a{z3kGXn5a0(~23LfG|BKduWY_YS-cA%-JriVh`u0M?k(N&*|Csb(22ZDIChsh@h6Oiw-1x1%GI z5EvV1EKPCqIRqZ~?5ZT#xicpT^+|>;FrVS5V6(g<$G{AgJ|SlKQJHzNnBCTTU4l0r zsMXEd3>O7T(7{EEvPf9%)Y6l}UHTzk;V?djVcMRbQT%gRjsXCv;X~!PDtp+qE*j6f z`b5W@`Hl&ACigD6Jbm={21P70gQ5$p4KSqoYEQP$%(Bd>`hArTg!tyWX?DO4GfsIY z!ZvvLEz=2{QouPn_`W-5fRsokk)A4$OXkI`dVnsbNYd!?H}FWnRG$%hf4}++wo@Pc zAW<>`KU>cW(CKWZhe}6QG8FjVRlwY@WK*lL*Q!&LRRMbt(un8z4lzf1F(rjhr!Das zvC8MuBi3?J$aU`ZJp`k~9mn3nYGPAnOh1ar9=Uw-3!r)oqAjdvok?LQWwJ}p<39`j za90A;g}6`;7~)wL{KC8c%X?~F7M$^L<&>8GAZ5~It)}u{CDZ$V2ejZ(x3=;u@`bwp ztG6Dy@Lg>x_F0iwIM5lOzwZH%m`^-{u02hEWzgL687w8w%+&sp+*NBU8mzZae!j$( z_#7}N_4m}Yv|F?<#G7^j7dv0hgg3&Do8)ilKxeMNRFoNY(BQ-%*s?gNbG?t}^r{=$ zLoycxPd*KIQO+Li+3W^`c~YwOb)Ps+KiD+lWX~Mr^n1(|9a7v`O|$FT%Ebj#222$8 zZxYe! zKr?Hd6$mKJ1sJirGLV~r!k9*Es6*xh7%|O9;IQwMBv2HRJ%lv%+1&P``24%9Y5_6q zLh^vISQc?V+@R*crwYpw9fJaGx-_UUeit52UVvc*k~vCLzym8k1Nrhi{%mNjcEa6b z(r*rV5|WQnxG<`SIE(xkg!O==?bk{D*JjF^m;~h!F%kxzAvU1q-M1Dpg@gkzI-KoI zY?7zg>4g$BF9!rnx%)DSJ8B;H;bH~oR>JDBz-%fsZXe_yBWr%647zWBJ$M*b>b+X3=tH2?ZD#Tl{mvn1+2%{*-zoR$1jJH3|7RXk_o=2W-faqdFvPM2wVY21axS8Zd- zc;$xpkFwVO=01%YIev44-L|N8LXNUv@MWE5QAJgf9Wyge#J>I+PHv|?fV(06VZ#X_ zK$NtiDRImY;Ai=*52!Eap$4!{te$$=!y|ngdz5H%7mXG&ljJzO{7qcIZ1IMAl*97+ zpIzeai@(V~H)})RNvlRPW2=}lW_4erV5IPNaq2OkP6#3wC(HW+bG-Ga+izF?*gs*7 zy18>a{{?Iuilc6WgMy*O#y#Uyg(>0wTx}Hf9LIec8jV%mj2-090pNb*+FZeiw>%H)=nQUuK}4P8)s$V4JpBa-)Qyu zw!Y5mn@na2^T^s+mX-Uj^8x1I+KTMbM>f`k?axFYYLUeSkft;tY|#A=iYVVv=p3WX zn|tE$<7xamUyWsGWS~uB4RH_Rhs2ZY=4^CX>txD>zQTvlA03qkF+gn;?;slS16+KM zqD#Y_R(oZWfS5|pXlx4T7{&erzp!rLh^!7F`+(29v=r~f$(a6-&rx*&z->4ESoYr7 z0Y)X+2>`S56lzoKS~>GB?V|`=Y3Yn(pnxXOPV?6y*uKa#L51@<=Q)XC83AB|PJYYD z8mX!LI`p%A>jfPxZ)4C>2wZ)$UJPzDGBD-b%ffol_`X|#ftYP_L`5WNStTl?wDL85 zWi@SsG08@NXLJ-2`u``J{?*}$YXWPqdfSHCcxqxTbXN}v-jFjKR~Q$JBaQp+-ZKPc z{Qb2E)UkbreWR1uhPD)L!Ly4_ zPDQ(Q&3}RBP#|9k&l#C=MSc|K0$e!*tL2dKtMi<)*1~vtv*!T08FX_MBe?H%m3IQ% zK>s}dWI*2~1<}f1!o?Xs_0BV#h(SohT@3$;ckZ2ef7I{HdIYXl?)Z} z8t~FtLFDZ_Nf4~D=n!@sJhj5kvRTz`xZD+Y`wTvRflhups{~GK$qL94dypa2q#r%# zQ(W>*idYGoYv{{iD4aCu|D?2Niw9aDgPms@^;)9?qXGxW`IBnQ`2b$HL!iUw+e1Ti z+$?<7M>F8OhZy*_@eVd_o2HSLL6XZ~?QDG%`#Tm4hs6Brvd{gt|1%1@N`feRd5SdR zV2;b%*_vFBLQ-?uYSW$BS9Al2|! zIylk88sBFh!=HowS6ttMJTw1Sy5r>y1ZF~tHwZzxrVWeuUGAN5;LyEn5b2`~a&)yZ zE`M~K3W#f!eqy&@{hT+T-pBiKn^K%{1C0g&40rbE>tCMScd~fV*NsuD<9Ghdmw=z8 zg)6Q2`TZK=#DnR)hJK^6bvQH*>IXu0B)5#Q(_DYcdpIaD^t_I8D&1arYX=>L?4Kh? zwy%+H^5U%Oy;=e$Cbe6)8)KramVaVf(z(-%=<8SZrb(^$158`K`pJzXTU!=APP450 zIRX!oU3gWPTP$*j%6~+2mOPLeT1$=x-OGqzC?oFKI*kM(o;0=>0k))FhsU^3Q!dj4 z`fXs?Nt8)yjSEm)Uz8yYkTV5Fr_UJo%VMO+dilVsAFGMH`2jqmDLex{67>K=WKp;W z419cxXrspcm(q`o}q2|VAS;N<|3NDuVB(NK2Rf2Upniy31hsi#)P=bc^#;^8pwGE z!&IJ?WR{u$+FNA@d>*3oU4BRl%eWb|+uTQjsH}fgW~u}7Y^hH7~nqqi$}AeO8?{@ETjuSHb>V&;GJhc&61)CkPZ{|&gRV9 zN>|r4Hx07K5?)GyZe$gwZQ`pNKFt-zef{AUE(fN)d(N(QvnD$6@IaQy>yy@f~JkL*zfM%|tk4K142DgKI&;_@Ob#3}D15epRHOs{4 zZ~QOZFWQKw>^o=0mu22zP{HuShz`J!7^WsQZ>wMZW?_-eEU?Kott)*)mCcS-qg`Kb z`StqilBhqbc+lym`q*|GM^TTLQ(o)i@r~XUN*I;*WCoI1ZYW7|kYDnBb6C^6O0`eP z?8w0?O_gd|Jo7T2%uQ{6$iTA~#KP~;J*8&mv@d;#C7bC=;UV=GsB3G*if;@%Iscoi{SSQwjXcLRzrYgZJomaHP zS&vDZF5AQ3|M4ajApLU=5AgleosZw4;qkqWqxI`Uw+7>0eFJlo@WCUp=;cz*PJ5&R zxwq^mESOrsGi>lV(CywKUi3p6g_aBdcE$9Av3vhnC7B+f2&Nd}^qj0-QHrsjx;0-LKPesj1}RwFHcBWNDj?zl)J6ebIgbqD=JQX4Yd1^QCG- z!r>56swb6WkLSCuJ()VLNDWN+G^q`ut9p({ns@?hz2u~yeMvlK(|3oi7!@Hk&5J{Ti*zh;JIRgE)x0o$TE{Qco!wTvH~C-kF9@^nw8qS1l& zADgp==8UH%)vA~Ibf^v#aN*Az6dyYbhEIvf8fRK#L*E|;F#`+UM{gU+1JaSEoYVp0h!urcBjpqO>J*I{j6$n_+!Eq%)1XAbH|ta z_|S}f9xzb;$@5$Pog6p_yt311c(dXkD-v+gnBlal`)cvR!&qP$r~=dn_@XtxSpkOg zeun#Ag{?tvij?eJmZmRBY!S(mL;#wxbdQF#|Mh!?8X#VtpGIv%NJ#7D*~-LYA&0dg zM$Y1R=G^(8wI1xv7zJtrOZ89w!2}dvy7mZLnvNdZKK&+i@gxX3(JE-ye{v&7NpEl zCi=j?yNQ6IfVt8ZHjyQmn>6Pedk^Z>Khy{oOhOmNvzFmMiO+cY_U zFTds;(3J!8GaR{8vB$B@ZsHD7*EHj{YG+f;5LDJ~(2k~ittjUFZBO|Z&He>0%4eA> zQ-QAi0aisBSlYe78&OE7f>YiAK<~BD2r5ZZ*U+V@9MfiC3lWz-OWEarl^hHQ=xh@< z0bI@|A_Lc1-xv8@aUD2kA-eBwP}Yz%6i;?q98fp~C>KY&OJ>z{^`!bB)Kg%+JQ)Cx z|JD~4ht*2dct)RzUAV3r0(piMmV!dsm@(zy(*Qw85*2U7p1pt&&gvCIS^4|qtUxRT z70{9_h!iQN-Xh(BB$?(|K&~?}rnA{8ruDa(A@!|-uF8PLJ;IL=B(fa}*Z*HlSE2Y` zWosv3<1YafTx$Q)1*H9-YC{T7 znFlUXtdFd(2OBo^g#5PzSD_^+j4Jh3-&fg{B$4z0L;2+}u*1l}#+J?I>3n&g471FO zz>G^6#vhrpm6Morvb%A0v&wR(ddrW7qCaj&Aysbqy~{9(;6l@st(l0QK1z5+Pcr<& zq0M7E&3!NSdAKB-7SWT3a#~nInOv(t z4|txs`pQ6oTb3=(F7ewByIh}-SOZ000saPAFg$AC1fpQkVAy?7EK!Mw<$> z$94FX;MFql*tG&&uNp&OG5eLcE31f-(iz83{3T4{0sY$-ldjAQ0NbOPy?h&i?0gQp zuIh@|rhX7TZ@I4j?N6!IX%swxYEA85&BcE#9=?MSK+G}9(589GBIA745)lCVn+G>c zo3J*~mXe*$%J62{?%B?lX`!p;n^+JOz# zbdx-E192Sg*c-W1nzAn1eq3rlT$%Ya1U_p0!==n}DaAYi>%^=4s92Pz?m$7Op&3a> zfWT?Psp=Sg%NuNI=Q*WAXBR2cYt%PITpA0s77OwGjJ;>R?CO7NVRu#<0XKbn~5@F|GeR$!&*xFJa= zr)ekW-h2}aNit=Hn0rViR#&suuziEAOme^DA|3gR+$Nr8oOaNqY|V)SV4kAh`&QPt zNNo2#78?5xX8yFU`XiWu2Wm}@KM*Q?sv-++d>gOCiSg>jednRUcP1TbWFnZbOhC2w z(q8GlxLzr{+ms||LlUnu!u(Mg^*za$2@EtCzDexN`P8mD#zcg4dN|ZRpn{3?U*Tk| zQ7y)cwCO(B{yEspT-*|0r0ZMvTDK$lpP*hbVG~dC*_+ud0$&f9K;y@Epft?)&N={b z3^|bNBOa|R#HI#gfz1|OnoHJzdNG~9E&ICXzOjqkD09&|9B990$_Iw_qIS~3;yzpyxaOX=qnq0oUfC@LYl>`Ux zS3znbdG#7>;DmF1Wgb1@&HkZiKS3WY=_;tcbVID*A#g-*sUgeIuE^DV(naNc_?m+p0)-Cp5sxTa96Ic8-<-xMbQ|(8}3jtTLOaDJf=}ReSpQ) zefx_mlI&o{O<-QH4GV5&yg)Pn#Mk+G)y@rp>56%Euu#X*v!HbBZ*wS|-_VoFGLK*4 z9<*vd*`C34p#FXbMz@HeqI zOr8=kw6v02YWA9UoA~6KO9CsFD4!x~n8znY)$?qKm#3;{gj|6kMQEVLgeHAH?xY{{!jKhD(O5zCYhHW|tn z#V^Blmh*6Yc!?|kR9V{JN&wPF6+V2lNLs*DHVw>Jq3}u4-q42OSk3{kJ1tfDmX+3Rt!$kIfS<{JiLvF~ zjh-Ed7gW0vlJ{T>;ag-;cz+*EVkUo;=}hu~a0tIJd2gC|furAtlPzjEc}P6j9c=vs zYG}*KGRL7(w#v8VpVn3k?OFz^+Q+#E54I@LMhFu0Ne}OqzrBn$A@%Iys;Q46uvVcH z-@sYFMRhwJ>;w`@v&g8Mrm9VUySM1=-i62Y-0x8BO)wMB|29H&*9_fXv566t?7l6J zlkQ}E@77s*-Sd2Z1kM_tTCXe_y6%kl_+PK=wKO>VbW|-(okEhaX#L!6uKO0uw2s~3 zORD?538lB!jFPURlMSe9@kdxHD_LXX=~8N8C4pB56!p6z{V|cS8;NV@65?{7I7HkC zFEe9VY|wR5ecVN+on!HR!0IV#_Xw110>f8zaC z_VHlUw}SH2pk}fj-T6;{6A74<(qO9&DWH(kBA?X)`X>itUoRANh~wRJ&qYJvn7Yrf zjJDxFgdWOo)~)U|CHK%OZN|!-H#G;`n4WX0fE|R;$|FJ)^~mhzYWY=b+xJV#v#o;l z!mvkV7_pZr4IZONFDTLp@{G}CaNE{W_$L*r-7$HrsTO17U?B>W+$!Yf; zCq2J-V?hSH#7s5MbnC+Dwdj9@e;mTtm|tz@KfLzl8Y;Y_{)_;6S~fQI=BOgIGy> z)Z6@C7UB%r<5uP$E(pV&(4v{eMI`z%z$6-i8Ok(sb`lL;QU%D;FD<6n9zkW?HP+)- zgICV3zfdvM6KF65_p9fDhn3oAG$XDa}^SPwN(q(2*f7O(h3Wkn@^zTTIm>8S$h?*j)2eKeLtzU}}*!QNMU-s-qr3AKRh8 zU2H+TO!)Sow480%(lrN8{y@x6dKx)X;hN5vHa$hN!i81K4{xmBB7i<1L7%H=rd5t3UCH4%9Pg}lkZI?tW$pv!Xjvk zsJijpv&WysG!0P-(5Uo|WqoEJYm85=e5n98HhE&UCEDRJlMzca*yb_P^wA1r5ZZ+q z@r&OY|HE=Z#a@5J(oGtnK~5*kQI29 znXOxG7AWfsEW}taNiA!Gi<67rjb(~ zL`evaX)e%a?39%VB|A<+Rc5C{Lw`3&r`zB;x$ZFHSmDErecWWhoRant&X4iZ)*M8i zrP{(H)p6!6sKQ^%F|L1o4tDk7yyZ@?)nGXCGu#hr)Ns}=d(~y~qiTUQ1U?aa4BNd& zoe|dwaj~f6i<$rN^!7DYe>eqF4Nuomkf=De?L%pubz!mvJ@yf7_hZ_-KJ#Coj+&oO zuYsc9qaON#@{NLxw7;F>gO}~Ql+d#4#_wvE<+#*O#+_qS;BFn04_(|~xr8%D&zJ6U zBAk7nfPmGq+k+jIl+@29oFnDp4dc6d7)wlqsCvsbT~B+3MyC1Gl$R4~lw1L&bQbn? z#DoUTUq<3A7)2h~K&hZ1m1^EoKT9as7YpmQk-uLD!#y{>Lg4M6398Wi>N}q(VT~Xq zv~aL39$I+B;b*xlxRw_WaaHUcy+c+RkC0DWYZg6U-6k=idyWm=;bL%nUDhc%b!dv0 z$%0vcJ;->~L?!ylK-1pTvAj45OJM!E48(wq-T>lVofD zH2R2UzF3uM&e8m%2UrQhqFjPWcotJ=FT!?Ao1%duF^{|y4ewdwscRDG>d@3Uj;v(-AfBdtwLU<86ny$*v=J8e3l68`yv-~~wJ^%@IhJc(m~%rdwAN1PaN-~oxp%lL~{ z_nfY~33vH5YI#u!%p^^pl9hp)G<$&#_vDU0>kiL>d#nA25SPWEqhH#zKMSD=v87?o z{wZAe_g{p4#3|!%U|Gz@Zy7>;!=P44O*-E6I`#c_YE-UZ>~5Vxtavw zcn>z%QXsdKGW-5c>)TOc6W!5B*xz(dqQI|5-L0{Zw4ERy1<+|j*y>%{5jpahKGvj@ zAR8L_L-Whm5tVxkb3A8FA01?j^n0}LyZC4S1oLr&-~8Y=68CznEWx#g z&5v7zZmzY73(vJuDO;9^v}-v)X?(9fO7o7}?Y#DTw%I;C#iiNP>&z@3hC7Z;7yWQe z(SpLnkZma?OxF6I9p~U_Vyw_jW8@Ck5`>IFr%oSx&4pO|0pU@rw` zVgQcj@f$~x+ne+t_?>t&`5TEhW`RFRL%n%1dRIiC$`@)^6Sqf``K7F!X7g0j4~88h zl6lE@)>!IIvtQsji;KZXLw8OxcfKh$vcRr4=HpJ7B7?5^0|e@TfB#z`%uA0zjhI}D zx;--x+^Ep&sQiw-PJcn0U%pt-kS~;TU_cJKB2-x%(ZHsu;eV?}q$sBEwxRDxL_MJ( zn)0W6yo-ChNS9Zf8DR(N?+&>v(BjguUm!K%4w{LX*uY0nsWb2_%DxF8BS55`IG$i- zqx@rKyrtWmz)l-!BO>=&SfU4Q;TRFQrPaojcG_Sm(NuVFLWqJHB*dDF7CZC-%_xy! z?et7&ACYfB2I5?-#rd#P$k$Su#cUfqAG(fsDSnCz&uk8NO+OILst>73w}*c{=uxr5 zzco^yFbibLbkw+pk`KQAVa_{k$@6fSjn5dGTP_;nI?p+mGRMYnq!YYzuXfAERdI=$ znXK$~G3xv5iN~dsAJt-Hc_Q0b7JX3T6SBgZYB;kN^uB;$@F>Cb2L>J{M797ULYmx9 zp87|6euXpb8fNA;%A}QbtuG$xLRa5GO-Gmp;y}Tvz3kiL*Re;Nq`?5`wIqt z8X14j;kgRSVRVpXRQ1e@?BXjhZr7I3OW0zTA0KGekFHhF;p%o`2e`gR@k+YR9j24Z zR&i23`j+_iOGN7zUXp>@#K$Yi_8(mo!CBJ&al2I?IrCX)rtxsQZkB{%I4X*mohKm{Eej-S{END*r(a)9~jbu-+s>9c(}F~cV|{`iP@7U6AY)YCb9#{NGq+MbZL|k zAp{WoOfxTfU|VBJ(S$HxdlQB-9PNHyJWjkwTQyM1+M08Oq!L~316f06EW^b2-gFK& z6o$(2TQv^h4%Yj;rI4&*Qfpymx*De3ahyfN+Ep@#TD2Y827R^f+W!NjJjEW(^gBm1JD*A)=S_Y*xR$^`< zK}WVc9DMxG!LK6yEHuCQXICZ6uBwc)NCK+tpVx@J7d5W3cY!Q+?>at6i300Y8$;zF_zij(7yR+FD z84-0apmJRrKuWd>%7oe9pBEtGVOqt{mAmW=z=i^&N??Xf7Oh#5kW}$d+e>GwN^?yA%(oD zr%W%X^jb{9i!<9|evnTdsZK2mrH!tc4KeK*iA+;ROU~JqfB|MtoN+j0ObxgabX_DR|7Ne{PZjn4SaG@FO=Km5&1RMPO`5f;2i8QF*c(f-3 z9=$Ng-l!hOz+=AU#SQyoLAGVJ5a0yz%-fw)*%4YXQ(WU1He(fm)nf?dDdX;US=BF- zbP4?tqWgJ&W1E`j3%3_kOgQ@ecOG=+$aTCSyT$s&53FDIzjfNn@449b@%&up5aY{! z+F|Pf8u>x87oNO6sJ zEoJ9yn$41NOrYuuJ0Z;vQ0G){)4U%-#2>9hk0v>yd5b4|i0#EUiAt>cKA0NE z#mxY#h&JCNVOXOcv-=0hNkpqu3RfBH&E=FxxXm_j#=LkQ5c^o5;JipI=6vAz&fv}v zv(ZP{v_{i44<{ITjc>?=p!_a{4c!taqHzd?XW$`z_4N#z@(z5pV5aX~ufTN@e>Khe zoN4yNlwf3526_T_Cx{AZb6KP{q)_ZkJK*)(EI*VME14kUd8v@ z96I3+4wYwDxxh%$^mTo@S9KV4u<=b8wm4JAalsNmmAc2L#-^tn-`8%eVeyMb*=Z#7 zwEyuR64G^rKSc1zo>(n!&jJ3l&bf7W1xRZ5%J3lK@KqHqW!KG;2={v(>y5Na(nK^>JgzzN{oG?2*x}zB;3=%LNDyZi`7U28u|=KU z)_x%_?cJL&=X8S*c#9E5Zr)??;Bv?K83!;fgwJ*yucfa=;VdFg>(>S~e1tExZ=87X zO}mS~i~NObD)>EK{bWC{Df%M7{LvEzN5LiZH>0OrSv`A0-hLE|5jzT_#9?Y!sPM5U zFX=O!?EBK8t@t_ZgX;z-h94y~3wXcr%7hr=YZUe1by+nyfa+>WDzds(4e> zeHMW}4&`+v*GMW@X+Q0A&cO;2)~9hnDzdBi)HZs(Sx5Gh+K__s=p}QH{S9 z#=tWl_E$1k9&clw#n$wpT*!|nT_)yE8><+J_4m)-(8M05_^(+@hLtHQwi)8rHPV9& zf^>r+lOPh?vDvA)T4(V`YC7XN5BEhg|3~cBH&982#Wq*B#>)Kj3KnnvKNb+bEjqgH zm)67_=KM4dqSqwrpT$Dy4!mMF3zU2g68_B{>2hHFtxdX)|3}nYMn&~^{lkEC4kZmk z3DO}UASD9QC?PO(H$!*F(A}k^NcYg)B}g|zDqR9n&-q>Vf34>QYw>1g&YJn2v-hX= zZvDFGXjhE8YL0U2MKR<#3Cv?-{E+S1w)M~>Vzj~#x{`@2K@M<-n?FuNRc<%)k-(1Y zUQ+G~vVNu^7JU}<=ZJ?`*QPbAS?cdtr9>vP3A?&xXsFF~MeQ-|Wn@0PBCxTbs23}J zsLDDX?c#^hc;9V=Fz{tUovhh=RAqb3T~%wRiE6KId2$cz1|HHGiV@-^)y0g)4*{(z@+8C}JC7!HFC1IL z2NJ`k`Qhb?1_d!CTkN8|nLw%_unv`Ln}|ZQpsFd*?39@uMg;V1;+Q-`iC?G6BCW-XyksS-QHLw?XG~t33QBN%y?6v#n}>hb3(e5` zNh0iM=JA)lD4YJI?P1Z=^h$f}@>Bb~T}q{XE=5aw4S%e$i@fyWMz}42W`#G6reD5< zE)K!*=@N@$wdBRYA9Wu$CcP;9mVsi1PdKlGpzq8HEO1;hMwR=tY8LK`JOA2%tC|!U znz_xGu}_S=Q67Iom3EIYH5e{@tjjnScHZ*cxM0kFklp1RLBzKWIo*(QA+_}3(j=KZ z2rh?Tx5j6Gsh+_&;TRpW3V6$s=tK&mO6Oza(9%Ylh|j7xGtjedy!IT%K5d+vw}`e? zuX=x%sq@3ADW$hD#n5QA8B*wJ(n=)(ET#$|@8tN3CxP{rPxmB#s0xSVF3$&-jMxCq zPO(EF@H54~&0c60b+gHMHO<6F{Sa7Ep@psCLOwCTRKQs%@a$ao`Gl8Z;zHs&Lkc3T zQ@Sghl=7PFHWFh{qexb4J*wXK!7h*C}I-$;QelE;!SGxtlLn!-c^pFvs zTHiHZA4j>3-ZP17Z*^gv$M2X56T2wR{!Kp$xt%jBon}PEHQPpxiRRt zNf+ye1q_x=I*m6-t$kkjoa?#vHYS;u%tG;_S=w!TzBRD1!`xoNLdSTbiPrFcEn0J> za@zk`jtO=C?tj8%6lQ+2jfr4~uW6}14xI#>kabkirt937D^&aLf0<<)V#oKHmVcY^ zhUQgJr6<+jvWbKr_lURuZV9r?Av^{ zN8C%!zwILK#+&1FN--tpM*W!z-IR7Fk}C*Vq-_stZcjgNKjg@B&goB%BlaA0!*;yq z+Wz88{<%0ovOUH|udQ;OU$@##Xc}Gi7juFll2HlC;KX=NH#{HRVblDE;$hk!wJT3F z&~Wl(sCw`3c5_q6ZO1X_>F5@lyLHM)?mO|qOudtaNfH^Fn&3r?=BV$xy5LlM^@+_R zSw%@n>wKI#ZYW~k9Ne*(|`u9D%^zc216H-P)c59w6?2f450DklV?`;`+|Hc>S!LrppdD*n@a!K z@L#DI%N-$!N1gQgBp!PTUAzVU9n9-jhm2i!tK-RgGr#bD7Q8&;>3`tOALkyM)W<7m z=85^7iF3;UMWU0D=wbgRgw|l*pvMmz+o(XCPGJ}h;`F4S>mDcrO-~R`W_bo@8|ni$ zhx3D72s}RI|1~AU!w0Z1Tu)h0I_MQ+6p=~chCmPNJGm;BQ?YcvxSy;`#KG{~$Ql_V zbCS=}uuycX1-Y!XBT$O=i!>$d z(Un~>&+Lzt@7#Oi#VOr~n*Wv>mR7TXTtR>^gkKqq5 zL|LhjFvz8wE9@w!&C_3?q%k${GpJbj-o7_d4GEt=T#e6?>Z)XZUAl5PbFlPXnD8Pw zwNUbxEX9|pHP+0r=v@`eED#5aZ*NY~vJWM`(|Q3#qZWGF_YmQ+LK4y&#|{KKlTfF-kpO-oF8b9U=ru8} zCum!r^w9d}3S2CW%K{~tVPy|*Wa~{c*q1?-18Ob$iKg?*vIo9X!<;e0qhxb2=sT4b zycyA(R{i14IU%=eB=oCexA)(oZ=VTr$UryGBp|Jxn&p;+#K;5Bp^e{Ww;SkOQ7+pA zLsi@R#JRT<8e~txYm9M~Q{&fLUV3x}4WBza=jUTtEJe@S%4~1%`bi(g4wzfkH?H!B z0(h&28r-gk@U|~nL!o8QZO;|Li0R+wUiV0U!}flr$98K^fHk5O8a~VRim(|@0VEvBRcoc)e>~ZANyBX@ z2yCZTSd=(_z}*9^INnvaj5?{oTcGY1=8bKjBLG6h-&z&KkFr!q1DS zvyQH1pj}vYjZ+y9apB{TsDAVwWi!swk~g=xPv?sMOC?>e_ zBfwNtNE+(d+ouQzIQb1XzRK-K;Cv7srNG@O5T2;Nhq)O zdfWbn)g8kEHG!JDpHPpLav&&7?O!VM*Q%ZN(G-#H1htE!D#YgapEUUkcaz1759Cs?l2XwW7vN(Ee!q9Jw9mO zcvp$hZ~o>iKSl@;+U5jd_h$pVTImvo3h1_8N~FmLN*GX9vvl5_>UzK1K36jTiMRHx zH~~4wJve`n+fOO_);9sd#joyl*xTMVmHgupDCfGV3qHW5P+=kJV(uW(0G;0L7FnOu zqXwK-XuOQU71J!SS_&(K4~ts_<9Zf#J~EF)w)m$QZlgraAc`mW2(1d4RzS}jysMcMB5)# zcePv-&d%uVJOhbecx-9j2#6iS12-med$}#+wLektZ? z+(LT3WC{VV{Vkc6%SFkHjR$3Tuk5`Q!*4

    `PWr0q>dU1xIe#;YFeg2B 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

[JsonIgnore] internal string? ScopeIdentifier { get; set; } + + /// + /// Indicates whether the ProcessContent request should ask the service for inline evaluation. + /// + [JsonIgnore] + internal bool ProcessInline { get; set; } } diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/PurviewClient.cs b/dotnet/src/Microsoft.Agents.AI.Purview/PurviewClient.cs index 28013f524eb..43b564b58fc 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/PurviewClient.cs +++ b/dotnet/src/Microsoft.Agents.AI.Purview/PurviewClient.cs @@ -130,6 +130,11 @@ public async Task ProcessContentAsync(ProcessContentRequ message.Headers.Add("If-None-Match", request.ScopeIdentifier); } + if (request.ProcessInline) + { + message.Headers.Add("Prefer", "evaluateInline"); + } + string content = JsonSerializer.Serialize(request, PurviewSerializationUtils.SerializationSettings.GetTypeInfo(typeof(ProcessContentRequest))); message.Content = new StringContent(content, Encoding.UTF8, "application/json"); diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/README.md b/dotnet/src/Microsoft.Agents.AI.Purview/README.md index 1a9fc70725f..bcd1a261922 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/README.md +++ b/dotnet/src/Microsoft.Agents.AI.Purview/README.md @@ -218,8 +218,8 @@ The policy logic is identical; the only difference is the hook point in the pipe The user id from the prompt message(s) is reused for the response evaluation so both evaluations map consistently to the same user. -There are several optimizations to speed up Purview calls. Protection scope lookups (the first step in evaluation) are cached to minimize network calls. -If the policies allow content to be processed offline, the middleware will add the process content request to a channel and run it in a background worker. Similarly, the middleware will run a background request if no scopes apply and the interaction only has to be logged in Audit. +There are several optimizations to speed up Purview calls. Protection scope lookups (the first step in evaluation) are cached to minimize network calls. When a lookup is not cached, the middleware will refresh it in a background worker so the foreground ProcessContent request does not have to wait. +If the policies allow content to be processed offline, the middleware will add the process content request to a channel and run it in a background worker. Similarly, the middleware will run a background request if no scopes apply and the interaction only has to be logged in Audit. Payment Required responses from background scope lookups are cached at the tenant level so subsequent requests for the tenant short-circuit. ## Exceptions | Exception | Scenario | diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/ScopedContentProcessor.cs b/dotnet/src/Microsoft.Agents.AI.Purview/ScopedContentProcessor.cs index 3fb7aa6c4df..3e280014a08 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/ScopedContentProcessor.cs +++ b/dotnet/src/Microsoft.Agents.AI.Purview/ScopedContentProcessor.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Threading; using System.Threading.Tasks; using Microsoft.Agents.AI.Purview.Models.Common; @@ -193,43 +194,60 @@ private async Task ProcessContentWithProtectionScopesAsy { ProtectionScopesRequest psRequest = CreateProtectionScopesRequest(pcRequest, pcRequest.UserId, pcRequest.TenantId, pcRequest.CorrelationId); + PaymentRequiredCacheEntry? cachedPaymentRequired = await this._cacheProvider.GetAsync( + new PaymentRequiredCacheKey(pcRequest.TenantId), + cancellationToken).ConfigureAwait(false); + + if (cachedPaymentRequired != null) + { + throw new PurviewPaymentRequiredException(cachedPaymentRequired.Message ?? "Payment required"); + } + ProtectionScopesCacheKey cacheKey = new(psRequest); ProtectionScopesResponse? cacheResponse = await this._cacheProvider.GetAsync(cacheKey, cancellationToken).ConfigureAwait(false); - ProtectionScopesResponse psResponse; - if (cacheResponse != null) { - psResponse = cacheResponse; + return await this.ProcessWithCachedScopesAsync(pcRequest, cacheResponse, cacheKey, cancellationToken).ConfigureAwait(false); } - else + + try { - psResponse = await this._purviewClient.GetProtectionScopesAsync(psRequest, cancellationToken).ConfigureAwait(false); - await this._cacheProvider.SetAsync(cacheKey, psResponse, cancellationToken).ConfigureAwait(false); + this._channelHandler.QueueJob(new ScopeRetrievalJob(psRequest, cacheKey, pcRequest)); + } + catch (PurviewJobException) + { + // QueueJob already logs failures. Scope warmup is best effort; don't block ProcessContent. } + return await this.CallProcessContentAsync(pcRequest, cacheKey, dlpActions: null, cancellationToken).ConfigureAwait(false); + } + + /// + /// Apply locally-cached protection scopes to the request and dispatch ProcessContent appropriately. + /// + private async Task ProcessWithCachedScopesAsync( + ProcessContentRequest pcRequest, + ProtectionScopesResponse psResponse, + ProtectionScopesCacheKey cacheKey, + CancellationToken cancellationToken) + { pcRequest.ScopeIdentifier = psResponse.ScopeIdentifier; (bool shouldProcess, List dlpActions, ExecutionMode executionMode) = CheckApplicableScopes(pcRequest, psResponse); if (shouldProcess) { + pcRequest.ProcessInline = executionMode == ExecutionMode.EvaluateInline; + if (executionMode == ExecutionMode.EvaluateOffline) { this._channelHandler.QueueJob(new ProcessContentJob(pcRequest)); return new ProcessContentResponse(); } - ProcessContentResponse pcResponse = await this._purviewClient.ProcessContentAsync(pcRequest, cancellationToken).ConfigureAwait(false); - - if (pcResponse.ProtectionScopeState == ProtectionScopeState.Modified) - { - await this._cacheProvider.RemoveAsync(cacheKey, cancellationToken).ConfigureAwait(false); - } - - pcResponse = CombinePolicyActions(pcResponse, dlpActions); - return pcResponse; + return await this.CallProcessContentAsync(pcRequest, cacheKey, dlpActions, cancellationToken).ConfigureAwait(false); } ContentActivitiesRequest caRequest = new(pcRequest.UserId, pcRequest.TenantId, pcRequest.ContentToProcess, pcRequest.CorrelationId); @@ -238,6 +256,30 @@ private async Task ProcessContentWithProtectionScopesAsy return new ProcessContentResponse(); } + /// + /// Call ProcessContent and invalidate the protection scopes cache when the response indicates the cached scopes are stale. + /// + private async Task CallProcessContentAsync( + ProcessContentRequest pcRequest, + ProtectionScopesCacheKey cacheKey, + List? dlpActions, + CancellationToken cancellationToken) + { + ProcessContentResponse pcResponse = await this._purviewClient.ProcessContentAsync(pcRequest, cancellationToken).ConfigureAwait(false); + + if (pcRequest.ScopeIdentifier != null && pcResponse.ProtectionScopeState == ProtectionScopeState.Modified) + { + await this._cacheProvider.RemoveAsync(cacheKey, cancellationToken).ConfigureAwait(false); + } + + if (dlpActions?.Count > 0) + { + pcResponse = CombinePolicyActions(pcResponse, dlpActions); + } + + return pcResponse; + } + /// /// Dedupe policy actions received from the service. /// @@ -248,9 +290,21 @@ private static ProcessContentResponse CombinePolicyActions(ProcessContentRespons { if (actionInfos?.Count > 0) { - pcResponse.PolicyActions = pcResponse.PolicyActions is null ? - actionInfos : - [.. pcResponse.PolicyActions, .. actionInfos]; + List combinedActions = []; + HashSet<(DlpAction Action, RestrictionAction? RestrictionAction)> seenActions = []; + IEnumerable allActions = pcResponse.PolicyActions is null + ? actionInfos + : pcResponse.PolicyActions.Concat(actionInfos); + + foreach (DlpActionInfo actionInfo in allActions) + { + if (seenActions.Add((actionInfo.Action, actionInfo.RestrictionAction))) + { + combinedActions.Add(actionInfo); + } + } + + pcResponse.PolicyActions = combinedActions; } return pcResponse; @@ -262,7 +316,7 @@ private static ProcessContentResponse CombinePolicyActions(ProcessContentRespons /// The process content request. /// The protection scopes response that was returned for the process content request. /// A bool indicating if the content needs to be processed. A list of applicable actions from the scopes response, and the execution mode for the process content request. - private static (bool shouldProcess, List dlpActions, ExecutionMode executionMode) CheckApplicableScopes(ProcessContentRequest pcRequest, ProtectionScopesResponse psResponse) + internal static (bool shouldProcess, List dlpActions, ExecutionMode executionMode) CheckApplicableScopes(ProcessContentRequest pcRequest, ProtectionScopesResponse psResponse) { ProtectionScopeActivities requestActivity = TranslateActivity(pcRequest.ContentToProcess.ActivityMetadata.Activity); @@ -284,7 +338,11 @@ private static (bool shouldProcess, List dlpActions, ExecutionMod foreach (var location in scope.Locations ?? Array.Empty()) { - locationMatch = location.DataType.EndsWith(locationType, StringComparison.OrdinalIgnoreCase) && location.Value.Equals(locationValue, StringComparison.OrdinalIgnoreCase); + if (location.DataType.EndsWith(locationType, StringComparison.OrdinalIgnoreCase) && location.Value.Equals(locationValue, StringComparison.OrdinalIgnoreCase)) + { + locationMatch = true; + break; + } } if (activityMatch && locationMatch) diff --git a/dotnet/src/Microsoft.Agents.AI.Purview/Serialization/PurviewSerializationUtils.cs b/dotnet/src/Microsoft.Agents.AI.Purview/Serialization/PurviewSerializationUtils.cs index 320fbcd3b6f..0be4c592671 100644 --- a/dotnet/src/Microsoft.Agents.AI.Purview/Serialization/PurviewSerializationUtils.cs +++ b/dotnet/src/Microsoft.Agents.AI.Purview/Serialization/PurviewSerializationUtils.cs @@ -18,6 +18,8 @@ namespace Microsoft.Agents.AI.Purview.Serialization; [JsonSerializable(typeof(ContentActivitiesRequest))] [JsonSerializable(typeof(ContentActivitiesResponse))] [JsonSerializable(typeof(ProtectionScopesCacheKey))] +[JsonSerializable(typeof(PaymentRequiredCacheKey))] +[JsonSerializable(typeof(PaymentRequiredCacheEntry))] internal sealed partial class SourceGenerationContext : JsonSerializerContext; /// diff --git a/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/PurviewClientTests.cs b/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/PurviewClientTests.cs index 38abc903d39..6b857101c72 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/PurviewClientTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/PurviewClientTests.cs @@ -115,6 +115,24 @@ public async Task ProcessContentAsync_WithScopeIdentifier_IncludesIfNoneMatchHea Assert.Equal("\"test-scope-123\"", this._handler.IfNoneMatchHeader); } + [Fact] + public async Task ProcessContentAsync_WithProcessInline_IncludesPreferHeaderAsync() + { + // Arrange + var request = CreateValidProcessContentRequest(); + request.ProcessInline = true; + var expectedResponse = new ProcessContentResponse { Id = "test-id" }; + + this._handler.StatusCodeToReturn = HttpStatusCode.OK; + this._handler.ResponseToReturn = JsonSerializer.Serialize(expectedResponse, PurviewSerializationUtils.SerializationSettings.GetTypeInfo(typeof(ProcessContentResponse))); + + // Act + await this._client.ProcessContentAsync(request, CancellationToken.None); + + // Assert + Assert.Equal("evaluateInline", this._handler.PreferHeader); + } + [Fact] public async Task ProcessContentAsync_WithRateLimitError_ThrowsPurviewRateLimitExceptionAsync() { @@ -530,6 +548,7 @@ internal sealed class PurviewClientHttpMessageHandlerStub : HttpMessageHandler public HttpMethod? RequestMethod { get; private set; } public string? AuthorizationHeader { get; private set; } public string? IfNoneMatchHeader { get; private set; } + public string? PreferHeader { get; private set; } protected override async Task SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) { @@ -547,6 +566,11 @@ protected override async Task SendAsync(HttpRequestMessage this.IfNoneMatchHeader = string.Join(", ", ifNoneMatchValues); } + if (request.Headers.TryGetValues("Prefer", out var preferValues)) + { + this.PreferHeader = string.Join(", ", preferValues); + } + // Throw HttpRequestException if configured if (this.ShouldThrowHttpRequestException) { diff --git a/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/ScopedContentProcessorTests.cs b/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/ScopedContentProcessorTests.cs index 3527cc9884a..3cfc81face3 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/ScopedContentProcessorTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Purview.UnitTests/ScopedContentProcessorTests.cs @@ -3,12 +3,14 @@ using System; using System.Collections.Generic; using System.Threading; +using System.Threading.Channels; using System.Threading.Tasks; using Microsoft.Agents.AI.Purview.Models.Common; using Microsoft.Agents.AI.Purview.Models.Jobs; using Microsoft.Agents.AI.Purview.Models.Requests; using Microsoft.Agents.AI.Purview.Models.Responses; using Microsoft.Extensions.AI; +using Microsoft.Extensions.Logging.Abstractions; using Moq; namespace Microsoft.Agents.AI.Purview.UnitTests; @@ -50,10 +52,6 @@ public async Task ProcessMessagesAsync_WithBlockAccessAction_ReturnsShouldBlockT this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); - this._mockCacheProvider.Setup(x => x.GetAsync( - It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - var psResponse = new ProtectionScopesResponse { Scopes = @@ -70,8 +68,8 @@ public async Task ProcessMessagesAsync_WithBlockAccessAction_ReturnsShouldBlockT ] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); var pcResponse = new ProcessContentResponse @@ -109,10 +107,6 @@ public async Task ProcessMessagesAsync_WithRestrictionActionBlock_ReturnsShouldB this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); - this._mockCacheProvider.Setup(x => x.GetAsync( - It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - var psResponse = new ProtectionScopesResponse { Scopes = @@ -129,8 +123,8 @@ public async Task ProcessMessagesAsync_WithRestrictionActionBlock_ReturnsShouldB ] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); var pcResponse = new ProcessContentResponse @@ -168,10 +162,6 @@ public async Task ProcessMessagesAsync_WithNoBlockingActions_ReturnsShouldBlockF this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); - this._mockCacheProvider.Setup(x => x.GetAsync( - It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - var psResponse = new ProtectionScopesResponse { Scopes = @@ -188,8 +178,8 @@ public async Task ProcessMessagesAsync_WithNoBlockingActions_ReturnsShouldBlockF ] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); var pcResponse = new ProcessContentResponse @@ -213,6 +203,99 @@ public async Task ProcessMessagesAsync_WithNoBlockingActions_ReturnsShouldBlockF Assert.Equal("user-123", result.userId); } + [Fact] + public async Task ProcessMessagesAsync_DeduplicatesCombinedPolicyActionsByActionAndRestrictionAsync() + { + // Arrange + List messages = + [ + new(ChatRole.User, "Test message") + ]; + PurviewSettings settings = CreateValidPurviewSettings(); + TokenInfo tokenInfo = new() { TenantId = "tenant-123", UserId = "user-123", ClientId = "client-123" }; + DlpActionInfo processContentAction = new() { Action = DlpAction.BlockAccess, RestrictionAction = RestrictionAction.Block }; + DlpActionInfo duplicateScopeAction = new() { Action = DlpAction.BlockAccess, RestrictionAction = RestrictionAction.Block }; + DlpActionInfo restrictionOnlyAction = new() { RestrictionAction = RestrictionAction.Block }; + ProcessContentResponse pcResponse = new() + { + PolicyActions = + [ + processContentAction + ] + }; + ProtectionScopesResponse psResponse = new() + { + Scopes = + [ + new() + { + Activities = ProtectionScopeActivities.UploadText, + Locations = + [ + new("microsoft.graph.policyLocationApplication", "app-123") + ], + ExecutionMode = ExecutionMode.EvaluateInline, + PolicyActions = + [ + duplicateScopeAction, + restrictionOnlyAction + ] + } + ] + }; + + this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) + .ReturnsAsync(tokenInfo); + + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(psResponse); + + this._mockPurviewClient.Setup(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(pcResponse); + + // Act + await this._processor.ProcessMessagesAsync( + messages, "session-123", Activity.UploadText, settings, "user-123", CancellationToken.None); + + // Assert + Assert.NotNull(pcResponse.PolicyActions); + Assert.Equal(2, pcResponse.PolicyActions.Count); + Assert.Same(processContentAction, pcResponse.PolicyActions[0]); + Assert.Same(restrictionOnlyAction, pcResponse.PolicyActions[1]); + } + + [Fact] + public void CheckApplicableScopes_MatchesAnyLocationInScope() + { + // Arrange + ProcessContentRequest pcRequest = CreateProcessContentRequest(); + ProtectionScopesResponse psResponse = new() + { + Scopes = + [ + new() + { + Activities = ProtectionScopeActivities.UploadText, + Locations = + [ + new("microsoft.graph.policyLocationApplication", "app-123"), + new("microsoft.graph.policyLocationApplication", "different-app") + ], + ExecutionMode = ExecutionMode.EvaluateInline + } + ] + }; + + // Act + (bool shouldProcess, _, ExecutionMode executionMode) = ScopedContentProcessor.CheckApplicableScopes(pcRequest, psResponse); + + // Assert + Assert.True(shouldProcess); + Assert.Equal(ExecutionMode.EvaluateInline, executionMode); + } + [Fact] public async Task ProcessMessagesAsync_UsesCachedProtectionScopes_WhenAvailableAsync() { @@ -279,12 +362,9 @@ public async Task ProcessMessagesAsync_InvalidatesCache_WhenProtectionScopeModif this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); - this._mockCacheProvider.Setup(x => x.GetAsync( - It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - var psResponse = new ProtectionScopesResponse { + ScopeIdentifier = "etag-1", Scopes = [ new() @@ -299,8 +379,8 @@ public async Task ProcessMessagesAsync_InvalidatesCache_WhenProtectionScopeModif ] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); var pcResponse = new ProcessContentResponse @@ -336,10 +416,6 @@ public async Task ProcessMessagesAsync_SendsContentActivities_WhenNoApplicableSc this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); - this._mockCacheProvider.Setup(x => x.GetAsync( - It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - var psResponse = new ProtectionScopesResponse { Scopes = @@ -355,8 +431,8 @@ public async Task ProcessMessagesAsync_SendsContentActivities_WhenNoApplicableSc ] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); // Act @@ -432,13 +508,9 @@ public async Task ProcessMessagesAsync_ExtractsUserIdFromMessageAdditionalProper this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); + var psResponse = new ProtectionScopesResponse { Scopes = [] }; this._mockCacheProvider.Setup(x => x.GetAsync( It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - - var psResponse = new ProtectionScopesResponse { Scopes = [] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); // Act @@ -467,13 +539,9 @@ public async Task ProcessMessagesAsync_ExtractsUserIdFromMessageAuthorName_WhenV this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) .ReturnsAsync(tokenInfo); + var psResponse = new ProtectionScopesResponse { Scopes = [] }; this._mockCacheProvider.Setup(x => x.GetAsync( It.IsAny(), It.IsAny())) - .ReturnsAsync((ProtectionScopesResponse?)null); - - var psResponse = new ProtectionScopesResponse { Scopes = [] }; - this._mockPurviewClient.Setup(x => x.GetProtectionScopesAsync( - It.IsAny(), It.IsAny())) .ReturnsAsync(psResponse); // Act @@ -484,10 +552,260 @@ public async Task ProcessMessagesAsync_ExtractsUserIdFromMessageAuthorName_WhenV Assert.Equal(userId, result.userId); } + [Fact] + public async Task ProcessMessagesAsync_CacheMiss_QueuesScopeRetrievalJobAndCallsProcessContentAsync() + { + // Arrange + var messages = new List + { + new (ChatRole.User, "Test message") + }; + var settings = CreateValidPurviewSettings(); + var tokenInfo = new TokenInfo { TenantId = "tenant-123", UserId = "user-123", ClientId = "client-123" }; + this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) + .ReturnsAsync(tokenInfo); + + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync((ProtectionScopesResponse?)null); + + this._mockPurviewClient.Setup(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(new ProcessContentResponse()); + + // Act + await this._processor.ProcessMessagesAsync( + messages, "session-123", Activity.UploadText, settings, "user-123", CancellationToken.None); + + // Assert: ProcessContent runs in the foreground; GetProtectionScopes is queued as a background job. + this._mockPurviewClient.Verify(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny()), Times.Once); + this._mockPurviewClient.Verify(x => x.GetProtectionScopesAsync( + It.IsAny(), It.IsAny()), Times.Never); + this._mockChannelHandler.Verify(x => x.QueueJob(It.IsAny()), Times.Once); + } + + [Fact] + public async Task ProcessMessagesAsync_CacheMiss_WithProcessContentBlockAction_ReturnsShouldBlockTrueAsync() + { + // Arrange + var messages = new List + { + new (ChatRole.User, "Test message") + }; + var settings = CreateValidPurviewSettings(); + var tokenInfo = new TokenInfo { TenantId = "tenant-123", UserId = "user-123", ClientId = "client-123" }; + this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) + .ReturnsAsync(tokenInfo); + + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync((ProtectionScopesResponse?)null); + + var pcResponse = new ProcessContentResponse + { + PolicyActions = + [ + new() { Action = DlpAction.BlockAccess } + ] + }; + + this._mockPurviewClient.Setup(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(pcResponse); + + // Act + var result = await this._processor.ProcessMessagesAsync( + messages, "session-123", Activity.UploadText, settings, "user-123", CancellationToken.None); + + // Assert + Assert.True(result.shouldBlock); + this._mockChannelHandler.Verify(x => x.QueueJob(It.IsAny()), Times.Once); + } + + [Fact] + public async Task ProcessMessagesAsync_CacheMiss_StillCallsProcessContentWhenScopeJobCannotQueueAsync() + { + // Arrange + var messages = new List + { + new (ChatRole.User, "Test message") + }; + var settings = CreateValidPurviewSettings(); + var tokenInfo = new TokenInfo { TenantId = "tenant-123", UserId = "user-123", ClientId = "client-123" }; + this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) + .ReturnsAsync(tokenInfo); + + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync((ProtectionScopesResponse?)null); + + this._mockChannelHandler.Setup(x => x.QueueJob(It.IsAny())) + .Throws(new PurviewJobException("queue unavailable")); + + this._mockPurviewClient.Setup(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(new ProcessContentResponse()); + + // Act + await this._processor.ProcessMessagesAsync( + messages, "session-123", Activity.UploadText, settings, "user-123", CancellationToken.None); + + // Assert: scope warmup is attempted, and ProcessContent still runs when it can't be queued. + this._mockChannelHandler.Verify(x => x.QueueJob(It.IsAny()), Times.Once); + this._mockPurviewClient.Verify(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny()), Times.Once); + } + + [Fact] + public async Task ProcessMessagesAsync_WithCachedPaymentRequiredState_ThrowsPaymentRequiredAsync() + { + // Arrange + var messages = new List + { + new (ChatRole.User, "Test message") + }; + var settings = CreateValidPurviewSettings(); + var tokenInfo = new TokenInfo { TenantId = "tenant-123", UserId = "user-123", ClientId = "client-123" }; + this._mockPurviewClient.Setup(x => x.GetUserInfoFromTokenAsync(It.IsAny(), null)) + .ReturnsAsync(tokenInfo); + + this._mockCacheProvider.Setup(x => x.GetAsync( + It.IsAny(), It.IsAny())) + .ReturnsAsync(new PaymentRequiredCacheEntry("Payment required")); + + // Act + Assert + await Assert.ThrowsAsync(() => + this._processor.ProcessMessagesAsync( + messages, "session-123", Activity.UploadText, settings, "user-123", CancellationToken.None)); + + this._mockPurviewClient.Verify(x => x.ProcessContentAsync( + It.IsAny(), It.IsAny()), Times.Never); + this._mockChannelHandler.Verify(x => x.QueueJob(It.IsAny()), Times.Never); + } + + [Fact] + public async Task BackgroundJobRunner_ScopeRetrievalPaymentRequired_CachesForSubsequentCallsAsync() + { + // Arrange + Func, Task>? runner = null; + Mock channelHandler = new(); + Mock purviewClient = new(); + Mock cacheProvider = new(); + PurviewSettings settings = new("TestApp") { MaxConcurrentJobConsumers = 1 }; + ProtectionScopesRequest request = new("user-123", "tenant-123") + { + Activities = ProtectionScopeActivities.UploadText, + Locations = + [ + new("microsoft.graph.policyLocationApplication", "app-123") + ] + }; + ProtectionScopesCacheKey cacheKey = new(request); + Channel channel = Channel.CreateUnbounded(); + + channelHandler.Setup(x => x.AddRunner(It.IsAny, Task>>())) + .Callback, Task>>(callback => runner = callback); + + purviewClient.Setup(x => x.GetProtectionScopesAsync(It.IsAny(), It.IsAny())) + .ThrowsAsync(new PurviewPaymentRequiredException("Payment required")); + + _ = new BackgroundJobRunner(channelHandler.Object, purviewClient.Object, cacheProvider.Object, NullLogger.Instance, settings); + + // Act + Assert.NotNull(runner); + await channel.Writer.WriteAsync(new ScopeRetrievalJob(request, cacheKey, CreateProcessContentRequest())); + channel.Writer.Complete(); + await runner(channel); + + // Assert + cacheProvider.Verify(x => x.SetAsync( + It.Is(key => key.TenantId == "tenant-123"), + It.Is(entry => entry.Message == "Payment required"), + It.IsAny()), Times.Once); + } + + [Fact] + public async Task BackgroundJobRunner_ScopeRetrievalNoApplicableScopes_QueuesContentActivityJobAsync() + { + // Arrange + Func, Task>? runner = null; + Mock channelHandler = new(); + Mock purviewClient = new(); + Mock cacheProvider = new(); + PurviewSettings settings = new("TestApp") { MaxConcurrentJobConsumers = 1 }; + ProtectionScopesRequest request = CreateProtectionScopesRequest(); + ScopeRetrievalJob job = new(request, new ProtectionScopesCacheKey(request), CreateProcessContentRequest()); + Channel channel = Channel.CreateUnbounded(); + + channelHandler.Setup(x => x.AddRunner(It.IsAny, Task>>())) + .Callback, Task>>(callback => runner = callback); + + purviewClient.Setup(x => x.GetProtectionScopesAsync(It.IsAny(), It.IsAny())) + .ReturnsAsync(new ProtectionScopesResponse { Scopes = [] }); + + _ = new BackgroundJobRunner(channelHandler.Object, purviewClient.Object, cacheProvider.Object, NullLogger.Instance, settings); + + // Act + Assert.NotNull(runner); + await channel.Writer.WriteAsync(job); + channel.Writer.Complete(); + await runner(channel); + + // Assert + channelHandler.Verify(x => x.QueueJob(It.IsAny()), Times.Once); + } + #endregion #region Helper Methods + private static ProtectionScopesRequest CreateProtectionScopesRequest() + { + return new ProtectionScopesRequest("user-123", "tenant-123") + { + Activities = ProtectionScopeActivities.UploadText, + Locations = + [ + new("microsoft.graph.policyLocationApplication", "app-123") + ] + }; + } + + private static ProcessContentRequest CreateProcessContentRequest() + { + PurviewTextContent content = new("Test content"); + ProcessConversationMetadata metadata = new(content, "msg-123", false, "Test message", "test-correlation-id"); + ActivityMetadata activityMetadata = new(Activity.UploadText); + DeviceMetadata deviceMetadata = new() + { + OperatingSystemSpecifications = new() + { + OperatingSystemPlatform = "Windows", + OperatingSystemVersion = "10" + } + }; + IntegratedAppMetadata integratedAppMetadata = new() + { + Name = "TestApp", + Version = "1.0" + }; + PolicyLocation policyLocation = new("microsoft.graph.policyLocationApplication", "app-123"); + ProtectedAppMetadata protectedAppMetadata = new(policyLocation) + { + Name = "TestApp", + Version = "1.0" + }; + ContentToProcess contentToProcess = new( + [metadata], + activityMetadata, + deviceMetadata, + integratedAppMetadata, + protectedAppMetadata); + + return new ProcessContentRequest(contentToProcess, "user-123", "tenant-123"); + } + private static PurviewSettings CreateValidPurviewSettings() { return new PurviewSettings("TestApp") diff --git a/python/packages/purview/README.md b/python/packages/purview/README.md index a802cd9615a..0a78e07605d 100644 --- a/python/packages/purview/README.md +++ b/python/packages/purview/README.md @@ -320,4 +320,5 @@ except (PurviewAuthenticationError, PurviewRateLimitError, PurviewRequestError, - **Streaming Responses**: Post-response policy evaluation presently applies only to non-streaming chat responses. - **Error Handling**: Use `ignore_exceptions` and `ignore_payment_required` settings for graceful degradation. When enabled, errors are logged but don't fail the request. - **Caching**: Protection scopes responses and 402 errors are cached by default with a 4-hour TTL. Cache is automatically invalidated when protection scope state changes. +- **Cold-cache parallelization**: On a `ProtectionScopes` cache miss, scopes are refreshed in the background while `ProcessContent` runs in the foreground. - **Background Processing**: Content Activities and offline Process Content requests are handled asynchronously using background tasks to avoid blocking the main execution flow. diff --git a/python/packages/purview/agent_framework_purview/_processor.py b/python/packages/purview/agent_framework_purview/_processor.py index 241de80d612..eb949287fd8 100644 --- a/python/packages/purview/agent_framework_purview/_processor.py +++ b/python/packages/purview/agent_framework_purview/_processor.py @@ -231,18 +231,19 @@ async def _process_with_scopes(self, pc_request: ProcessContentRequest) -> Proce cached_ps_resp = await self._cache.get(cache_key) if cached_ps_resp is not None and isinstance(cached_ps_resp, ProtectionScopesResponse): - ps_resp = cached_ps_resp - else: - ttl = self._settings.get("cache_ttl_seconds") - ttl_seconds = ttl if ttl is not None else 14400 - try: - ps_resp = await self._client.get_protection_scopes(ps_req) - await self._cache.set(cache_key, ps_resp, ttl_seconds=ttl_seconds) - except PurviewPaymentRequiredError as ex: - # Cache the exception at tenant level so all subsequent requests for this tenant fail fast - await self._cache.set(tenant_payment_cache_key, ex, ttl_seconds=ttl_seconds) - raise + return await self._process_with_cached_scopes(pc_request, cached_ps_resp, cache_key) + task = asyncio.create_task(self._refresh_protection_scopes_background(ps_req, cache_key, pc_request)) + self._background_tasks.add(task) + task.add_done_callback(self._background_tasks.discard) + return await self._call_process_content(pc_request, cache_key, dlp_actions=[]) + + async def _process_with_cached_scopes( + self, + pc_request: ProcessContentRequest, + ps_resp: ProtectionScopesResponse, + cache_key: str, + ) -> ProcessContentResponse: if ps_resp.scope_identifier: pc_request.scope_identifier = ps_resp.scope_identifier @@ -259,13 +260,7 @@ async def _process_with_scopes(self, pc_request: ProcessContentRequest) -> Proce task.add_done_callback(self._background_tasks.discard) return ProcessContentResponse(id="204", correlation_id=pc_request.correlation_id) - pc_resp = await self._client.process_content(pc_request) - - if pc_request.scope_identifier and pc_resp.protection_scope_state == ProtectionScopeState.MODIFIED: - await self._cache.remove(cache_key) - - pc_resp.policy_actions = self._combine_policy_actions(pc_resp.policy_actions, dlp_actions) - return pc_resp + return await self._call_process_content(pc_request, cache_key, dlp_actions=dlp_actions) # No applicable scopes - send content activities in background ca_req = ContentActivitiesRequest( @@ -281,12 +276,52 @@ async def _process_with_scopes(self, pc_request: ProcessContentRequest) -> Proce # Respond with HttpStatusCode 204(No Content) return ProcessContentResponse(id="204", correlation_id=pc_request.correlation_id) + async def _call_process_content( + self, + pc_request: ProcessContentRequest, + cache_key: str, + dlp_actions: list[DlpActionInfo], + ) -> ProcessContentResponse: + pc_resp = await self._client.process_content(pc_request) + + if pc_request.scope_identifier and pc_resp.protection_scope_state == ProtectionScopeState.MODIFIED: + await self._cache.remove(cache_key) + + if dlp_actions: + pc_resp.policy_actions = self._combine_policy_actions(pc_resp.policy_actions, dlp_actions) + return pc_resp + + async def _refresh_protection_scopes_background( + self, ps_req: ProtectionScopesRequest, cache_key: str, pc_request: ProcessContentRequest + ) -> None: + """Fetch protection scopes and warm the cache without blocking the foreground call.""" + ttl = self._settings.get("cache_ttl_seconds") + ttl_seconds = ttl if ttl is not None else 14400 + try: + ps_resp = await self._client.get_protection_scopes(ps_req) + await self._cache.set(cache_key, ps_resp, ttl_seconds=ttl_seconds) + should_process, _, _ = self._check_applicable_scopes(pc_request, ps_resp) + if not should_process: + ca_req = ContentActivitiesRequest( + user_id=pc_request.user_id, + tenant_id=pc_request.tenant_id, + content_to_process=pc_request.content_to_process, + correlation_id=pc_request.correlation_id, + ) + await self._send_content_activities_background(ca_req) + except PurviewPaymentRequiredError as ex: + tenant_payment_cache_key = f"purview:payment_required:{ps_req.tenant_id}" + await self._cache.set(tenant_payment_cache_key, ex, ttl_seconds=ttl_seconds) + logger.warning("Background protection scopes refresh failed with payment required: %s", ex) + except Exception as ex: + logger.warning("Background protection scopes refresh failed: %s", ex) + async def _process_content_background(self, pc_request: ProcessContentRequest, cache_key: str) -> None: """Process content in background for offline execution mode.""" try: pc_resp = await self._client.process_content(pc_request) - # If protection scope state is modified, make another PC request and invalidate cache + # If protection scopes changed, invalidate cache and retry once. if pc_request.scope_identifier and pc_resp.protection_scope_state == ProtectionScopeState.MODIFIED: await self._cache.remove(cache_key) await self._client.process_content(pc_request) @@ -306,14 +341,10 @@ async def _send_content_activities_background(self, ca_req: ContentActivitiesReq def _combine_policy_actions( existing: list[DlpActionInfo] | None, new_actions: list[DlpActionInfo] ) -> list[DlpActionInfo]: - by_key: dict[str, DlpActionInfo] = {} - for a in existing or []: - if a.action: - by_key[a.action] = a - for a in new_actions: - if a.action: - by_key[a.action] = a - return list(by_key.values()) + combined: dict[tuple[DlpAction | None, RestrictionAction | None], DlpActionInfo] = {} + for action_info in (existing or []) + new_actions: + combined.setdefault((action_info.action, action_info.restriction_action), action_info) + return list(combined.values()) @staticmethod def _check_applicable_scopes( diff --git a/python/packages/purview/tests/purview/test_processor.py b/python/packages/purview/tests/purview/test_processor.py index 285fb338d8c..0cc9d7a8a99 100644 --- a/python/packages/purview/tests/purview/test_processor.py +++ b/python/packages/purview/tests/purview/test_processor.py @@ -2,6 +2,7 @@ """Tests for Purview processor.""" +import asyncio from unittest.mock import AsyncMock, MagicMock, patch import pytest @@ -217,10 +218,38 @@ async def test_combine_policy_actions(self, processor: ScopedContentProcessor) - assert action1 in combined assert action2 in combined + async def test_combine_policy_actions_preserves_restriction_only_actions( + self, processor: ScopedContentProcessor + ) -> None: + """Test _combine_policy_actions keeps actions that only set restrictionAction.""" + existing_action = DlpActionInfo(action=DlpAction.OTHER, restrictionAction=RestrictionAction.OTHER) + restriction_only_action = DlpActionInfo(restriction_action=RestrictionAction.BLOCK) + + combined = processor._combine_policy_actions([existing_action], [restriction_only_action]) + + assert combined == [existing_action, restriction_only_action] + + async def test_combine_policy_actions_deduplicates_by_action_and_restriction( + self, processor: ScopedContentProcessor + ) -> None: + """Test _combine_policy_actions removes exact duplicate actions.""" + block_action = DlpActionInfo(action=DlpAction.BLOCK_ACCESS, restriction_action=RestrictionAction.BLOCK) + duplicate_block_action = DlpActionInfo( + action=DlpAction.BLOCK_ACCESS, restriction_action=RestrictionAction.BLOCK + ) + restriction_only_action = DlpActionInfo(restriction_action=RestrictionAction.BLOCK) + + combined = processor._combine_policy_actions( + [block_action], + [duplicate_block_action, restriction_only_action], + ) + + assert combined == [block_action, restriction_only_action] + async def test_process_with_scopes_calls_client_methods( self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory ) -> None: - """Test _process_with_scopes calls get_protection_scopes when scopes response is empty.""" + """Test _process_with_scopes calls process_content immediately and warms scopes in background on cache miss.""" from agent_framework_purview._models import ( ContentActivitiesResponse, ProtectionScopesResponse, @@ -236,38 +265,91 @@ async def test_process_with_scopes_calls_client_methods( response = await processor._process_with_scopes(request) + # On cache miss, ProcessContent runs in the foreground and the response is returned. + assert response.id == "response-123" + mock_client.process_content.assert_called_once() + + # Protection scopes are refreshed in a background task. + await asyncio.gather(*list(processor._background_tasks)) mock_client.get_protection_scopes.assert_called_once() - # When no scopes apply, process_content is not called (activities are sent in background) - mock_client.process_content.assert_not_called() - # The response should have id=204 (No Content) when no scopes apply - assert response.id == "204" + mock_client.send_content_activities.assert_called_once() - async def test_process_with_scopes_ignores_unexpected_cached_value_type( + async def test_process_with_scopes_preserves_restriction_only_policy_actions( self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory ) -> None: - """Test that a corrupted cache entry does not crash processing.""" + """Test cold-cache ProcessContent actions are not dropped when they only contain restrictionAction.""" + from agent_framework_purview._models import ProtectionScopesResponse + + request = process_content_request_factory() + restriction_only_action = DlpActionInfo(restriction_action=RestrictionAction.BLOCK) + + mock_client.get_protection_scopes = AsyncMock(return_value=ProtectionScopesResponse(**{"value": []})) + mock_client.process_content = AsyncMock( + return_value=ProcessContentResponse( + id="response-123", + protection_scope_state="notModified", + policy_actions=[restriction_only_action], + ) + ) + + response = await processor._process_with_scopes(request) + + assert response.policy_actions == [restriction_only_action] + await asyncio.gather(*list(processor._background_tasks)) + + async def test_process_with_cached_scopes_preserves_restriction_only_policy_actions( + self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory + ) -> None: + """Test cached ProtectionScopes actions are not dropped when they only contain restrictionAction.""" from agent_framework_purview._models import ( ExecutionMode, PolicyLocation, PolicyScope, - ProcessContentResponse, ProtectionScopeActivities, ProtectionScopesResponse, ) request = process_content_request_factory() + restriction_only_action = DlpActionInfo(restriction_action=RestrictionAction.BLOCK) + process_content_action = DlpActionInfo(action=DlpAction.OTHER, restriction_action=RestrictionAction.OTHER) + scope_location = PolicyLocation( + data_type="microsoft.graph.policyLocationApplication", + value="app-id", + ) + scope = PolicyScope( + activities=ProtectionScopeActivities.UPLOAD_TEXT, + locations=[scope_location], + policy_actions=[restriction_only_action], + execution_mode=ExecutionMode.EVALUATE_INLINE, + ) - # Return a valid, inline scope so we stay on the normal (non-background) path. - scope_location = PolicyLocation(**{ - "@odata.type": "microsoft.graph.policyLocationApplication", - "value": "app-id", - }) - scope = PolicyScope(**{ - "activities": ProtectionScopeActivities.UPLOAD_TEXT, - "locations": [scope_location], - "execution_mode": ExecutionMode.EVALUATE_INLINE, - }) - mock_client.get_protection_scopes = AsyncMock(return_value=ProtectionScopesResponse(**{"value": [scope]})) + processor._cache.get = AsyncMock( + side_effect=[ + None, + ProtectionScopesResponse(scope_identifier="scope-123", scopes=[scope]), + ] + ) # type: ignore[method-assign] + mock_client.process_content = AsyncMock( + return_value=ProcessContentResponse( + id="response-123", + protection_scope_state="notModified", + policy_actions=[process_content_action], + ) + ) + + response = await processor._process_with_scopes(request) + + assert response.policy_actions == [process_content_action, restriction_only_action] + + async def test_process_with_scopes_ignores_unexpected_cached_value_type( + self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory + ) -> None: + """Test that a corrupted cache entry does not crash processing.""" + from agent_framework_purview._models import ProtectionScopesResponse + + request = process_content_request_factory() + + mock_client.get_protection_scopes = AsyncMock(return_value=ProtectionScopesResponse(**{"value": []})) mock_client.process_content = AsyncMock( return_value=ProcessContentResponse(**{"id": "ok", "protectionScopeState": "notModified"}) ) @@ -279,8 +361,9 @@ async def test_process_with_scopes_ignores_unexpected_cached_value_type( response = await processor._process_with_scopes(request) assert response.id == "ok" - mock_client.get_protection_scopes.assert_called_once() mock_client.process_content.assert_called_once() + await asyncio.gather(*list(processor._background_tasks)) + mock_client.get_protection_scopes.assert_called_once() async def test_process_with_scopes_uses_tenant_payment_exception_cache( self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory @@ -301,8 +384,6 @@ async def test_process_content_background_retries_on_modified_state( self, processor: ScopedContentProcessor, mock_client: AsyncMock, process_content_request_factory ) -> None: """Test offline background processing invalidates cache and retries when scope state changes.""" - from agent_framework_purview._models import ProcessContentResponse - request = process_content_request_factory() request.scope_identifier = "etag-1" @@ -319,6 +400,36 @@ async def test_process_content_background_retries_on_modified_state( processor._cache.remove.assert_called_once_with("purview:protection_scopes:abc") assert mock_client.process_content.call_count == 2 + async def test_background_scope_refresh_caches_payment_required( + self, mock_client: AsyncMock, process_content_request_factory + ) -> None: + """402 raised during background scope refresh is cached at the tenant level.""" + from agent_framework_purview._cache import InMemoryCacheProvider + from agent_framework_purview._exceptions import PurviewPaymentRequiredError + + settings = PurviewSettings( + app_name="Test App", + tenant_id="12345678-1234-1234-1234-123456789012", + purview_app_location=PurviewAppLocation( + location_type=PurviewLocationType.APPLICATION, location_value="app-id" + ), + ) + + cache = InMemoryCacheProvider() + processor = ScopedContentProcessor(mock_client, settings, cache_provider=cache) + + mock_client.get_protection_scopes = AsyncMock(side_effect=PurviewPaymentRequiredError("nope")) + mock_client.process_content = AsyncMock( + return_value=ProcessContentResponse(**{"id": "pc-1", "protectionScopeState": "notModified"}) + ) + + request = process_content_request_factory() + await processor._process_with_scopes(request) + await asyncio.gather(*list(processor._background_tasks)) + + cached = await cache.get(f"purview:payment_required:{request.tenant_id}") + assert isinstance(cached, PurviewPaymentRequiredError) + async def test_map_messages_with_user_id_in_additional_properties(self, mock_client: AsyncMock) -> None: """Test user_id extraction from message additional_properties.""" settings = PurviewSettings( @@ -387,6 +498,8 @@ async def test_process_content_sends_activities_when_not_applicable( self, mock_client: AsyncMock, process_content_request_factory ) -> None: """Test that response is returned when scopes don't apply (activities sent in background).""" + from agent_framework_purview._models import ProtectionScopesResponse + settings = PurviewSettings( app_name="Test App", tenant_id="12345678-1234-1234-1234-123456789012", @@ -398,10 +511,8 @@ async def test_process_content_sends_activities_when_not_applicable( pc_request = process_content_request_factory() - # Mock get_protection_scopes to return no applicable scopes - mock_ps_response = MagicMock() - mock_ps_response.scopes = [] - mock_client.get_protection_scopes.return_value = mock_ps_response + mock_ps_response = ProtectionScopesResponse(scopes=[]) + processor._cache.get = AsyncMock(side_effect=[None, mock_ps_response]) # type: ignore[method-assign] # Mock send_content_activities to return success (called in background) mock_ca_response = MagicMock() @@ -410,8 +521,10 @@ async def test_process_content_sends_activities_when_not_applicable( response = await processor._process_with_scopes(pc_request) - mock_client.get_protection_scopes.assert_called_once() + mock_client.get_protection_scopes.assert_not_called() mock_client.process_content.assert_not_called() + await asyncio.gather(*list(processor._background_tasks)) + mock_client.send_content_activities.assert_called_once() # Response should have id=204 when no scopes apply assert response.id == "204" @@ -419,6 +532,8 @@ async def test_process_content_handles_activities_error( self, mock_client: AsyncMock, process_content_request_factory ) -> None: """Test that errors in background activities don't affect the response.""" + from agent_framework_purview._models import ProtectionScopesResponse + settings = PurviewSettings( app_name="Test App", tenant_id="12345678-1234-1234-1234-123456789012", @@ -430,10 +545,8 @@ async def test_process_content_handles_activities_error( pc_request = process_content_request_factory() - # Mock get_protection_scopes to return no applicable scopes - mock_ps_response = MagicMock() - mock_ps_response.scopes = [] - mock_client.get_protection_scopes.return_value = mock_ps_response + mock_ps_response = ProtectionScopesResponse(scopes=[]) + processor._cache.get = AsyncMock(side_effect=[None, mock_ps_response]) # type: ignore[method-assign] # Mock send_content_activities to return error (called in background task) mock_ca_response = MagicMock() @@ -445,6 +558,8 @@ async def test_process_content_handles_activities_error( # Since activities are sent in background, errors don't affect the response # Response should have id=204 when no scopes apply assert response.id == "204" + await asyncio.gather(*list(processor._background_tasks)) + mock_client.send_content_activities.assert_called_once() class TestUserIdResolution: @@ -656,10 +771,12 @@ async def test_protection_scopes_cached_on_first_call( mock_client.get_protection_scopes.return_value = ProtectionScopesResponse( scope_identifier="scope-123", scopes=[] ) + mock_client.process_content.return_value = ProcessContentResponse(id="ok", protection_scope_state="notModified") messages = [Message(role="user", contents=["Test"])] await processor.process_messages(messages, Activity.UPLOAD_TEXT, user_id="12345678-1234-1234-1234-123456789012") + await asyncio.gather(*list(processor._background_tasks)) mock_client.get_protection_scopes.assert_called_once() @@ -670,7 +787,7 @@ async def test_protection_scopes_cached_on_first_call( async def test_payment_required_exception_cached_at_tenant_level( self, mock_client: AsyncMock, settings: PurviewSettings ) -> None: - """Test that 402 payment required exceptions are cached at tenant level.""" + """Test that background scope 402 returns once, then throws from the tenant-level cache.""" from agent_framework_purview._cache import InMemoryCacheProvider from agent_framework_purview._exceptions import PurviewPaymentRequiredError @@ -678,13 +795,12 @@ async def test_payment_required_exception_cached_at_tenant_level( processor = ScopedContentProcessor(mock_client, settings, cache_provider=cache_provider) mock_client.get_protection_scopes.side_effect = PurviewPaymentRequiredError("Payment required") + mock_client.process_content.return_value = ProcessContentResponse(id="ok", protection_scope_state="notModified") messages = [Message(role="user", contents=["Test"])] - with pytest.raises(PurviewPaymentRequiredError): - await processor.process_messages( - messages, Activity.UPLOAD_TEXT, user_id="12345678-1234-1234-1234-123456789012" - ) + await processor.process_messages(messages, Activity.UPLOAD_TEXT, user_id="12345678-1234-1234-1234-123456789012") + await asyncio.gather(*list(processor._background_tasks)) mock_client.get_protection_scopes.assert_called_once() diff --git a/python/samples/05-end-to-end/purview_agent/README.md b/python/samples/05-end-to-end/purview_agent/README.md index 1cdb7e3ef44..12293ec3068 100644 --- a/python/samples/05-end-to-end/purview_agent/README.md +++ b/python/samples/05-end-to-end/purview_agent/README.md @@ -3,7 +3,7 @@ This getting-started sample shows how to attach Microsoft Purview policy evaluation to an Agent Framework `Agent` using the **middleware** approach. **What this sample demonstrates:** -1. Configure an Azure OpenAI chat client +1. Configure a Foundry chat client 2. Add Purview policy enforcement middleware (`PurviewPolicyMiddleware`) 3. Add Purview policy enforcement at the chat client level (`PurviewChatPolicyMiddleware`) 4. Implement a custom cache provider for advanced caching scenarios @@ -17,8 +17,8 @@ This getting-started sample shows how to attach Microsoft Purview policy evaluat | Variable | Required | Purpose | |----------|----------|---------| -| `AZURE_OPENAI_ENDPOINT` | Yes | Azure OpenAI endpoint (https://.openai.azure.com) | -| `AZURE_OPENAI_MODEL` | Optional | Model deployment name (defaults inside SDK if omitted) | +| `FOUNDRY_PROJECT_ENDPOINT` | Yes | Azure AI Foundry project endpoint, for example `https://.services.ai.azure.com/api/projects/` | +| `FOUNDRY_MODEL` | Optional | Model deployment name (defaults to `gpt-4o-mini`) | | `PURVIEW_CLIENT_APP_ID` | Yes* | Client (application) ID used for Purview authentication | | `PURVIEW_USE_CERT_AUTH` | Optional (`true`/`false`) | Switch between certificate and interactive auth | | `PURVIEW_TENANT_ID` | Yes (when cert auth on) | Tenant ID for certificate authentication | @@ -31,7 +31,8 @@ This getting-started sample shows how to attach Microsoft Purview policy evaluat Opens a browser on first run to sign in. ```powershell -$env:AZURE_OPENAI_ENDPOINT = "https://your-openai-instance.openai.azure.com" +$env:FOUNDRY_PROJECT_ENDPOINT = "https://.services.ai.azure.com/api/projects/" +$env:FOUNDRY_MODEL = "gpt-4o-mini" $env:PURVIEW_CLIENT_APP_ID = "00000000-0000-0000-0000-000000000000" ``` @@ -64,22 +65,27 @@ If interactive auth is used, a browser window will appear the first time. ## 4. How It Works -The sample demonstrates three different scenarios: +The sample demonstrates four integration scenarios. Each scenario runs the same three-message sequence via `run_policy_flow(...)`: + +1. **good (cold cache)** - a benign prompt that exercises the cold-cache parallel ProtectionScopes warmup + foreground ProcessContent path. +2. **expected block** - a sensitive prompt containing the Visa test credit card number `4111 1111 1111 1111`. If the tenant has a DLP policy for `Microsoft 365 Copilot and AI apps` targeting the Credit Card sensitive info type with a Block action, this prompt returns the configured `blocked_prompt_message` (default: `Prompt blocked by policy`). If no DLP policy applies, the prompt is allowed (the LLM may still decline on its own, but that is a model-level response, not a Purview block). +3. **good (warm cache)** - a second benign prompt that exercises the warm-cache path. The custom cache provider scenario prints `Cache HIT` for the same protection-scopes key, confirming the cache and middleware state survive a prior block. ### A. Agent Middleware (`run_with_agent_middleware`) -1. Builds an Azure OpenAI chat client (using the environment endpoint / deployment) +1. Builds a Foundry chat client (using the environment project endpoint / deployment) 2. Chooses credential mode (certificate vs interactive) 3. Creates `PurviewPolicyMiddleware` with `PurviewSettings` 4. Injects middleware into the agent at construction -5. Sends two user messages sequentially -6. Prints results (or policy block messages) +5. Runs the three-message `good -> block -> good` orchestration +6. Prints `ALLOWED` or `BLOCKED` per message, plus the model response 7. Uses default caching automatically ### B. Chat Client Middleware (`run_with_chat_middleware`) 1. Creates a chat client with `PurviewChatPolicyMiddleware` attached directly 2. Policy evaluation happens at the chat client level rather than agent level 3. Demonstrates an alternative integration point for Purview policies -4. Uses default caching automatically +4. Runs the same `good -> block -> good` orchestration +5. Uses default caching automatically ### C. Custom Cache Provider (`run_with_custom_cache_provider`) 1. Implements the `CacheProvider` protocol with a custom class (`SimpleDictCacheProvider`) @@ -88,9 +94,27 @@ The sample demonstrates three different scenarios: - `async def get(self, key: str) -> Any | None` - `async def set(self, key: str, value: Any, ttl_seconds: int | None = None) -> None` - `async def remove(self, key: str) -> None` +4. Runs the `good -> block -> good` orchestration and prints `Cache MISS`/`Cache HIT` traces alongside policy outcomes, showing the cold-cache warmup populating the cache and warm-cache requests skipping ProtectionScopes. + +### D. Default Cache (`run_with_default_cache`) +1. Same as the agent middleware path but with explicit cache TTL and size limits in `PurviewSettings` +2. Uses the default in-memory `CacheProvider` +3. Runs the `good -> block -> good` orchestration **Policy Behavior:** -Prompt blocks set a system-level message: `Prompt blocked by policy` and terminate the run early. Response blocks rewrite the output to `Response blocked by policy`. +Prompt blocks substitute the configured `blocked_prompt_message` (default `Prompt blocked by policy`) and terminate the agent run early. Response blocks substitute `blocked_response_message`. The LLM is never called for a blocked prompt. + +**Seeing a real `BLOCKED` outcome:** +The middle prompt only returns `BLOCKED` if the tenant actually has a Purview DLP policy that matches the request. Specifically, all of the following must be true: + +1. The Entra app id used by `PURVIEW_CLIENT_APP_ID` (the same id Agent Framework sends as `policyLocationApplication.value`) is registered as an integrated AI app in Purview (Settings -> AI app and agent locations). +2. A DLP policy in the tenant targets the location `Microsoft 365 Copilot and AI apps`, scoped to that app id (or `All apps`). +3. The policy has a rule with the condition `Content contains -> Sensitive info types -> Credit Card Number` and an action of `Restrict access to Microsoft 365 Copilot and AI apps -> Block`. +4. The policy is `On` (not `Test mode without notifications`). +5. The signed-in user is in the policy's user scope. +6. Required Graph delegated permissions are admin-consented: `ProtectionScopes.Compute.All`, `Content.Process.All`, `ContentActivity.Write`. + +If any of those are missing, the credit card prompt is allowed at the Purview layer. The model itself may still decline on its own; that response is a model-level refusal, not a Purview block. The cold/warm cache orchestration is still demonstrated either way - the `Cache MISS -> Cache HIT` trace from the custom cache scenario does not depend on a block firing. --- diff --git a/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py b/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py index 5eb28458869..7305ea12e8a 100644 --- a/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py +++ b/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py @@ -11,8 +11,8 @@ Note: Caching is automatic and enabled by default. Environment variables: -- AZURE_OPENAI_ENDPOINT (required) -- AZURE_OPENAI_MODEL (optional, defaults to gpt-4o-mini) +- FOUNDRY_PROJECT_ENDPOINT (required) - Azure AI Foundry project endpoint URL +- FOUNDRY_MODEL (optional, defaults to gpt-4o-mini) - PURVIEW_CLIENT_APP_ID (required) - PURVIEW_USE_CERT_AUTH (optional, set to "true" for certificate auth) - PURVIEW_TENANT_ID (required if certificate auth) @@ -45,6 +45,37 @@ JOKER_NAME = "Joker" JOKER_INSTRUCTIONS = "You are good at telling jokes. Keep responses concise." +# Sequential prompts to demonstrate good -> block -> good orchestration. +# The sensitive prompt contains a Visa test credit card number that matches Purview's +# built-in Credit Card sensitive information type. If the tenant has a DLP policy that +# blocks credit card content for Microsoft 365 Copilot and AI apps, the second message +# will be blocked and the third will verify that subsequent calls still flow normally +# after a block. +GOOD_PROMPT_PRIMARY = "Tell me a joke about a pirate." +SENSITIVE_PROMPT = "My corporate credit card is 4111 1111 1111 1111. Please confirm receipt." +GOOD_PROMPT_FOLLOWUP = "Another light joke please." + + +async def run_policy_flow( + label: str, + agent: Agent, + user_id: str | None, + blocked_text: str, +) -> None: + """Run a good -> block candidate -> good sequence and report each outcome.""" + blocked_marker = blocked_text.lower() + prompts = [ + ("good (cold cache)", GOOD_PROMPT_PRIMARY), + ("expected block", SENSITIVE_PROMPT), + ("good (warm cache)", GOOD_PROMPT_FOLLOWUP), + ] + for tag, text in prompts: + response: AgentResponse = await agent.run( + Message("user", [text], additional_properties={"user_id": user_id}) + ) + outcome = "BLOCKED" if blocked_marker in str(response).lower() else "ALLOWED" + print(f"[{label}] {tag}: {outcome}\n{response}\n") + # Custom Cache Provider Implementation class SimpleDictCacheProvider: @@ -138,21 +169,17 @@ def build_credential() -> Any: async def run_with_agent_middleware() -> None: - endpoint = os.environ.get("AZURE_OPENAI_ENDPOINT") + endpoint = os.environ.get("FOUNDRY_PROJECT_ENDPOINT") if not endpoint: - print("Skipping run: AZURE_OPENAI_ENDPOINT not set") + print("Skipping run: FOUNDRY_PROJECT_ENDPOINT not set") return - deployment = os.environ.get("AZURE_OPENAI_MODEL", "gpt-4o-mini") + deployment = os.environ.get("FOUNDRY_MODEL", "gpt-4o-mini") user_id = os.environ.get("PURVIEW_DEFAULT_USER_ID") - client = FoundryChatClient(model=deployment, endpoint=endpoint, credential=AzureCliCredential()) + client = FoundryChatClient(model=deployment, project_endpoint=endpoint, credential=AzureCliCredential()) - purview_agent_middleware = PurviewPolicyMiddleware( - build_credential(), - PurviewSettings( - app_name="Agent Framework Sample App", - ), - ) + settings = PurviewSettings(app_name="Agent Framework Sample App") + purview_agent_middleware = PurviewPolicyMiddleware(build_credential(), settings) agent = Agent( client=client, @@ -162,39 +189,26 @@ async def run_with_agent_middleware() -> None: ) print("-- Agent MiddlewareTypes Path --") - first: AgentResponse = await agent.run( - Message("user", ["Tell me a joke about a pirate."], additional_properties={"user_id": user_id}) - ) - print("First response (agent middleware):\n", first) - - second: AgentResponse = await agent.run( - Message( - role="user", contents=["That was funny. Tell me another one."], additional_properties={"user_id": user_id} - ) - ) - print("Second response (agent middleware):\n", second) + blocked_text = settings.get("blocked_prompt_message") or "Prompt blocked by policy" + await run_policy_flow("agent middleware", agent, user_id, blocked_text) async def run_with_chat_middleware() -> None: - endpoint = os.environ.get("AZURE_OPENAI_ENDPOINT") + endpoint = os.environ.get("FOUNDRY_PROJECT_ENDPOINT") if not endpoint: - print("Skipping chat middleware run: AZURE_OPENAI_ENDPOINT not set") + print("Skipping chat middleware run: FOUNDRY_PROJECT_ENDPOINT not set") return - deployment = os.environ.get("AZURE_OPENAI_MODEL", default="gpt-4o-mini") + deployment = os.environ.get("FOUNDRY_MODEL", default="gpt-4o-mini") user_id = os.environ.get("PURVIEW_DEFAULT_USER_ID") + settings = PurviewSettings(app_name="Agent Framework Sample App (Chat)") client = FoundryChatClient( model=deployment, - endpoint=endpoint, + project_endpoint=endpoint, credential=AzureCliCredential(), middleware=[ - PurviewChatPolicyMiddleware( - build_credential(), - PurviewSettings( - app_name="Agent Framework Sample App (Chat)", - ), - ) + PurviewChatPolicyMiddleware(build_credential(), settings) ], ) @@ -205,43 +219,27 @@ async def run_with_chat_middleware() -> None: ) print("-- Chat MiddlewareTypes Path --") - first: AgentResponse = await agent.run( - Message( - role="user", - contents=["Give me a short clean joke."], - additional_properties={"user_id": user_id}, - ) - ) - print("First response (chat middleware):\n", first) - - second: AgentResponse = await agent.run( - Message( - role="user", - contents=["One more please."], - additional_properties={"user_id": user_id}, - ) - ) - print("Second response (chat middleware):\n", second) + blocked_text = settings.get("blocked_prompt_message") or "Prompt blocked by policy" + await run_policy_flow("chat middleware", agent, user_id, blocked_text) async def run_with_custom_cache_provider() -> None: """Demonstrate implementing and using a custom cache provider.""" - endpoint = os.environ.get("AZURE_OPENAI_ENDPOINT") + endpoint = os.environ.get("FOUNDRY_PROJECT_ENDPOINT") if not endpoint: - print("Skipping custom cache provider run: AZURE_OPENAI_ENDPOINT not set") + print("Skipping custom cache provider run: FOUNDRY_PROJECT_ENDPOINT not set") return - deployment = os.environ.get("AZURE_OPENAI_MODEL", "gpt-4o-mini") + deployment = os.environ.get("FOUNDRY_MODEL", "gpt-4o-mini") user_id = os.environ.get("PURVIEW_DEFAULT_USER_ID") - client = FoundryChatClient(model=deployment, endpoint=endpoint, credential=AzureCliCredential()) + client = FoundryChatClient(model=deployment, project_endpoint=endpoint, credential=AzureCliCredential()) custom_cache = SimpleDictCacheProvider() + settings = PurviewSettings(app_name="Agent Framework Sample App (Custom Provider)") purview_agent_middleware = PurviewPolicyMiddleware( build_credential(), - PurviewSettings( - app_name="Agent Framework Sample App (Custom Provider)", - ), + settings, cache_provider=custom_cache, ) @@ -254,38 +252,28 @@ async def run_with_custom_cache_provider() -> None: print("-- Custom Cache Provider Path --") print("Using SimpleDictCacheProvider") + blocked_text = settings.get("blocked_prompt_message") or "Prompt blocked by policy" + await run_policy_flow("custom cache", agent, user_id, blocked_text) - first: AgentResponse = await agent.run( - Message( - role="user", contents=["Tell me a joke about a programmer."], additional_properties={"user_id": user_id} - ) - ) - print("First response (custom provider):\n", first) - - second: AgentResponse = await agent.run( - Message("user", ["That's hilarious! One more?"], additional_properties={"user_id": user_id}) - ) - print("Second response (custom provider):\n", second) +async def run_with_default_cache() -> None: """Demonstrate using the default built-in cache.""" - endpoint = os.environ.get("AZURE_OPENAI_ENDPOINT") + endpoint = os.environ.get("FOUNDRY_PROJECT_ENDPOINT") if not endpoint: - print("Skipping default cache run: AZURE_OPENAI_ENDPOINT not set") + print("Skipping default cache run: FOUNDRY_PROJECT_ENDPOINT not set") return - deployment = os.environ.get("AZURE_OPENAI_MODEL", "gpt-4o-mini") + deployment = os.environ.get("FOUNDRY_MODEL", "gpt-4o-mini") user_id = os.environ.get("PURVIEW_DEFAULT_USER_ID") - client = FoundryChatClient(model=deployment, endpoint=endpoint, credential=AzureCliCredential()) + client = FoundryChatClient(model=deployment, project_endpoint=endpoint, credential=AzureCliCredential()) # No cache_provider specified - uses default InMemoryCacheProvider - purview_agent_middleware = PurviewPolicyMiddleware( - build_credential(), - PurviewSettings( - app_name="Agent Framework Sample App (Default Cache)", - cache_ttl_seconds=3600, - max_cache_size_bytes=100 * 1024 * 1024, # 100MB - ), + settings = PurviewSettings( + app_name="Agent Framework Sample App (Default Cache)", + cache_ttl_seconds=3600, + max_cache_size_bytes=100 * 1024 * 1024, # 100MB ) + purview_agent_middleware = PurviewPolicyMiddleware(build_credential(), settings) agent = Agent( client=client, @@ -296,16 +284,8 @@ async def run_with_custom_cache_provider() -> None: print("-- Default Cache Path --") print("Using default InMemoryCacheProvider with settings-based configuration") - - first: AgentResponse = await agent.run( - Message("user", ["Tell me a joke about AI."], additional_properties={"user_id": user_id}) - ) - print("First response (default cache):\n", first) - - second: AgentResponse = await agent.run( - Message("user", ["Nice! Another AI joke please."], additional_properties={"user_id": user_id}) - ) - print("Second response (default cache):\n", second) + blocked_text = settings.get("blocked_prompt_message") or "Prompt blocked by policy" + await run_policy_flow("default cache", agent, user_id, blocked_text) async def main() -> None: @@ -326,6 +306,11 @@ async def main() -> None: except Exception as ex: # pragma: no cover - demo resilience print(f"Custom cache provider path failed: {ex}") + try: + await run_with_default_cache() + except Exception as ex: # pragma: no cover - demo resilience + print(f"Default cache path failed: {ex}") + if __name__ == "__main__": asyncio.run(main()) From 5e097276a0292c50cc00f59d3b687edf4551b3e8 Mon Sep 17 00:00:00 2001 From: Ben Thomas Date: Tue, 9 Jun 2026 12:40:36 -0700 Subject: [PATCH 13/25] .NET: Add Foundry Deployment docs to HA sample READMEs (#6365) * Add 'Deploying to Foundry (azd spec)' sections to all Foundry hosted agent samples This commit adds comprehensive deployment documentation to all 13 .NET Foundry hosted agent samples that were missing it. Each sample now includes: - Instructions to initialize an azd project from the sample's agent.manifest.yaml - Steps to deploy using 'azd deploy' - Example environment variable overrides for customization - Link to the official Foundry deployment guide Samples updated: - Hosted-LocalTools - Hosted-Files - Hosted-FoundryAgent - Hosted-McpTools - Hosted-Observability - Hosted-MemoryAgent - Hosted-TextRag - Hosted-ToolboxMcpSkills - Hosted-AzureSearchRag - Hosted-AgentSkills - Hosted-Workflow-Handoff - Hosted-Workflow-Simple - Hosted-Invocations-EchoAgent Each section includes the correct agent name from the sample's manifest and points to the correct GitHub URL for initializing the azd project. Fixes: https://github.com/microsoft/agent-framework/issues/6308 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * docs(samples): fix Foundry hosted README consistency Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs(samples): address PR 6365 README review comments Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Ben Thomas <25218250+alliscode@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- .../Hosted-Invocations-EchoAgent/README.md | 28 ++++++++++++++++ .../responses/Hosted-AgentSkills/README.md | 26 +++++++++++++++ .../responses/Hosted-AzureSearchRag/README.md | 28 ++++++++++++++++ .../Hosted-ChatClientAgent/README.md | 26 +++++++++++++++ .../responses/Hosted-Files/README.md | 28 ++++++++++++++++ .../responses/Hosted-FoundryAgent/README.md | 26 +++++++++++++++ .../responses/Hosted-LocalTools/README.md | 28 ++++++++++++++++ .../responses/Hosted-McpTools/README.md | 28 ++++++++++++++++ .../responses/Hosted-MemoryAgent/README.md | 28 ++++++++++++++++ .../responses/Hosted-Observability/README.md | 28 ++++++++++++++++ .../responses/Hosted-TextRag/README.md | 28 ++++++++++++++++ .../Hosted-ToolboxMcpSkills/README.md | 28 ++++++++++++++++ .../Hosted-Workflow-Handoff/README.md | 28 ++++++++++++++++ .../Hosted-Workflow-Simple/README.md | 32 +++++++++++++++++-- 14 files changed, 388 insertions(+), 2 deletions(-) diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/invocations/Hosted-Invocations-EchoAgent/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/invocations/Hosted-Invocations-EchoAgent/README.md index 5fcfddab227..404f88d0743 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/invocations/Hosted-Invocations-EchoAgent/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/invocations/Hosted-Invocations-EchoAgent/README.md @@ -71,6 +71,34 @@ curl -X POST http://localhost:8088/invocations \ -d "Hello from Docker!" ``` +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-invocations-echo-agent && cd hosted-invocations-echo-agent +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/invocations/Hosted-Invocations-EchoAgent/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-invocations-echo-agent +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `Hosted-Invocations-EchoAgent.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AgentSkills/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AgentSkills/README.md index 28917a19e01..01239efef5f 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AgentSkills/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AgentSkills/README.md @@ -107,3 +107,29 @@ azd env set SKILL_NAMES "support-style,escalation-policy" The deployed agent's Managed Identity needs **Azure AI User** on the Foundry project to download skills at startup. > The `skills/` source folder is **not** deployed to Foundry — only the downloaded skills are used at runtime. The provisioning step must have been run against the same Foundry project before the agent can download the skills. + +### Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-agent-skills && cd hosted-agent-skills +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AgentSkills/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-agent-skills +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AzureSearchRag/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AzureSearchRag/README.md index ede4db10103..f82ee30e5a3 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AzureSearchRag/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AzureSearchRag/README.md @@ -174,6 +174,34 @@ The model receives the top three search results as additional context and cites Replace the seed documents (or point the sample at an existing index with your own content) to ground the agent in your own knowledge base. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-azure-search-rag && cd hosted-azure-search-rag +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-AzureSearchRag/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-azure-search-rag +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedAzureSearchRag.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ChatClientAgent/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ChatClientAgent/README.md index ace88925728..4e11ed80231 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ChatClientAgent/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ChatClientAgent/README.md @@ -104,6 +104,32 @@ curl -X POST http://localhost:8088/responses \ -d '{"input": "Hello!", "model": "hosted-chat-client-agent"}' ``` +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-chat-client-agent && cd hosted-chat-client-agent +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ChatClientAgent/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-chat-client-agent +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor` — it performs a full `dotnet restore` and `dotnet publish` inside the container. See the commented section in `HostedChatClientAgent.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Files/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Files/README.md index 729aca5c5f0..80b68abe2ef 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Files/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Files/README.md @@ -112,6 +112,34 @@ docker run --rm -p 8088:8088 \ The bundled `resources/` folder is part of the published output and ships inside the image. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-files && cd hosted-files +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Files/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-files +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If consuming the Agent Framework as a NuGet package, use the standard `Dockerfile` instead of `Dockerfile.contributor` and switch the `ProjectReference` entries in `HostedFiles.csproj` to `PackageReference` (commented section in the csproj). diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-FoundryAgent/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-FoundryAgent/README.md index 8265a806322..3aa80756eee 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-FoundryAgent/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-FoundryAgent/README.md @@ -107,6 +107,32 @@ curl -X POST http://localhost:8088/responses \ -d '{"input": "Hello!", "model": ""}' ``` +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-foundry-agent && cd hosted-foundry-agent +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-FoundryAgent/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-foundry-agent +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor` — it performs a full `dotnet restore` and `dotnet publish` inside the container. See the commented section in `HostedFoundryAgent.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-LocalTools/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-LocalTools/README.md index 8016ff7ae98..8ad876e21e7 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-LocalTools/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-LocalTools/README.md @@ -108,6 +108,34 @@ The agent has a single tool `GetAvailableHotels` defined as a C# method with `[D The tool searches a mock database of 6 Seattle hotels and returns formatted results with name, location, rating, and pricing. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-local-tools && cd hosted-local-tools +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-LocalTools/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-local-tools +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedLocalTools.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md index 3773d9760dd..f0f0be9e748 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md @@ -78,6 +78,34 @@ docker run --rm -p 8088:8088 \ hosted-mcp-tools ``` +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir mcp-tools && cd mcp-tools +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME mcp-tools +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users Use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedMcpTools.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-MemoryAgent/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-MemoryAgent/README.md index d9b3a118259..d8820096a07 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-MemoryAgent/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-MemoryAgent/README.md @@ -139,6 +139,34 @@ The script publishes the project, builds the image, runs the container with two `HOSTED_USER_ISOLATION_KEY` values, drives a multi-turn conversation per user, asserts that each user only sees their own memories, and exits non-zero on failure. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-memory-agent && cd hosted-memory-agent +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-MemoryAgent/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-memory-agent +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Observability/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Observability/README.md index 889eacca82b..e51959c6f55 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Observability/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Observability/README.md @@ -104,6 +104,34 @@ docker run --rm -p 8088:8088 \ Once deployed, telemetry flows to the Application Insights instance attached to your Foundry project. In the Foundry UI, the **Traces** tab next to **Playground** lists conversations and lets you drill into the span tree for any request. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-observability && cd hosted-observability +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Observability/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-observability +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If consuming the Agent Framework as a NuGet package, use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedObservability.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-TextRag/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-TextRag/README.md index 5e4e5140c0f..c45b3f91012 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-TextRag/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-TextRag/README.md @@ -111,6 +111,34 @@ The `TextSearchProvider` runs a mock search **before each model invocation**: The model receives the search results as additional context and cites the source in its response. In production, replace `MockSearchAsync` with a call to Azure AI Search or your preferred search provider. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-text-rag && cd hosted-text-rag +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-TextRag/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-text-rag +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedTextRag.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ToolboxMcpSkills/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ToolboxMcpSkills/README.md index 0c6b5ba60ed..707f37fb582 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ToolboxMcpSkills/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ToolboxMcpSkills/README.md @@ -98,6 +98,34 @@ Using the Azure Developer CLI: azd ai agent invoke --local "What skills do you have available?" ``` +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-toolbox-mcp-skills && cd hosted-toolbox-mcp-skills +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-ToolboxMcpSkills/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-toolbox-mcp-skills +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-5 +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users If you are consuming the Agent Framework as a NuGet package (not building from source), use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedToolboxMcpSkills.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/README.md index 643af745512..341564ad738 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/README.md @@ -121,6 +121,34 @@ User message The triage agent receives every message and hands off to the appropriate specialist. Specialists route back to the triage agent after responding, allowing for multi-turn conversations. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir triage-workflow && cd triage-workflow +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME triage-workflow +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME gpt-4o +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users Use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedWorkflowHandoff.csproj` for the `PackageReference` alternative. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Simple/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Simple/README.md index d91d27445d6..12aa97a8d78 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Simple/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Simple/README.md @@ -5,7 +5,7 @@ A hosted agent that demonstrates **multi-agent workflow orchestration**. Three t ## Prerequisites - [.NET 10 SDK](https://dotnet.microsoft.com/download/dotnet/10.0) -- An Azure AI Foundry project with a deployed model (e.g., `gpt-4o`) +- An Azure AI Foundry project with a deployed model (e.g., `hosted-workflow-simple`) - Azure CLI logged in (`az login`) ## Configuration @@ -22,7 +22,7 @@ Edit `.env` and set your Azure AI Foundry project endpoint: AZURE_AI_PROJECT_ENDPOINT=https://.services.ai.azure.com/api/projects/ ASPNETCORE_URLS=http://+:8088 ASPNETCORE_ENVIRONMENT=Development -AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-4o +AZURE_AI_MODEL_DEPLOYMENT_NAME=hosted-workflow-simple ``` > **Note:** `.env` is gitignored. The `.env.example` template is checked in as a reference. @@ -104,6 +104,34 @@ Input text Each agent in the chain receives the output of the previous agent. The final result demonstrates how meaning is preserved (or subtly shifted) through multiple translation hops. +## Deploying to Foundry (azd spec) + +This sample includes an `azd` manifest (`agent.manifest.yaml`) and hosted agent spec (`agent.yaml`) for deployment to Foundry. + +Initialize an `azd` project from this sample's manifest: + +```bash +mkdir hosted-workflows && cd hosted-workflows +azd ai agent init -m https://github.com/microsoft/agent-framework/blob/main/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Simple/agent.manifest.yaml +``` + +Then deploy: + +```bash +azd deploy +``` + +If you need to override defaults, set deployment-time environment variables in the `azd` environment before deploying: + +```bash +azd env set AGENT_NAME hosted-workflow-simple +azd env set AZURE_AI_MODEL_DEPLOYMENT_NAME hosted-workflow-simple +``` + +For end-to-end hosted agent deployment guidance, see the [official deployment guide](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent). + +--- + ## NuGet package users Use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedWorkflowSimple.csproj` for the `PackageReference` alternative. From 3daed114eed50b20a14a655a2777ac1188ff0cdc Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 14:27:42 -0700 Subject: [PATCH 14/25] Python: bump package versions for 1.8.1 release (#6420) * Python: bump package versions for 1.8.1 release * Python: bump agent-framework-foundry-hosting for 1.8.1 release * Python: bump ag-ui and azurefunctions for 1.8.1 release * Remove incorrect agent-framework-foundry changelog entry for #6259 * Add [1.8.1] changelog compare link and update [Unreleased] base --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> --- python/CHANGELOG.md | 23 ++++++++++++++++++- python/packages/ag-ui/pyproject.toml | 4 ++-- python/packages/azurefunctions/pyproject.toml | 4 ++-- python/packages/claude/pyproject.toml | 4 ++-- python/packages/core/pyproject.toml | 2 +- python/packages/foundry/pyproject.toml | 6 ++--- .../packages/foundry_hosting/pyproject.toml | 4 ++-- python/packages/gemini/pyproject.toml | 4 ++-- python/packages/mem0/pyproject.toml | 4 ++-- python/packages/openai/pyproject.toml | 4 ++-- python/pyproject.toml | 4 ++-- python/uv.lock | 20 ++++++++-------- 12 files changed, 52 insertions(+), 31 deletions(-) diff --git a/python/CHANGELOG.md b/python/CHANGELOG.md index 85da8aef5f9..fa637607519 100644 --- a/python/CHANGELOG.md +++ b/python/CHANGELOG.md @@ -7,6 +7,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.8.1] - 2026-06-09 + +### Added +- **agent-framework-core**: Add MCP client OTel spans per GenAI semantic conventions ([#6349](https://github.com/microsoft/agent-framework/pull/6349)) +- **agent-framework-core**: Add MCP long-running task support ([#6319](https://github.com/microsoft/agent-framework/pull/6319)) + +### Changed +- **agent-framework-claude**: Bump `claude-agent-sdk` to 0.2.87 ([#6248](https://github.com/microsoft/agent-framework/pull/6248)) +- **agent-framework-core**: Document checkpoint storage security model and deserialization trust boundaries ([#6295](https://github.com/microsoft/agent-framework/pull/6295)) +- **agent-framework-azurefunctions**: Document checkpoint storage security model and deserialization trust boundaries ([#6295](https://github.com/microsoft/agent-framework/pull/6295)) + +### Fixed +- **agent-framework-core**: Filter MCP tool kwargs to declared params via allowlist ([#6399](https://github.com/microsoft/agent-framework/pull/6399)) +- **agent-framework-core**: Fix per-service-call history persistence with server-storing clients ([#6310](https://github.com/microsoft/agent-framework/pull/6310)) +- **agent-framework-openai**: Use `getattr` for non-OpenAI provider response compatibility ([#6270](https://github.com/microsoft/agent-framework/pull/6270)) +- **agent-framework-foundry-hosting**: Refactor workflow-as-agent pending request handling ([#6259](https://github.com/microsoft/agent-framework/pull/6259)) +- **agent-framework-gemini**: Make Gemini honor declarative `outputSchema`, not just JSON mode ([#5893](https://github.com/microsoft/agent-framework/pull/5893)) +- **agent-framework-mem0**: Isolate entity retrieval and correct `app_id` payload ([#6242](https://github.com/microsoft/agent-framework/pull/6242)) +- **agent-framework-ag-ui**: Match AG-UI approval responses to requested arguments ([#6376](https://github.com/microsoft/agent-framework/pull/6376)) + ## [1.8.0] - 2026-06-04 ### Added @@ -1169,7 +1189,8 @@ Release candidate for **agent-framework-core** and **agent-framework-azure-ai** For more information, see the [announcement blog post](https://devblogs.microsoft.com/foundry/introducing-microsoft-agent-framework-the-open-source-engine-for-agentic-ai-apps/). -[Unreleased]: https://github.com/microsoft/agent-framework/compare/python-1.8.0...HEAD +[Unreleased]: https://github.com/microsoft/agent-framework/compare/python-1.8.1...HEAD +[1.8.1]: https://github.com/microsoft/agent-framework/compare/python-1.8.0...python-1.8.1 [1.8.0]: https://github.com/microsoft/agent-framework/compare/python-1.7.0...python-1.8.0 [1.7.0]: https://github.com/microsoft/agent-framework/compare/python-1.6.0...python-1.7.0 [1.6.0]: https://github.com/microsoft/agent-framework/compare/python-1.5.0...python-1.6.0 diff --git a/python/packages/ag-ui/pyproject.toml b/python/packages/ag-ui/pyproject.toml index 4a0f8a94f50..4f0ff83aa7b 100644 --- a/python/packages/ag-ui/pyproject.toml +++ b/python/packages/ag-ui/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "agent-framework-ag-ui" -version = "1.0.0rc3" +version = "1.0.0rc4" description = "AG-UI protocol integration for Agent Framework" readme = "README.md" license-files = ["LICENSE"] @@ -22,7 +22,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.6.0,<2", + "agent-framework-core>=1.8.1,<2", "ag-ui-protocol>=0.1.16,<0.2", "fastapi>=0.115.0,<0.133.1", "uvicorn[standard]>=0.30.0,<1" diff --git a/python/packages/azurefunctions/pyproject.toml b/python/packages/azurefunctions/pyproject.toml index 77cfdd0c402..a68ada4c250 100644 --- a/python/packages/azurefunctions/pyproject.toml +++ b/python/packages/azurefunctions/pyproject.toml @@ -4,7 +4,7 @@ description = "Azure Functions integration for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.0.0b260604" +version = "1.0.0b260609" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -22,7 +22,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.8.0,<2", + "agent-framework-core>=1.8.1,<2", "agent-framework-durabletask>=1.0.0b260604,<2", "azure-functions>=1.24.0,<2", "azure-functions-durable>=1.3.1,<2", diff --git a/python/packages/claude/pyproject.toml b/python/packages/claude/pyproject.toml index c258a113f96..252dbb261bc 100644 --- a/python/packages/claude/pyproject.toml +++ b/python/packages/claude/pyproject.toml @@ -4,7 +4,7 @@ description = "Claude Agent SDK integration for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.0.0b260521" +version = "1.0.0b260609" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,7 +23,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.6.0,<2", + "agent-framework-core>=1.8.1,<2", "claude-agent-sdk>=0.1.36,<0.3", ] diff --git a/python/packages/core/pyproject.toml b/python/packages/core/pyproject.toml index 39b180a23e8..bc03bb02dda 100644 --- a/python/packages/core/pyproject.toml +++ b/python/packages/core/pyproject.toml @@ -4,7 +4,7 @@ description = "Microsoft Agent Framework for building AI Agents with Python. Thi authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.8.0" +version = "1.8.1" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" diff --git a/python/packages/foundry/pyproject.toml b/python/packages/foundry/pyproject.toml index ab7b4d1dd63..f9a0788273e 100644 --- a/python/packages/foundry/pyproject.toml +++ b/python/packages/foundry/pyproject.toml @@ -4,7 +4,7 @@ description = "Microsoft Foundry integrations for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.8.0" +version = "1.8.1" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,8 +23,8 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.8.0,<2", - "agent-framework-openai>=1.8.0,<2", + "agent-framework-core>=1.8.1,<2", + "agent-framework-openai>=1.8.1,<2", "azure-ai-inference>=1.0.0b9,<1.0.0b10", "azure-ai-projects>=2.2.0,<3.0", ] diff --git a/python/packages/foundry_hosting/pyproject.toml b/python/packages/foundry_hosting/pyproject.toml index 82246af0249..59cc347d137 100644 --- a/python/packages/foundry_hosting/pyproject.toml +++ b/python/packages/foundry_hosting/pyproject.toml @@ -4,7 +4,7 @@ description = "Foundry Hosting integration for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.0.0a260604" +version = "1.0.0a260609" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,7 +23,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.8.0,<2", + "agent-framework-core>=1.8.1,<2", "azure-ai-agentserver-core>=2.0.0b3,<3", "azure-ai-agentserver-responses>=1.0.0b7,<2", "azure-ai-agentserver-invocations>=1.0.0b3,<2", diff --git a/python/packages/gemini/pyproject.toml b/python/packages/gemini/pyproject.toml index 9a8ad94723e..52621705754 100644 --- a/python/packages/gemini/pyproject.toml +++ b/python/packages/gemini/pyproject.toml @@ -4,7 +4,7 @@ description = "Google Gemini integration for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.0.0a260521" +version = "1.0.0a260609" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -24,7 +24,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.6.0,<2.0", + "agent-framework-core>=1.8.1,<2.0", "google-genai>=1.65.0,<2.0.0", ] diff --git a/python/packages/mem0/pyproject.toml b/python/packages/mem0/pyproject.toml index d7db0a2b95b..77f934c892a 100644 --- a/python/packages/mem0/pyproject.toml +++ b/python/packages/mem0/pyproject.toml @@ -4,7 +4,7 @@ description = "Mem0 integration for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.0.0b260521" +version = "1.0.0b260609" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,7 +23,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.6.0,<2", + "agent-framework-core>=1.8.1,<2", "mem0ai>=1.0.0,<2", ] diff --git a/python/packages/openai/pyproject.toml b/python/packages/openai/pyproject.toml index ce44efeabda..46d7cc16495 100644 --- a/python/packages/openai/pyproject.toml +++ b/python/packages/openai/pyproject.toml @@ -4,7 +4,7 @@ description = "OpenAI integrations for Microsoft Agent Framework." authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.8.0" +version = "1.8.1" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,7 +23,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core>=1.8.0,<2", + "agent-framework-core>=1.8.1,<2", "openai>=1.99.0,<3", ] diff --git a/python/pyproject.toml b/python/pyproject.toml index 1cdeec22826..0a4e6f34a93 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -4,7 +4,7 @@ description = "Microsoft Agent Framework for building AI Agents with Python. Thi authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] readme = "README.md" requires-python = ">=3.10" -version = "1.8.0" +version = "1.8.1" license-files = ["LICENSE"] urls.homepage = "https://aka.ms/agent-framework" urls.source = "https://github.com/microsoft/agent-framework/tree/main/python" @@ -23,7 +23,7 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "agent-framework-core[all]==1.8.0", + "agent-framework-core[all]==1.8.1", ] [dependency-groups] diff --git a/python/uv.lock b/python/uv.lock index 35007ebace1..72aa2d01ad6 100644 --- a/python/uv.lock +++ b/python/uv.lock @@ -115,7 +115,7 @@ wheels = [ [[package]] name = "agent-framework" -version = "1.8.0" +version = "1.8.1" source = { virtual = "." } dependencies = [ { name = "agent-framework-core", extra = ["all"], marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -185,7 +185,7 @@ requires-dist = [ [[package]] name = "agent-framework-ag-ui" -version = "1.0.0rc3" +version = "1.0.0rc4" source = { editable = "packages/ag-ui" } dependencies = [ { name = "ag-ui-protocol", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -279,7 +279,7 @@ requires-dist = [ [[package]] name = "agent-framework-azurefunctions" -version = "1.0.0b260604" +version = "1.0.0b260609" source = { editable = "packages/azurefunctions" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -333,7 +333,7 @@ requires-dist = [ [[package]] name = "agent-framework-claude" -version = "1.0.0b260521" +version = "1.0.0b260609" source = { editable = "packages/claude" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -363,7 +363,7 @@ requires-dist = [ [[package]] name = "agent-framework-core" -version = "1.8.0" +version = "1.8.1" source = { editable = "packages/core" } dependencies = [ { name = "opentelemetry-api", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -529,7 +529,7 @@ dev = [{ name = "types-python-dateutil", specifier = "==2.9.0.20260518" }] [[package]] name = "agent-framework-foundry" -version = "1.8.0" +version = "1.8.1" source = { editable = "packages/foundry" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -548,7 +548,7 @@ requires-dist = [ [[package]] name = "agent-framework-foundry-hosting" -version = "1.0.0a260604" +version = "1.0.0a260609" source = { editable = "packages/foundry_hosting" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -584,7 +584,7 @@ requires-dist = [ [[package]] name = "agent-framework-gemini" -version = "1.0.0a260521" +version = "1.0.0a260609" source = { editable = "packages/gemini" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -714,7 +714,7 @@ dev = [ [[package]] name = "agent-framework-mem0" -version = "1.0.0b260521" +version = "1.0.0b260609" source = { editable = "packages/mem0" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, @@ -774,7 +774,7 @@ requires-dist = [ [[package]] name = "agent-framework-openai" -version = "1.8.0" +version = "1.8.1" source = { editable = "packages/openai" } dependencies = [ { name = "agent-framework-core", marker = "sys_platform == 'darwin' or sys_platform == 'linux' or sys_platform == 'win32'" }, From 7ae73a68d66423c19a1401197db824e6fa0ec9c1 Mon Sep 17 00:00:00 2001 From: Eduard van Valkenburg Date: Wed, 10 Jun 2026 11:07:51 +0200 Subject: [PATCH 15/25] Remove broken Atomic Agents docs link (#6442) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- docs/decisions/0007-agent-filtering-middleware.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/decisions/0007-agent-filtering-middleware.md b/docs/decisions/0007-agent-filtering-middleware.md index dbdd6d37d10..4fd3b57727a 100644 --- a/docs/decisions/0007-agent-filtering-middleware.md +++ b/docs/decisions/0007-agent-filtering-middleware.md @@ -1125,7 +1125,7 @@ Naming (Python): N/A (Composable Components) Supports: N Observation: No explicit middleware/filters; modularity allows composable units but no dedicated interception hooks or callbacks for custom reading/modification mid-execution. -For more details, see the official documentation: [Atomic Agents Docs](https://brainblend-ai.github.io/atomic-agents/). No specific code examples available for interception. +No specific code examples available for interception. #### Smolagents (Hugging Face) From cea83bd8d543713ae81e57513732c2a51ee1927b Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Jun 2026 11:02:22 +0100 Subject: [PATCH 16/25] .NET: Bump Microsoft.Extensions.AI packages to 10.6.0, align transitive dependency floor, and update Merge Gatekeeper ignores (#6148) * Bump Microsoft.Extensions.AI packages to 10.6.0 * Align transitive package versions for Microsoft.Extensions.AI 10.6.0 * Ignore external review check in Merge Gatekeeper --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com> --- .github/workflows/merge-gatekeeper.yml | 2 +- dotnet/Directory.Packages.props | 24 +++++++++---------- .../AgentWithRAG_Step05_Neo4jGraphRAG.csproj | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/merge-gatekeeper.yml b/.github/workflows/merge-gatekeeper.yml index 52adbcb8e47..c33d3e016a2 100644 --- a/.github/workflows/merge-gatekeeper.yml +++ b/.github/workflows/merge-gatekeeper.yml @@ -27,7 +27,7 @@ jobs: # "Cleanup artifacts", "Agent", "Prepare", and "Upload results" are check runs # created by an org-level GitHub App (MSDO), not by any workflow in this repo. # They are outside our control and their transient failures should not block merges. - IGNORED_NAMES: "CodeQL,CodeQL analysis (csharp),Cleanup artifacts,Agent,Prepare,Upload results" + IGNORED_NAMES: "CodeQL,CodeQL analysis (csharp),Cleanup artifacts,Agent,Prepare,Upload results,review" with: script: | const timeoutSeconds = Number(process.env.TIMEOUT_SECONDS); diff --git a/dotnet/Directory.Packages.props b/dotnet/Directory.Packages.props index e4e4b83e713..fc57fdea08b 100644 --- a/dotnet/Directory.Packages.props +++ b/dotnet/Directory.Packages.props @@ -41,19 +41,19 @@ - + - + - - + + @@ -72,12 +72,12 @@ - - - - - - + + + + + + @@ -86,12 +86,12 @@ - + - + diff --git a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step05_Neo4jGraphRAG/AgentWithRAG_Step05_Neo4jGraphRAG.csproj b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step05_Neo4jGraphRAG/AgentWithRAG_Step05_Neo4jGraphRAG.csproj index a25c6263230..5476ec3221d 100644 --- a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step05_Neo4jGraphRAG/AgentWithRAG_Step05_Neo4jGraphRAG.csproj +++ b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step05_Neo4jGraphRAG/AgentWithRAG_Step05_Neo4jGraphRAG.csproj @@ -23,7 +23,7 @@ - + From 9a56bc9f1662de35404e1cd65cde295fa492929e Mon Sep 17 00:00:00 2001 From: Eduard van Valkenburg Date: Wed, 10 Jun 2026 12:17:36 +0200 Subject: [PATCH 17/25] Python: [BREAKING] Add sampling guardrails to MCP tools (#6413) * Add sampling guardrails to MCP tools Add approval, token, and request-count controls to the MCP sampling callback used when an MCPTool is configured with a chat client. - Add `sampling_approval_callback`, `sampling_max_tokens`, and `sampling_max_requests` parameters to `MCPTool` and its `MCPStdioTool`, `MCPStreamableHTTPTool`, and `MCPWebsocketTool` subclasses, positioned directly after `client`. - Gate each server-initiated `sampling/createMessage` request behind the approval callback, which denies by default when no callback is provided. - Clamp the requested `maxTokens` to `sampling_max_tokens` and enforce a per-session request count via `sampling_max_requests`. - Log incoming sampling requests at WARNING level (counts only). - Export `SamplingApprovalCallback` from the public API. - Add tests, a sample, and documentation updates. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Make sampling denial message context-aware Distinguish the deny-by-default case (no approval callback configured) from an explicit denial by a configured `sampling_approval_callback`, so the returned ErrorData message is accurate for callback-driven denials and exceptions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- python/packages/core/AGENTS.md | 1 + .../packages/core/agent_framework/__init__.py | 3 +- python/packages/core/agent_framework/_mcp.py | 189 +++++++++++++- python/packages/core/tests/core/test_mcp.py | 233 ++++++++++++++++-- python/samples/02-agents/mcp/README.md | 1 + .../02-agents/mcp/mcp_sampling_approval.py | 78 ++++++ 6 files changed, 476 insertions(+), 29 deletions(-) create mode 100644 python/samples/02-agents/mcp/mcp_sampling_approval.py diff --git a/python/packages/core/AGENTS.md b/python/packages/core/AGENTS.md index ca0c5843a3f..92e83c5df4d 100644 --- a/python/packages/core/AGENTS.md +++ b/python/packages/core/AGENTS.md @@ -82,6 +82,7 @@ agent_framework/ - **`MCPStdioTool`** / **`MCPStreamableHTTPTool`** / **`MCPWebsocketTool`** - Transport-specific subclasses. - **Argument allowlist (`_prepare_call_kwargs`)** - Before each `tools/call`, kwargs are filtered to an **allowlist** built from the tool's declared parameters (`inputSchema.properties`) plus any user-configured extras. Framework runtime kwargs injected through the function-invocation pipeline (e.g. `thread`, `conversation_id`, `chat_options`, `options`, `response_format`) are stripped by default rather than forwarded. A tool that declares no usable `properties` (including schemas with `additionalProperties: true`) forwards only the configured extras. The `_MCP_FRAMEWORK_DENYLIST` is a safety net for framework-named params a server *declares* in its schema (those are dropped); names explicitly opted in via `additional_tool_argument_names` always win. The reserved `_meta` key is extracted as MCP request metadata, never forwarded as an argument. - **`additional_tool_argument_names`** (constructor arg on all `MCPTool` subclasses) - Opt extra argument names back into the allowlist. Accepts a `Sequence[str]` (applied to every tool) or a `Mapping[str, Sequence[str]]` keyed by **remote tool name**, where the reserved key `"*"` denotes global extras. It is configured only in user code at construction; there is **no per-call/runtime override**, so a model-issued tool call cannot change which names pass through. To use a server that accepts `additionalProperties: true`, list the extra names here and then either (1) manually extend that tool's `inputSchema` (via the `.functions` list after connecting) so the model is prompted to supply them, or (2) supply the values yourself via `function_invocation_kwargs`. If a name is supplied by both the model and `function_invocation_kwargs`, the model-supplied value wins. +- **Sampling guardrails** (`sampling_callback`) - Passing `client=` advertises `SamplingCapability` so the server can send `sampling/createMessage`. Because remote servers are untrusted (confused-deputy risk), the default `sampling_callback` is **deny-by-default** and applies, in order: a per-session rate limit (`sampling_max_requests`, default `_DEFAULT_SAMPLING_MAX_REQUESTS`), an approval gate (`sampling_approval_callback`), and a `maxTokens` cap (`sampling_max_tokens`, default `_DEFAULT_SAMPLING_MAX_TOKENS`). The approval callback (constructor arg on all subclasses; exported type alias `SamplingApprovalCallback`) receives the raw `CreateMessageRequestParams`, may be sync or async, and must return truthy to approve. When it is `None` (the default) every sampling request is denied; pass `lambda params: True` to restore legacy auto-approve as an explicit opt-in. Requests and denials are logged at WARNING (content is not logged). The per-session counter resets in `_reset_session_state`. - **`MCPTaskOptions`** (experimental, `MCP_LONG_RUNNING_TASKS` feature, **frozen**) - Per-tool-instance options controlling the SEP-2663 long-running task lifecycle. When the server advertises a tool with `execution.taskSupport == "required"`, `MCPTool.call_tool` transparently routes through `call_tool_as_task`, which sends an augmented `tools/call`, polls `tasks/get` until terminal, and reinterprets `tasks/result` as a normal `CallToolResult`. Instances are immutable; replace via `MCPTool.task_options = MCPTaskOptions(...)`. Fields: - `default_ttl: timedelta | None` — forwarded to the server as `params.task.ttl` (milliseconds). When `None`, the server's default applies. - `cancel_remote_task_on_local_cancellation: bool = True` — only gates the `CancelledError` path. Abandonment paths (see below) always cancel. diff --git a/python/packages/core/agent_framework/__init__.py b/python/packages/core/agent_framework/__init__.py index 33d16cd9bbb..b287b4be579 100644 --- a/python/packages/core/agent_framework/__init__.py +++ b/python/packages/core/agent_framework/__init__.py @@ -124,7 +124,7 @@ TodoSessionStore, TodoStore, ) -from ._mcp import MCPStdioTool, MCPStreamableHTTPTool, MCPTaskOptions, MCPWebsocketTool +from ._mcp import MCPStdioTool, MCPStreamableHTTPTool, MCPTaskOptions, MCPWebsocketTool, SamplingApprovalCallback from ._middleware import ( AgentContext, AgentMiddleware, @@ -472,6 +472,7 @@ "RunContext", "Runner", "RunnerContext", + "SamplingApprovalCallback", "SecretString", "SelectiveToolCallCompactionStrategy", "SessionContext", diff --git a/python/packages/core/agent_framework/_mcp.py b/python/packages/core/agent_framework/_mcp.py index 784c618302d..ccb0be3b70f 100644 --- a/python/packages/core/agent_framework/_mcp.py +++ b/python/packages/core/agent_framework/_mcp.py @@ -16,6 +16,7 @@ from dataclasses import dataclass from datetime import timedelta from functools import partial +from inspect import isawaitable from typing import TYPE_CHECKING, Any, Literal, TypedDict, cast from opentelemetry import propagate @@ -99,6 +100,22 @@ class MCPSpecificApproval(TypedDict, total=False): MCP_DEFAULT_TIMEOUT = 30 MCP_DEFAULT_SSE_READ_TIMEOUT = 60 * 5 +# Default safety limits applied to server-initiated MCP sampling requests +# (``sampling/createMessage``). MCP servers are untrusted third parties, so the +# default ``sampling_callback`` denies requests unless an approval callback is +# supplied, and bounds the cost of any approved request. +# - ``_DEFAULT_SAMPLING_MAX_TOKENS`` clamps the server-requested ``maxTokens``. +# - ``_DEFAULT_SAMPLING_MAX_REQUESTS`` caps the number of sampling requests per +# session connection (the counter resets on reconnect). +_DEFAULT_SAMPLING_MAX_TOKENS = 4096 +_DEFAULT_SAMPLING_MAX_REQUESTS = 25 + +# A user-supplied gate invoked before each server-initiated sampling request is +# forwarded to the chat client. It receives the raw ``CreateMessageRequestParams`` +# and returns (or awaits to) a truthy value to approve the request or a falsy +# value to deny it. Both synchronous and asynchronous callables are supported. +SamplingApprovalCallback = Callable[["types.CreateMessageRequestParams"], "bool | Coroutine[Any, Any, bool]"] + # region: Helpers LOG_LEVEL_MAPPING: dict[str, int] = { @@ -345,6 +362,9 @@ def __init__( session: ClientSession | None = None, request_timeout: int | None = None, client: SupportsChatGetResponse | None = None, + sampling_approval_callback: SamplingApprovalCallback | None = None, + sampling_max_tokens: int | None = _DEFAULT_SAMPLING_MAX_TOKENS, + sampling_max_requests: int | None = _DEFAULT_SAMPLING_MAX_REQUESTS, additional_properties: dict[str, Any] | None = None, task_options: MCPTaskOptions | None = None, additional_tool_argument_names: Sequence[str] | Mapping[str, Sequence[str]] | None = None, @@ -378,6 +398,20 @@ def __init__( session: An existing MCP client session to use. request_timeout: Timeout in seconds for MCP requests. client: A chat client for sampling callbacks. + sampling_approval_callback: Optional gate invoked before each server-initiated + ``sampling/createMessage`` request is forwarded to ``client``. It receives the + raw ``CreateMessageRequestParams`` and may be synchronous or asynchronous; + returning a truthy value approves the request and a falsy value denies it. When + ``None`` (the default), every sampling request is **denied** because MCP servers + are untrusted third parties (confused-deputy risk). To restore the legacy + auto-approve behavior, pass ``lambda params: True`` as an explicit, conscious + opt-in. + sampling_max_tokens: Upper bound applied to the server-requested ``maxTokens`` for an + approved sampling request. The effective value is ``min(requested, cap)``. Set to + ``None`` to disable the cap. Defaults to ``_DEFAULT_SAMPLING_MAX_TOKENS``. + sampling_max_requests: Maximum number of sampling requests allowed per session + connection; further requests are rejected. The counter resets on reconnect. Set + to ``None`` to disable the limit. Defaults to ``_DEFAULT_SAMPLING_MAX_REQUESTS``. additional_properties: Additional properties for the tool. task_options: Options controlling how long-running MCP tasks are driven for tools that advertise ``execution.taskSupport == "required"``. When ``None``, @@ -410,6 +444,10 @@ def __init__( self.session = session self.request_timeout = request_timeout self.client = client + self.sampling_approval_callback = sampling_approval_callback + self.sampling_max_tokens = sampling_max_tokens + self.sampling_max_requests = sampling_max_requests + self._sampling_request_count = 0 self._functions: list[FunctionTool] = [] self._tool_call_meta_by_name: dict[str, dict[str, Any]] = {} self._tool_task_support_by_name: dict[str, str] = {} @@ -840,6 +878,7 @@ def _reset_session_state(self) -> None: self._supports_prompts = True self._supports_logging = None self._ping_available = True + self._sampling_request_count = 0 def _set_server_capabilities(self, capabilities: types.ServerCapabilities | None) -> None: self._server_capabilities = capabilities @@ -994,6 +1033,49 @@ async def _connect_on_owner(self, *, reset: bool = False, load_configured: bool except Exception as exc: logger.warning("Failed to set log level to %s", logger.level, exc_info=exc) + async def _sampling_request_approved(self, params: types.CreateMessageRequestParams) -> bool: + """Run the configured sampling approval gate. + + Returns ``True`` only when an approval callback is configured and approves the request. + When no callback is set, the request is denied (safe default for untrusted servers). + """ + callback = self.sampling_approval_callback + if callback is None: + logger.warning( + "Denying MCP sampling request from '%s': no 'sampling_approval_callback' configured.", + self.name, + ) + return False + try: + outcome = callback(params) + if isawaitable(outcome): + outcome = await outcome + except Exception as ex: + logger.warning( + "Denying MCP sampling request from '%s': approval callback raised %s.", + self.name, + ex, + exc_info=True, + ) + return False + approved = bool(outcome) + if not approved: + logger.warning("MCP sampling request from '%s' was denied by the approval callback.", self.name) + return approved + + def _capped_sampling_max_tokens(self, requested: int) -> int: + """Clamp the server-requested ``maxTokens`` to ``sampling_max_tokens`` when configured.""" + cap = self.sampling_max_tokens + if cap is not None and requested > cap: + logger.warning( + "Capping MCP sampling maxTokens for '%s' from %d to %d.", + self.name, + requested, + cap, + ) + return cap + return requested + async def sampling_callback( self, context: RequestContext[ClientSession, Any], @@ -1001,20 +1083,32 @@ async def sampling_callback( ) -> types.CreateMessageResult | types.ErrorData: """Callback function for sampling. - This function is called when the MCP server needs to get a message completed. - It uses the configured chat client to generate responses. + This function is called when the MCP server sends a ``sampling/createMessage`` + request. It enforces safety guardrails and, if the request is approved, uses the + configured chat client to generate a response. + + Safety: + MCP servers are untrusted third parties, so forwarding server-controlled prompts + to the chat client without review is a confused-deputy risk. This callback + therefore applies, in order: a per-session rate limit + (``sampling_max_requests``), an approval gate (``sampling_approval_callback``, + which **denies by default** when not configured), and a ``maxTokens`` cap + (``sampling_max_tokens``). To allow sampling, pass a ``sampling_approval_callback`` + that returns a truthy value (use ``lambda params: True`` to auto-approve as an + explicit opt-in). Note: - This is a simple version of this function. It can be overridden to allow - more complex sampling. It gets added to the session at initialization time, - so overriding it is the best way to customize this behavior. + This is the default implementation. It can be overridden to allow more complex + sampling. It gets added to the session at initialization time, so overriding it is + the best way to customize this behavior. Args: context: The request context from the MCP server. params: The message creation request parameters. Returns: - Either a CreateMessageResult with the generated message or ErrorData if generation fails. + Either a CreateMessageResult with the generated message or ErrorData if the request + is denied, rate limited, or generation fails. """ from mcp import types @@ -1023,7 +1117,38 @@ async def sampling_callback( code=types.INTERNAL_ERROR, message="No chat client available. Please set a chat client.", ) - logger.debug("Sampling callback called with params: %s", params) + + logger.warning( + "MCP server '%s' sent a sampling/createMessage request (%d message(s), maxTokens=%s).", + self.name, + len(params.messages), + params.maxTokens, + ) + + if self.sampling_max_requests is not None: + if self._sampling_request_count >= self.sampling_max_requests: + logger.warning( + "Denying MCP sampling request from '%s': per-session limit of %d reached.", + self.name, + self.sampling_max_requests, + ) + return types.ErrorData( + code=types.INVALID_REQUEST, + message="Sampling rate limit exceeded for this MCP session.", + ) + self._sampling_request_count += 1 + + if not await self._sampling_request_approved(params): + if self.sampling_approval_callback is None: + message = ( + "Sampling request denied. MCP sampling is disabled by default for untrusted " + "servers; provide a 'sampling_approval_callback' that approves the request to " + "enable it." + ) + else: + message = "Sampling request denied by the 'sampling_approval_callback'." + return types.ErrorData(code=types.INVALID_REQUEST, message=message) + messages: list[Message] = [] for msg in params.messages: messages.append(self._parse_message_from_mcp(msg)) @@ -1045,7 +1170,7 @@ async def sampling_callback( if params.temperature is not None: options["temperature"] = params.temperature - options["max_tokens"] = params.maxTokens + options["max_tokens"] = self._capped_sampling_max_tokens(params.maxTokens) if params.stopSequences is not None: options["stop"] = params.stopSequences @@ -2219,6 +2344,9 @@ def __init__( env: dict[str, str] | None = None, encoding: str | None = None, client: SupportsChatGetResponse | None = None, + sampling_approval_callback: SamplingApprovalCallback | None = None, + sampling_max_tokens: int | None = _DEFAULT_SAMPLING_MAX_TOKENS, + sampling_max_requests: int | None = _DEFAULT_SAMPLING_MAX_REQUESTS, additional_properties: dict[str, Any] | None = None, task_options: MCPTaskOptions | None = None, additional_tool_argument_names: Sequence[str] | Mapping[str, Sequence[str]] | None = None, @@ -2266,6 +2394,16 @@ def __init__( env: The environment variables to set for the command. encoding: The encoding to use for the command output. client: The chat client to use for sampling. + sampling_approval_callback: Optional gate run before each server-initiated + ``sampling/createMessage`` request reaches ``client``. Receives the raw + ``CreateMessageRequestParams`` (sync or async); a truthy return approves the + request, a falsy return denies it. When ``None`` (the default) every sampling + request is **denied**, since MCP servers are untrusted (confused-deputy risk). + Pass ``lambda params: True`` to auto-approve as an explicit opt-in. + sampling_max_tokens: Cap applied to an approved request's ``maxTokens`` + (``min(requested, cap)``); ``None`` disables it. + sampling_max_requests: Per-session cap on the number of sampling requests; further + requests are rejected. Resets on reconnect. ``None`` disables it. task_options: Options for tools that advertise ``execution.taskSupport == "required"``. See :class:`MCPTaskOptions`. additional_tool_argument_names: Extra argument names to forward to the MCP server in @@ -2300,6 +2438,9 @@ def __init__( request_timeout=request_timeout, task_options=task_options, additional_tool_argument_names=additional_tool_argument_names, + sampling_approval_callback=sampling_approval_callback, + sampling_max_tokens=sampling_max_tokens, + sampling_max_requests=sampling_max_requests, ) self.command = command self.args = args or [] @@ -2375,6 +2516,9 @@ def __init__( allowed_tools: Collection[str] | None = None, terminate_on_close: bool | None = None, client: SupportsChatGetResponse | None = None, + sampling_approval_callback: SamplingApprovalCallback | None = None, + sampling_max_tokens: int | None = _DEFAULT_SAMPLING_MAX_TOKENS, + sampling_max_requests: int | None = _DEFAULT_SAMPLING_MAX_REQUESTS, additional_properties: dict[str, Any] | None = None, http_client: AsyncClient | None = None, header_provider: Callable[[dict[str, Any]], dict[str, str]] | None = None, @@ -2423,6 +2567,16 @@ def __init__( additional_properties: Additional properties. terminate_on_close: Close the transport when the MCP client is terminated. client: The chat client to use for sampling. + sampling_approval_callback: Optional gate run before each server-initiated + ``sampling/createMessage`` request reaches ``client``. Receives the raw + ``CreateMessageRequestParams`` (sync or async); a truthy return approves the + request, a falsy return denies it. When ``None`` (the default) every sampling + request is **denied**, since MCP servers are untrusted (confused-deputy risk). + Pass ``lambda params: True`` to auto-approve as an explicit opt-in. + sampling_max_tokens: Cap applied to an approved request's ``maxTokens`` + (``min(requested, cap)``); ``None`` disables it. + sampling_max_requests: Per-session cap on the number of sampling requests; further + requests are rejected. Resets on reconnect. ``None`` disables it. http_client: Optional asyncClient to use. If not provided, the ``streamable_http_client`` API will create and manage a default client. To configure headers, timeouts, or other HTTP client settings, create @@ -2466,6 +2620,9 @@ def __init__( request_timeout=request_timeout, task_options=task_options, additional_tool_argument_names=additional_tool_argument_names, + sampling_approval_callback=sampling_approval_callback, + sampling_max_tokens=sampling_max_tokens, + sampling_max_requests=sampling_max_requests, ) self.url = url self.terminate_on_close = terminate_on_close @@ -2590,6 +2747,9 @@ def __init__( approval_mode: (Literal["always_require", "never_require"] | MCPSpecificApproval | None) = None, allowed_tools: Collection[str] | None = None, client: SupportsChatGetResponse | None = None, + sampling_approval_callback: SamplingApprovalCallback | None = None, + sampling_max_tokens: int | None = _DEFAULT_SAMPLING_MAX_TOKENS, + sampling_max_requests: int | None = _DEFAULT_SAMPLING_MAX_REQUESTS, additional_properties: dict[str, Any] | None = None, task_options: MCPTaskOptions | None = None, additional_tool_argument_names: Sequence[str] | Mapping[str, Sequence[str]] | None = None, @@ -2635,6 +2795,16 @@ def __init__( allowed_tools: A list of tools that are allowed to use this tool. additional_properties: Additional properties. client: The chat client to use for sampling. + sampling_approval_callback: Optional gate run before each server-initiated + ``sampling/createMessage`` request reaches ``client``. Receives the raw + ``CreateMessageRequestParams`` (sync or async); a truthy return approves the + request, a falsy return denies it. When ``None`` (the default) every sampling + request is **denied**, since MCP servers are untrusted (confused-deputy risk). + Pass ``lambda params: True`` to auto-approve as an explicit opt-in. + sampling_max_tokens: Cap applied to an approved request's ``maxTokens`` + (``min(requested, cap)``); ``None`` disables it. + sampling_max_requests: Per-session cap on the number of sampling requests; further + requests are rejected. Resets on reconnect. ``None`` disables it. task_options: Options for tools that advertise ``execution.taskSupport == "required"``. See :class:`MCPTaskOptions`. additional_tool_argument_names: Extra argument names to forward to the MCP server in @@ -2669,6 +2839,9 @@ def __init__( request_timeout=request_timeout, task_options=task_options, additional_tool_argument_names=additional_tool_argument_names, + sampling_approval_callback=sampling_approval_callback, + sampling_max_tokens=sampling_max_tokens, + sampling_max_requests=sampling_max_requests, ) self.url = url self._client_kwargs = kwargs diff --git a/python/packages/core/tests/core/test_mcp.py b/python/packages/core/tests/core/test_mcp.py index 7c45296cbb0..ce69e9766b2 100644 --- a/python/packages/core/tests/core/test_mcp.py +++ b/python/packages/core/tests/core/test_mcp.py @@ -1813,6 +1813,18 @@ async def blocking_load_tools(): assert len(tool._pending_reload_tasks) == 0 +def _approve(_params: object) -> bool: + """Approving sampling gate used by tests that exercise forwarding behavior.""" + return True + + +def _make_sampling_response(text: str = "response", model: str = "test-model") -> Mock: + mock_response = Mock() + mock_response.messages = [Message(role="assistant", contents=[Content.from_text(text)])] + mock_response.model = model + return mock_response + + async def test_mcp_tool_sampling_callback_no_client(): """Test sampling callback error path when no chat client is available.""" tool = MCPStdioTool(name="test_tool", command="python") @@ -1828,9 +1840,190 @@ async def test_mcp_tool_sampling_callback_no_client(): assert "No chat client available" in result.message +async def test_mcp_tool_sampling_callback_denies_by_default(): + """Sampling is denied when no approval callback is configured (safe default).""" + tool = MCPStdioTool(name="test_tool", command="python") + mock_chat_client = AsyncMock() + tool.client = mock_chat_client + + params = Mock() + params.messages = [] + params.maxTokens = 128 + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.ErrorData) + assert result.code == types.INVALID_REQUEST + assert "denied" in result.message + assert "sampling_approval_callback" in result.message + mock_chat_client.get_response.assert_not_called() + + +async def test_mcp_tool_sampling_callback_denied_by_callback(): + """Sampling is denied when the approval callback returns a falsy value.""" + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=lambda params: False) + mock_chat_client = AsyncMock() + tool.client = mock_chat_client + + params = Mock() + params.messages = [] + params.maxTokens = 128 + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.ErrorData) + assert result.code == types.INVALID_REQUEST + assert "denied by the 'sampling_approval_callback'" in result.message + mock_chat_client.get_response.assert_not_called() + + +async def test_mcp_tool_sampling_callback_callback_exception_denies(): + """An approval callback that raises results in denial, not an LLM call.""" + + def boom(_params: object) -> bool: + raise RuntimeError("approval error") + + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=boom) + mock_chat_client = AsyncMock() + tool.client = mock_chat_client + + params = Mock() + params.messages = [] + params.maxTokens = 128 + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.ErrorData) + assert result.code == types.INVALID_REQUEST + mock_chat_client.get_response.assert_not_called() + + +async def test_mcp_tool_sampling_callback_async_approval(): + """An async approval callback that approves allows the request through.""" + + async def approve(_params: object) -> bool: + return True + + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=approve) + mock_chat_client = AsyncMock() + mock_chat_client.get_response.return_value = _make_sampling_response("ok") + tool.client = mock_chat_client + + params = Mock() + params.messages = [types.PromptMessage(role="user", content=types.TextContent(type="text", text="Hi"))] + params.temperature = None + params.maxTokens = 100 + params.stopSequences = None + params.systemPrompt = None + params.tools = None + params.toolChoice = None + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.CreateMessageResult) + assert result.content.text == "ok" + mock_chat_client.get_response.assert_awaited_once() + + +async def test_mcp_tool_sampling_callback_clamps_max_tokens(): + """An approved request's maxTokens is clamped to sampling_max_tokens.""" + tool = MCPStdioTool( + name="test_tool", + command="python", + sampling_approval_callback=_approve, + sampling_max_tokens=512, + ) + mock_chat_client = AsyncMock() + mock_chat_client.get_response.return_value = _make_sampling_response() + tool.client = mock_chat_client + + params = Mock() + params.messages = [types.PromptMessage(role="user", content=types.TextContent(type="text", text="Hi"))] + params.temperature = None + params.maxTokens = 1_000_000 + params.stopSequences = None + params.systemPrompt = None + params.tools = None + params.toolChoice = None + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.CreateMessageResult) + options = mock_chat_client.get_response.call_args.kwargs.get("options") or {} + assert options["max_tokens"] == 512 + + +async def test_mcp_tool_sampling_callback_does_not_clamp_under_cap(): + """A request below the cap keeps its requested maxTokens.""" + tool = MCPStdioTool( + name="test_tool", + command="python", + sampling_approval_callback=_approve, + sampling_max_tokens=512, + ) + mock_chat_client = AsyncMock() + mock_chat_client.get_response.return_value = _make_sampling_response() + tool.client = mock_chat_client + + params = Mock() + params.messages = [types.PromptMessage(role="user", content=types.TextContent(type="text", text="Hi"))] + params.temperature = None + params.maxTokens = 100 + params.stopSequences = None + params.systemPrompt = None + params.tools = None + params.toolChoice = None + + result = await tool.sampling_callback(Mock(), params) + + assert isinstance(result, types.CreateMessageResult) + options = mock_chat_client.get_response.call_args.kwargs.get("options") or {} + assert options["max_tokens"] == 100 + + +async def test_mcp_tool_sampling_callback_rate_limited(): + """Sampling requests beyond sampling_max_requests are rejected per session.""" + tool = MCPStdioTool( + name="test_tool", + command="python", + sampling_approval_callback=_approve, + sampling_max_requests=2, + ) + mock_chat_client = AsyncMock() + mock_chat_client.get_response.return_value = _make_sampling_response() + tool.client = mock_chat_client + + def make_params() -> Mock: + params = Mock() + params.messages = [types.PromptMessage(role="user", content=types.TextContent(type="text", text="Hi"))] + params.temperature = None + params.maxTokens = 100 + params.stopSequences = None + params.systemPrompt = None + params.tools = None + params.toolChoice = None + return params + + first = await tool.sampling_callback(Mock(), make_params()) + second = await tool.sampling_callback(Mock(), make_params()) + third = await tool.sampling_callback(Mock(), make_params()) + + assert isinstance(first, types.CreateMessageResult) + assert isinstance(second, types.CreateMessageResult) + assert isinstance(third, types.ErrorData) + assert third.code == types.INVALID_REQUEST + assert "rate limit" in third.message.lower() + assert mock_chat_client.get_response.await_count == 2 + + # The counter resets on a session reset. + tool._reset_session_state() + fourth = await tool.sampling_callback(Mock(), make_params()) + assert isinstance(fourth, types.CreateMessageResult) + + async def test_mcp_tool_sampling_callback_chat_client_exception(): """Test sampling callback when chat client raises exception.""" - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) # Mock chat client that raises exception mock_chat_client = AsyncMock() @@ -1846,7 +2039,7 @@ async def test_mcp_tool_sampling_callback_chat_client_exception(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = None @@ -1863,7 +2056,7 @@ async def test_mcp_tool_sampling_callback_no_valid_content(): """Test sampling callback when response has no valid content types.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) # Mock chat client with response containing only invalid content types mock_chat_client = AsyncMock() @@ -1892,7 +2085,7 @@ async def test_mcp_tool_sampling_callback_no_valid_content(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = None @@ -1905,18 +2098,18 @@ async def test_mcp_tool_sampling_callback_no_valid_content(): assert "Failed to get right content types from the response." in result.message mock_chat_client.get_response.assert_awaited_once() _, kwargs = mock_chat_client.get_response.await_args - assert kwargs["options"] == {"max_tokens": None} + assert kwargs["options"] == {"max_tokens": 100} async def test_mcp_tool_sampling_callback_no_response_and_successful_message_creation(): """Test sampling callback when the chat client returns no response and then valid content.""" - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) tool.client = AsyncMock() params = Mock() params.messages = [types.PromptMessage(role="user", content=types.TextContent(type="text", text="Hi"))] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = None @@ -1955,7 +2148,7 @@ async def test_mcp_tool_sampling_callback_forwards_system_prompt(): """Test sampling callback passes systemPrompt as instructions in options.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -1972,7 +2165,7 @@ async def test_mcp_tool_sampling_callback_forwards_system_prompt(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = "You are a helpful assistant" params.tools = None @@ -1990,7 +2183,7 @@ async def test_mcp_tool_sampling_callback_forwards_tools(): """Test sampling callback converts MCP tools to FunctionTools and passes them in options.""" from agent_framework import FunctionTool, Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2013,7 +2206,7 @@ async def test_mcp_tool_sampling_callback_forwards_tools(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = [mcp_tool] @@ -2036,7 +2229,7 @@ async def test_mcp_tool_sampling_callback_forwards_tool_choice(): """Test sampling callback passes toolChoice mode in options.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2053,7 +2246,7 @@ async def test_mcp_tool_sampling_callback_forwards_tool_choice(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = None @@ -2071,7 +2264,7 @@ async def test_mcp_tool_sampling_callback_forwards_empty_system_prompt(): """Test sampling callback forwards empty string systemPrompt as instructions.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2088,7 +2281,7 @@ async def test_mcp_tool_sampling_callback_forwards_empty_system_prompt(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = "" params.tools = None @@ -2106,7 +2299,7 @@ async def test_mcp_tool_sampling_callback_forwards_empty_tools_list(): """Test sampling callback forwards empty tools list in options.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2123,7 +2316,7 @@ async def test_mcp_tool_sampling_callback_forwards_empty_tools_list(): mock_message.content.text = "Test question" params.messages = [mock_message] params.temperature = None - params.maxTokens = None + params.maxTokens = 100 params.stopSequences = None params.systemPrompt = None params.tools = [] @@ -2141,7 +2334,7 @@ async def test_mcp_tool_sampling_callback_forwards_generation_params_in_options( """Test sampling callback passes temperature, max_tokens, and stop in options.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2182,7 +2375,7 @@ async def test_mcp_tool_sampling_callback_omits_temperature_when_none(): """Test sampling callback does not set temperature in options when it is None.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() @@ -2219,7 +2412,7 @@ async def test_mcp_tool_sampling_callback_always_passes_max_tokens(): """Test sampling callback always sets max_tokens in options since maxTokens is a required int field.""" from agent_framework import Message - tool = MCPStdioTool(name="test_tool", command="python") + tool = MCPStdioTool(name="test_tool", command="python", sampling_approval_callback=_approve) mock_chat_client = AsyncMock() mock_response = Mock() diff --git a/python/samples/02-agents/mcp/README.md b/python/samples/02-agents/mcp/README.md index de57286320e..53af7d31a83 100644 --- a/python/samples/02-agents/mcp/README.md +++ b/python/samples/02-agents/mcp/README.md @@ -14,6 +14,7 @@ The Model Context Protocol (MCP) is an open standard for connecting AI agents to | **API Key Authentication** | [`mcp_api_key_auth.py`](mcp_api_key_auth.py) | Demonstrates API key authentication with MCP servers using `header_provider`, runtime invocation kwargs, and a command-line API key argument | | **GitHub Integration with PAT** | [`mcp_github_pat.py`](mcp_github_pat.py) | Demonstrates connecting to GitHub's MCP server using Personal Access Token (PAT) authentication | | **Long-Running Task** | [`mcp_long_running_task.py`](mcp_long_running_task.py) | Demonstrates transparent SEP-2663 long-running task handling for MCP tools that advertise `taskSupport=required`. Self-spawns a stdio MCP child server | +| **Sampling Approval** | [`mcp_sampling_approval.py`](mcp_sampling_approval.py) | Demonstrates gating server-initiated `sampling/createMessage` requests with a `sampling_approval_callback`, plus the `sampling_max_tokens` and `sampling_max_requests` guardrails. MCP sampling is denied by default | ## Prerequisites diff --git a/python/samples/02-agents/mcp/mcp_sampling_approval.py b/python/samples/02-agents/mcp/mcp_sampling_approval.py new file mode 100644 index 00000000000..0d359b7aecb --- /dev/null +++ b/python/samples/02-agents/mcp/mcp_sampling_approval.py @@ -0,0 +1,78 @@ +# Copyright (c) Microsoft. All rights reserved. + +import asyncio + +from agent_framework import Agent, MCPStreamableHTTPTool +from agent_framework.openai import OpenAIChatClient +from dotenv import load_dotenv +from mcp import types + +# Load environment variables from .env file +load_dotenv() + +""" +MCP Sampling Approval Example + +MCP servers can send the client a ``sampling/createMessage`` request, asking the +client to run an LLM completion on the server's behalf. Because remote MCP +servers are untrusted third parties, forwarding these server-controlled prompts +to your chat client without review is a confused-deputy risk: a malicious server +could exfiltrate context, force tool calls, or burn through your token budget. + +For that reason Agent Framework **denies MCP sampling by default**. To allow it, +pass a ``sampling_approval_callback`` to the MCP tool. The callback receives the +raw ``CreateMessageRequestParams`` and returns ``True`` to approve or ``False`` +to deny. It may be synchronous or asynchronous, so you can implement a +human-in-the-loop prompt, a policy check, or an audit log. + +Two further guardrails apply to approved requests: +- ``sampling_max_tokens`` caps the server-requested ``maxTokens``. +- ``sampling_max_requests`` limits how many sampling requests a single session + may make. + +To restore the legacy "always approve" behavior (only do this for servers you +trust), pass ``sampling_approval_callback=lambda params: True``. +""" + + +async def approve_sampling(params: types.CreateMessageRequestParams) -> bool: + """Human-in-the-loop approval gate for server-initiated sampling. + + Shows the server-supplied system prompt and messages, then asks the user to + approve or deny. Returning ``False`` rejects the request. + """ + print("\n--- MCP server requested a sampling/createMessage ---") + if params.systemPrompt: + print(f"System prompt: {params.systemPrompt}") + for message in params.messages: + text = getattr(message.content, "text", message.content) + print(f"{message.role}: {text}") + answer = await asyncio.to_thread(input, "Approve this sampling request? [y/N]: ") + return answer.strip().lower() in {"y", "yes"} + + +async def main() -> None: + """Run an agent against an MCP server with a sampling approval gate.""" + async with Agent( + client=OpenAIChatClient(), + name="Agent", + instructions="You are a helpful assistant. Use your MCP tool when answering the user's question.", + tools=MCPStreamableHTTPTool( + name="MCP tool", + description="MCP tool description.", + url="", + # Passing ``client`` enables sampling; the approval callback gates it. + client=OpenAIChatClient(), + sampling_approval_callback=approve_sampling, + sampling_max_tokens=2048, + sampling_max_requests=5, + ), + ) as agent: + query = "Use your MCP tool to help answer this question." + print(f"User: {query}") + result = await agent.run(query) + print(f"Agent: {result.text}") + + +if __name__ == "__main__": + asyncio.run(main()) From 93cbf6b3f003e65d43fffe63cccf89c64a7df6ba Mon Sep 17 00:00:00 2001 From: Giles Odigwe <79032838+giles17@users.noreply.github.com> Date: Wed, 10 Jun 2026 05:51:09 -0700 Subject: [PATCH 18/25] Python: Parse MCP CallToolResult.structuredContent field to prevent tool results returning None (#6421) * Parse structuredContent from MCP CallToolResult (#3313) The _parse_tool_result_from_mcp method only iterated over the content field from CallToolResult, ignoring the structuredContent field entirely. MCP servers that return JSON data via structuredContent (e.g., Power BI MCP) appeared to return None. Add handling for structuredContent: when present, serialize it as JSON text and append it to the result list. This preserves the data for the LLM while maintaining backward compatibility with existing behavior. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Python: Parse MCP CallToolResult.structuredContent field to prevent tool results returning None Fixes #3313 * Address review feedback: add default=str to json.dumps and remove .checkpoints/ - Add default=str to json.dumps for structuredContent serialization so non-JSON-serializable values (e.g. bytes) degrade gracefully instead of raising TypeError - Remove all .checkpoints/ runtime artifacts from the repository - Add **/.checkpoints/ to .gitignore to prevent future accidental commits - Add test for non-serializable structuredContent values Fixes #3313 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address review feedback for #3313: Python: MCP CallToolResult.structuredContent field is not parsed, causing tool results to return None --------- Co-authored-by: Copilot Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .gitignore | 1 + python/packages/core/agent_framework/_mcp.py | 3 + .../packages/core/agent_framework/_skills.py | 10 +- python/packages/core/tests/core/test_mcp.py | 63 ++++++ .../core/tests/core/test_mcp_observability.py | 5 +- .../core/tests/core/test_mcp_skills.py | 190 ++++++++---------- .../mem0/tests/test_mem0_context_provider.py | 7 +- .../02-agents/harness/console/agent_runner.py | 4 +- .../samples/02-agents/harness/console/app.py | 10 +- .../harness/console/commands/todo_handler.py | 4 +- .../console/components/scroll_panel.py | 2 +- .../console/observers/planning_models.py | 3 +- 12 files changed, 158 insertions(+), 144 deletions(-) diff --git a/.gitignore b/.gitignore index 9cb714813a2..e6b9efb40e3 100644 --- a/.gitignore +++ b/.gitignore @@ -206,6 +206,7 @@ temp*/ .temp/ # AI +**/.checkpoints/ .claude/ .omc/ .omx/ diff --git a/python/packages/core/agent_framework/_mcp.py b/python/packages/core/agent_framework/_mcp.py index ccb0be3b70f..2fc79e85a5a 100644 --- a/python/packages/core/agent_framework/_mcp.py +++ b/python/packages/core/agent_framework/_mcp.py @@ -577,6 +577,9 @@ def _parse_tool_result_from_mcp( case _: result.append(Content.from_text(str(item))) + if mcp_type.structuredContent is not None: + result.append(Content.from_text(json.dumps(mcp_type.structuredContent, default=str))) + if not result: result.append(Content.from_text("null")) return result diff --git a/python/packages/core/agent_framework/_skills.py b/python/packages/core/agent_framework/_skills.py index 97afe66cea9..91bdb619143 100644 --- a/python/packages/core/agent_framework/_skills.py +++ b/python/packages/core/agent_framework/_skills.py @@ -3516,9 +3516,7 @@ async def get_content(self) -> str: result = await self._client.read_resource(_mcp_any_url(self._skill_md_uri)) text = _mcp_join_text(result) if not text: - raise ValueError( - f"The MCP server returned no text content for SKILL.md resource '{self._skill_md_uri}'." - ) + raise ValueError(f"The MCP server returned no text content for SKILL.md resource '{self._skill_md_uri}'.") self._content = text return text @@ -3572,11 +3570,7 @@ def _validate_resource_name(name: str) -> str | None: or ``None`` if the name is unsafe. """ normalized = name.replace("\\", "/") - if ( - normalized.startswith("/") - or "://" in normalized - or any(seg == ".." for seg in normalized.split("/")) - ): + if normalized.startswith("/") or "://" in normalized or any(seg == ".." for seg in normalized.split("/")): logger.debug("Rejecting resource name with unsafe path components: %r", name) return None return normalized diff --git a/python/packages/core/tests/core/test_mcp.py b/python/packages/core/tests/core/test_mcp.py index ce69e9766b2..a40c1c9b54f 100644 --- a/python/packages/core/tests/core/test_mcp.py +++ b/python/packages/core/tests/core/test_mcp.py @@ -342,6 +342,69 @@ def test_parse_tool_result_from_mcp_resource_link_text_resource_and_unknown(): assert result[1].text == "Embedded result" +def test_parse_tool_result_from_mcp_structured_content_only(): + """Test that structuredContent is parsed when content list is empty.""" + mcp_result = types.CallToolResult( + content=[], + structuredContent={"Tables": [{"Name": "Sales", "Columns": ["Amount", "Date"]}]}, + ) + result = _HELPER_MCP_TOOL._parse_tool_result_from_mcp(mcp_result) + + assert isinstance(result, list) + assert len(result) == 1 + assert result[0].type == "text" + parsed = json.loads(result[0].text) + assert parsed == {"Tables": [{"Name": "Sales", "Columns": ["Amount", "Date"]}]} + + +def test_parse_tool_result_from_mcp_structured_content_with_text(): + """Test that structuredContent is appended alongside regular content items.""" + mcp_result = types.CallToolResult( + content=[types.TextContent(type="text", text="Summary")], + structuredContent={"data": [1, 2, 3]}, + ) + result = _HELPER_MCP_TOOL._parse_tool_result_from_mcp(mcp_result) + + assert isinstance(result, list) + assert len(result) == 2 + assert result[0].type == "text" + assert result[0].text == "Summary" + assert result[1].type == "text" + parsed = json.loads(result[1].text) + assert parsed == {"data": [1, 2, 3]} + + +def test_parse_tool_result_from_mcp_structured_content_none(): + """Test that None structuredContent does not affect results.""" + mcp_result = types.CallToolResult( + content=[types.TextContent(type="text", text="Hello")], + structuredContent=None, + ) + result = _HELPER_MCP_TOOL._parse_tool_result_from_mcp(mcp_result) + + assert isinstance(result, list) + assert len(result) == 1 + assert result[0].type == "text" + assert result[0].text == "Hello" + + +def test_parse_tool_result_from_mcp_structured_content_non_serializable(): + """Test that non-JSON-serializable values in structuredContent degrade gracefully.""" + mcp_result = types.CallToolResult( + content=[], + structuredContent={"data": b"raw bytes", "count": 42}, + ) + result = _HELPER_MCP_TOOL._parse_tool_result_from_mcp(mcp_result) + + assert isinstance(result, list) + assert len(result) == 1 + assert result[0].type == "text" + parsed = json.loads(result[0].text) + assert parsed["count"] == 42 + # bytes should be converted to string representation via default=str + assert "raw bytes" in parsed["data"] + + def test_mcp_content_types_to_ai_content_text(): """Test conversion of MCP text content to AI content.""" mcp_content = types.TextContent(type="text", text="Sample text") diff --git a/python/packages/core/tests/core/test_mcp_observability.py b/python/packages/core/tests/core/test_mcp_observability.py index 226e9761205..e32bce1b022 100644 --- a/python/packages/core/tests/core/test_mcp_observability.py +++ b/python/packages/core/tests/core/test_mcp_observability.py @@ -76,6 +76,7 @@ def _make_call_tool_result(text: str = "result", is_error: bool = False) -> Mock result = Mock() result.isError = is_error result.content = [types.TextContent(type="text", text=text)] + result.structuredContent = None return result @@ -281,9 +282,7 @@ async def test_mcp_prompts_get_creates_client_span(span_exporter: InMemorySpanEx async def test_mcp_prompts_get_mcp_error_sets_error_type(span_exporter: InMemorySpanExporter): """When session.get_prompt() raises McpError, the span should have error.type and ERROR status.""" tool = _make_connected_mcp_tool() - tool.session.get_prompt = AsyncMock( - side_effect=McpError(ErrorData(code=-32602, message="prompt not found")) - ) + tool.session.get_prompt = AsyncMock(side_effect=McpError(ErrorData(code=-32602, message="prompt not found"))) span_exporter.clear() with pytest.raises(ToolExecutionException): diff --git a/python/packages/core/tests/core/test_mcp_skills.py b/python/packages/core/tests/core/test_mcp_skills.py index 3e7c67662af..74993997d0e 100644 --- a/python/packages/core/tests/core/test_mcp_skills.py +++ b/python/packages/core/tests/core/test_mcp_skills.py @@ -35,26 +35,22 @@ Body content here. """ -SAMPLE_SKILL_INDEX = json.dumps( - { - "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", - "skills": [ - { - "name": "unit-converter", - "type": "skill-md", - "description": "Convert between common units.", - "url": "skill://unit-converter/SKILL.md", - } - ], - } -) +SAMPLE_SKILL_INDEX = json.dumps({ + "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", + "skills": [ + { + "name": "unit-converter", + "type": "skill-md", + "description": "Convert between common units.", + "url": "skill://unit-converter/SKILL.md", + } + ], +}) def _make_text_result(text: str, uri: str = "skill://test") -> ReadResourceResult: """Create a ReadResourceResult with a single TextResourceContents.""" - return ReadResourceResult( - contents=[TextResourceContents(uri=AnyUrl(uri), text=text, mimeType="text/markdown")] - ) + return ReadResourceResult(contents=[TextResourceContents(uri=AnyUrl(uri), text=text, mimeType="text/markdown")]) def _make_blob_result( @@ -230,12 +226,10 @@ async def test_get_content_raises_on_empty(self) -> None: @pytest.mark.asyncio async def test_get_resource_text(self) -> None: - client = _make_client( - **{ - "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), - "skill://unit-converter/references/checklist.md": _make_text_result("- check thing 1\n- check thing 2"), - } - ) + client = _make_client(**{ + "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), + "skill://unit-converter/references/checklist.md": _make_text_result("- check thing 1\n- check thing 2"), + }) from agent_framework import SkillFrontmatter fm = SkillFrontmatter(name="unit-converter", description="Convert between common units.") @@ -249,12 +243,10 @@ async def test_get_resource_text(self) -> None: @pytest.mark.asyncio async def test_get_resource_binary(self) -> None: data = bytes([0x01, 0x02, 0x03, 0x04]) - client = _make_client( - **{ - "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), - "skill://unit-converter/assets/icon.bin": _make_blob_result(data), - } - ) + client = _make_client(**{ + "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), + "skill://unit-converter/assets/icon.bin": _make_blob_result(data), + }) from agent_framework import SkillFrontmatter fm = SkillFrontmatter(name="unit-converter", description="Convert between common units.") @@ -345,12 +337,10 @@ class TestMCPSkillsSource: @pytest.mark.asyncio async def test_index_based_discovery_returns_skill(self) -> None: - client = _make_client( - **{ - "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), - "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), - } - ) + client = _make_client(**{ + "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), + "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), + }) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -373,9 +363,7 @@ async def test_no_index_returns_empty(self) -> None: async def test_does_not_read_skill_md_during_discovery(self) -> None: # Index points to a skill, but SKILL.md is not registered on the server. # Discovery should succeed because it only reads the index. - client = _make_client( - **{"skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json")} - ) + client = _make_client(**{"skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -384,19 +372,17 @@ async def test_does_not_read_skill_md_during_discovery(self) -> None: @pytest.mark.asyncio async def test_invalid_name_is_skipped(self) -> None: - index_json = json.dumps( - { - "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", - "skills": [ - { - "name": "UnitConverter", # Invalid: uppercase - "type": "skill-md", - "description": "Convert between common units.", - "url": "skill://UnitConverter/SKILL.md", - } - ], - } - ) + index_json = json.dumps({ + "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", + "skills": [ + { + "name": "UnitConverter", # Invalid: uppercase + "type": "skill-md", + "description": "Convert between common units.", + "url": "skill://UnitConverter/SKILL.md", + } + ], + }) client = _make_client(**{"skill://index.json": _make_text_result(index_json, uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -404,18 +390,16 @@ async def test_invalid_name_is_skipped(self) -> None: @pytest.mark.asyncio async def test_missing_required_fields_is_skipped(self) -> None: - index_json = json.dumps( - { - "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", - "skills": [ - { - "name": "unit-converter", - "type": "skill-md", - # Missing description and url - } - ], - } - ) + index_json = json.dumps({ + "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", + "skills": [ + { + "name": "unit-converter", + "type": "skill-md", + # Missing description and url + } + ], + }) client = _make_client(**{"skill://index.json": _make_text_result(index_json, uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -423,19 +407,17 @@ async def test_missing_required_fields_is_skipped(self) -> None: @pytest.mark.asyncio async def test_unsupported_type_is_skipped(self) -> None: - index_json = json.dumps( - { - "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", - "skills": [ - { - "name": "some-skill", - "type": "archive", - "description": "Packaged skill.", - "url": "skill://some-skill.tar.gz", - } - ], - } - ) + index_json = json.dumps({ + "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", + "skills": [ + { + "name": "some-skill", + "type": "archive", + "description": "Packaged skill.", + "url": "skill://some-skill.tar.gz", + } + ], + }) client = _make_client(**{"skill://index.json": _make_text_result(index_json, uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -443,18 +425,16 @@ async def test_unsupported_type_is_skipped(self) -> None: @pytest.mark.asyncio async def test_template_type_is_skipped(self) -> None: - index_json = json.dumps( - { - "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", - "skills": [ - { - "type": "mcp-resource-template", - "description": "Per-product documentation skill", - "url": "skill://docs/{product}/SKILL.md", - } - ], - } - ) + index_json = json.dumps({ + "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json", + "skills": [ + { + "type": "mcp-resource-template", + "description": "Per-product documentation skill", + "url": "skill://docs/{product}/SKILL.md", + } + ], + }) client = _make_client(**{"skill://index.json": _make_text_result(index_json, uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() @@ -462,31 +442,25 @@ async def test_template_type_is_skipped(self) -> None: @pytest.mark.asyncio async def test_empty_index_returns_empty(self) -> None: - client = _make_client( - **{"skill://index.json": _make_text_result('{"skills": []}', uri="skill://index.json")} - ) + client = _make_client(**{"skill://index.json": _make_text_result('{"skills": []}', uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() assert skills == [] @pytest.mark.asyncio async def test_malformed_index_json_returns_empty(self) -> None: - client = _make_client( - **{"skill://index.json": _make_text_result("not valid json", uri="skill://index.json")} - ) + client = _make_client(**{"skill://index.json": _make_text_result("not valid json", uri="skill://index.json")}) source = MCPSkillsSource(client=client) skills = await source.get_skills() assert skills == [] @pytest.mark.asyncio async def test_sibling_text_resource(self) -> None: - client = _make_client( - **{ - "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), - "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), - "skill://unit-converter/references/checklist.md": _make_text_result("- check thing 1\n- check thing 2"), - } - ) + client = _make_client(**{ + "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), + "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), + "skill://unit-converter/references/checklist.md": _make_text_result("- check thing 1\n- check thing 2"), + }) source = MCPSkillsSource(client=client) skill = (await source.get_skills())[0] resource = await skill.get_resource("references/checklist.md") @@ -497,13 +471,11 @@ async def test_sibling_text_resource(self) -> None: @pytest.mark.asyncio async def test_sibling_binary_resource(self) -> None: data = bytes([0x01, 0x02, 0x03, 0x04]) - client = _make_client( - **{ - "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), - "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), - "skill://unit-converter/assets/icon.bin": _make_blob_result(data), - } - ) + client = _make_client(**{ + "skill://index.json": _make_text_result(SAMPLE_SKILL_INDEX, uri="skill://index.json"), + "skill://unit-converter/SKILL.md": _make_text_result(SAMPLE_SKILL_MD), + "skill://unit-converter/assets/icon.bin": _make_blob_result(data), + }) source = MCPSkillsSource(client=client) skill = (await source.get_skills())[0] resource = await skill.get_resource("assets/icon.bin") @@ -649,9 +621,7 @@ async def test_get_resource_generic_mcp_error_propagates(self) -> None: from agent_framework import SkillFrontmatter client = AsyncMock() - client.read_resource = AsyncMock( - side_effect=McpError(error=ErrorData(code=0, message="Handler error")) - ) + client.read_resource = AsyncMock(side_effect=McpError(error=ErrorData(code=0, message="Handler error"))) fm = SkillFrontmatter(name="test-skill", description="Test.") skill = MCPSkill(frontmatter=fm, skill_md_uri="skill://test/SKILL.md", client=client) with pytest.raises(McpError): diff --git a/python/packages/mem0/tests/test_mem0_context_provider.py b/python/packages/mem0/tests/test_mem0_context_provider.py index a047af1638f..d5c9e2fe677 100644 --- a/python/packages/mem0/tests/test_mem0_context_provider.py +++ b/python/packages/mem0/tests/test_mem0_context_provider.py @@ -198,12 +198,7 @@ async def test_oss_client_all_scoping_params_except_app_id(self, mock_oss_mem0_c """OSS client with all scoping parameters passes them as isolated concurrent kwargs.""" mock_oss_mem0_client.search.return_value = [] - provider = Mem0ContextProvider( - source_id="mem0", - mem0_client=mock_oss_mem0_client, - user_id="u1", - agent_id="a1" - ) + provider = Mem0ContextProvider(source_id="mem0", mem0_client=mock_oss_mem0_client, user_id="u1", agent_id="a1") mock_context = MagicMock(spec=SessionContext) mock_msg = MagicMock() diff --git a/python/samples/02-agents/harness/console/agent_runner.py b/python/samples/02-agents/harness/console/agent_runner.py index 3b7c685dbd6..743ad1e1328 100644 --- a/python/samples/02-agents/harness/console/agent_runner.py +++ b/python/samples/02-agents/harness/console/agent_runner.py @@ -313,9 +313,7 @@ async def _collect_follow_up_actions( """ actions: list[FollowUpAction] = [] for observer in self._observers: - observer_actions = await observer.on_stream_complete( - self._ux, self._agent, session - ) + observer_actions = await observer.on_stream_complete(self._ux, self._agent, session) if observer_actions: actions.extend(observer_actions) return actions diff --git a/python/samples/02-agents/harness/console/app.py b/python/samples/02-agents/harness/console/app.py index c56360c661b..e2260eb2005 100644 --- a/python/samples/02-agents/harness/console/app.py +++ b/python/samples/02-agents/harness/console/app.py @@ -182,18 +182,12 @@ def __init__( if command_handlers is None: from .commands import build_default_command_handlers - self._command_handlers = build_default_command_handlers( - agent, mode_colors=mode_colors - ) + self._command_handlers = build_default_command_handlers(agent, mode_colors=mode_colors) else: self._command_handlers = command_handlers # Compute help text from command handlers - help_parts = [ - h.get_help_text() - for h in self._command_handlers - if h.get_help_text() is not None - ] + help_parts = [h.get_help_text() for h in self._command_handlers if h.get_help_text() is not None] help_text = ", ".join(help_parts) if help_parts else None # State and driver diff --git a/python/samples/02-agents/harness/console/commands/todo_handler.py b/python/samples/02-agents/harness/console/commands/todo_handler.py index 73703e6db34..e32ffd3f6a4 100644 --- a/python/samples/02-agents/harness/console/commands/todo_handler.py +++ b/python/samples/02-agents/harness/console/commands/todo_handler.py @@ -45,9 +45,7 @@ async def try_handle( ux.append_info_line("TodoProvider is not available.") return True - todos = await self._todo_provider.store.load_items( - session, source_id=self._todo_provider.source_id - ) + todos = await self._todo_provider.store.load_items(session, source_id=self._todo_provider.source_id) if not todos: ux.append_info_line("No todos yet.") diff --git a/python/samples/02-agents/harness/console/components/scroll_panel.py b/python/samples/02-agents/harness/console/components/scroll_panel.py index a9cf15a7749..35b478b54bc 100644 --- a/python/samples/02-agents/harness/console/components/scroll_panel.py +++ b/python/samples/02-agents/harness/console/components/scroll_panel.py @@ -72,7 +72,7 @@ def set_streaming_entry(self, entry: OutputEntry) -> None: # Truncate lines back to where streaming started if len(self.lines) > self._streaming_line_start: - del self.lines[self._streaming_line_start:] + del self.lines[self._streaming_line_start :] from textual.geometry import Size self.virtual_size = Size(self._widest_line_width, len(self.lines)) diff --git a/python/samples/02-agents/harness/console/observers/planning_models.py b/python/samples/02-agents/harness/console/observers/planning_models.py index 9b4a92e5757..d4c425b0783 100644 --- a/python/samples/02-agents/harness/console/observers/planning_models.py +++ b/python/samples/02-agents/harness/console/observers/planning_models.py @@ -41,8 +41,7 @@ class PlanningQuestion(BaseModel): choices: list[str] | None = Field( default=None, description=( - "For clarifications, this has a list of options that the user can " - "choose from. null for approvals." + "For clarifications, this has a list of options that the user can choose from. null for approvals." ), ) From 8dde9ef627468ad748969e5704f44efedc88d207 Mon Sep 17 00:00:00 2001 From: westey <164392973+westey-m@users.noreply.github.com> Date: Wed, 10 Jun 2026 14:57:23 +0100 Subject: [PATCH 19/25] Python: HarnessAgent: Disable compaction when max tokens not provided (#6410) * HarnessAgent: Disable compaction when max tokens not provided * Fix regression. * Address PR comments * Require max_output_tokens to be positive Reject max_output_tokens=0 (must be positive), mirroring max_context_window_tokens. Addresses PR review feedback. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../core/agent_framework/_harness/_agent.py | 82 +++++++++++++------ .../core/tests/core/test_harness_agent.py | 74 +++++++++++++++-- python/samples/02-agents/harness/README.md | 14 +++- 3 files changed, 136 insertions(+), 34 deletions(-) diff --git a/python/packages/core/agent_framework/_harness/_agent.py b/python/packages/core/agent_framework/_harness/_agent.py index 5896f721418..0ae0c730321 100644 --- a/python/packages/core/agent_framework/_harness/_agent.py +++ b/python/packages/core/agent_framework/_harness/_agent.py @@ -66,23 +66,45 @@ def _assemble_instructions( def _assemble_compaction_provider( *, disable_compaction: bool, - max_context_window_tokens: int, - max_output_tokens: int, + max_context_window_tokens: int | None, + max_output_tokens: int | None, history_source_id: str, before_compaction_strategy: CompactionStrategy | None, after_compaction_strategy: CompactionStrategy | None, tokenizer: TokenizerProtocol | None, ) -> CompactionProvider | None: - """Build the compaction provider from parameters or defaults.""" + """Build the compaction provider from parameters or defaults. + + The token-budget defaults (``ContextWindowCompactionStrategy`` for the before phase and + ``ToolResultCompactionStrategy`` for the after phase) are only applied when the token + params are provided. Caller-supplied strategies are always honored. Either phase may end + up ``None``, which ``CompactionProvider`` interprets as "skip that phase". + + Returns None when compaction is explicitly disabled, or when neither phase has a strategy + (no custom strategies and no token budget to build the defaults). + """ if disable_compaction: return None - before_strategy = before_compaction_strategy or ContextWindowCompactionStrategy( - max_context_window_tokens=max_context_window_tokens, - max_output_tokens=max_output_tokens, - tokenizer=tokenizer, - ) - after_strategy = after_compaction_strategy or ToolResultCompactionStrategy(keep_last_tool_call_groups=2) + # Resolve the before-strategy: custom strategy wins; otherwise fall back to the + # token-budget-aware default when token params are available. + before_strategy = before_compaction_strategy + if before_strategy is None and max_context_window_tokens is not None and max_output_tokens is not None: + before_strategy = ContextWindowCompactionStrategy( + max_context_window_tokens=max_context_window_tokens, + max_output_tokens=max_output_tokens, + tokenizer=tokenizer, + ) + + # Resolve the after-strategy: custom strategy wins; otherwise fall back to the default + # when token params are available. + after_strategy = after_compaction_strategy + if after_strategy is None and max_context_window_tokens is not None and max_output_tokens is not None: + after_strategy = ToolResultCompactionStrategy(keep_last_tool_call_groups=2) + + # Nothing to compact in either phase: skip the provider entirely. + if before_strategy is None and after_strategy is None: + return None return CompactionProvider( before_strategy=before_strategy, @@ -157,8 +179,8 @@ def create_harness_agent( harness_instructions: str | None = None, agent_instructions: str | None = None, tools: ToolTypes | Callable[..., Any] | Sequence[ToolTypes | Callable[..., Any]] | None = None, - max_context_window_tokens: int, - max_output_tokens: int, + max_context_window_tokens: int | None = None, + max_output_tokens: int | None = None, history_provider: HistoryProvider | None = None, disable_compaction: bool = False, before_compaction_strategy: CompactionStrategy | None = None, @@ -206,8 +228,6 @@ def create_harness_agent( agent = create_harness_agent( OpenAIChatClient(model="gpt-4o"), - max_context_window_tokens=128_000, - max_output_tokens=16_384, ) session = agent.create_session() response = await agent.run("Plan a weekend trip to Seattle", session=session) @@ -243,13 +263,21 @@ def create_harness_agent( (e.g., "You are a research assistant focused on academic sources."). tools: Additional tools to include in the agent's toolset. max_context_window_tokens: Maximum tokens the model's context window supports. + Used to construct the default token-budget-aware compaction strategies. When None + (default) and no custom ``before_compaction_strategy`` / ``after_compaction_strategy`` + is provided, compaction is automatically disabled. max_output_tokens: Maximum output tokens per response. + Used to construct the default compaction strategies and sets a default max_tokens + chat option. When None (default), no default max_tokens option is set, and unless a + custom compaction strategy is provided, compaction is automatically disabled. history_provider: Custom history provider. When None, an InMemoryHistoryProvider is used. disable_compaction: When True, skip compaction provider setup. - before_compaction_strategy: Custom before-run compaction strategy. - Defaults to ContextWindowCompactionStrategy (token-budget aware). - after_compaction_strategy: Custom after-run compaction strategy. - Defaults to ToolResultCompactionStrategy. + before_compaction_strategy: Custom before-run compaction strategy. When provided, + compaction runs even if token params are omitted. Defaults to + ContextWindowCompactionStrategy (token-budget aware) when token params are provided. + after_compaction_strategy: Custom after-run compaction strategy. When provided, + compaction runs even if token params are omitted. Defaults to + ToolResultCompactionStrategy when token params are provided. tokenizer: Custom tokenizer for compaction strategies. disable_todo: When True, skip the TodoProvider. todo_provider: Custom TodoProvider instance. Ignored when disable_todo is True. @@ -283,14 +311,19 @@ def create_harness_agent( A fully configured :class:`~agent_framework.Agent` instance. Raises: - ValueError: If max_context_window_tokens <= 0 or max_output_tokens < 0 - or max_output_tokens >= max_context_window_tokens. + ValueError: If max_context_window_tokens is provided and <= 0, or + max_output_tokens is provided and <= 0, or max_output_tokens >= + max_context_window_tokens when both are provided. """ - if max_context_window_tokens <= 0: + if max_context_window_tokens is not None and max_context_window_tokens <= 0: raise ValueError("max_context_window_tokens must be positive.") - if max_output_tokens < 0: - raise ValueError("max_output_tokens must be non-negative.") - if max_output_tokens >= max_context_window_tokens: + if max_output_tokens is not None and max_output_tokens <= 0: + raise ValueError("max_output_tokens must be positive.") + if ( + max_context_window_tokens is not None + and max_output_tokens is not None + and max_output_tokens >= max_context_window_tokens + ): raise ValueError("max_output_tokens must be less than max_context_window_tokens.") # Build history provider. @@ -347,7 +380,8 @@ def create_harness_agent( # Build default options dict. default_opts: dict[str, Any] = dict(default_options) if default_options else {} - default_opts.setdefault("max_tokens", max_output_tokens) + if max_output_tokens is not None: + default_opts.setdefault("max_tokens", max_output_tokens) agent = Agent( client, diff --git a/python/packages/core/tests/core/test_harness_agent.py b/python/packages/core/tests/core/test_harness_agent.py index 58ef3f5f2d0..7da1bdbf36c 100644 --- a/python/packages/core/tests/core/test_harness_agent.py +++ b/python/packages/core/tests/core/test_harness_agent.py @@ -194,6 +194,63 @@ def test_create_harness_agent_returns_full_agent() -> None: assert isinstance(agent, FullAgent) +def test_create_harness_agent_no_token_params_disables_compaction() -> None: + """When token params are omitted, compaction is automatically disabled.""" + agent = create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + ) + provider_types = [type(p) for p in agent.context_providers] + assert CompactionProvider not in provider_types + + +def test_create_harness_agent_no_token_params_skips_max_tokens_option() -> None: + """When max_output_tokens is omitted, max_tokens should not be set in default options.""" + agent = create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + ) + assert agent.default_options.get("max_tokens") is None + + +def test_create_harness_agent_custom_before_strategy_enables_compaction_without_tokens() -> None: + """A custom before_compaction_strategy enables compaction even when token params are omitted.""" + from agent_framework import ToolResultCompactionStrategy + + agent = create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + before_compaction_strategy=ToolResultCompactionStrategy(), + ) + provider_types = [type(p) for p in agent.context_providers] + assert CompactionProvider in provider_types + + +def test_create_harness_agent_disable_compaction_overrides_custom_before_strategy() -> None: + """disable_compaction=True wins even when a custom before strategy is provided.""" + from agent_framework import ToolResultCompactionStrategy + + agent = create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + before_compaction_strategy=ToolResultCompactionStrategy(), + disable_compaction=True, + ) + provider_types = [type(p) for p in agent.context_providers] + assert CompactionProvider not in provider_types + + +def test_create_harness_agent_custom_after_strategy_enables_compaction_without_tokens() -> None: + """A custom after_compaction_strategy enables compaction even when token params are omitted.""" + from agent_framework import ToolResultCompactionStrategy + + agent = create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + after_compaction_strategy=ToolResultCompactionStrategy(), + ) + compaction_providers = [p for p in agent.context_providers if isinstance(p, CompactionProvider)] + assert len(compaction_providers) == 1 + # Before phase is skipped (no token budget, no custom before strategy), after phase is set. + assert compaction_providers[0].before_strategy is None + assert compaction_providers[0].after_strategy is not None + + # --- Validation Tests --- @@ -207,14 +264,15 @@ def test_create_harness_agent_rejects_invalid_context_tokens() -> None: ) -def test_create_harness_agent_rejects_negative_output_tokens() -> None: - """max_output_tokens must be non-negative.""" - with pytest.raises(ValueError, match="max_output_tokens must be non-negative"): - create_harness_agent( - client=_FakeChatClient(), # type: ignore[arg-type] - max_context_window_tokens=1000, - max_output_tokens=-1, - ) +def test_create_harness_agent_rejects_non_positive_output_tokens() -> None: + """max_output_tokens must be positive when provided.""" + for invalid_value in (0, -1): + with pytest.raises(ValueError, match="max_output_tokens must be positive"): + create_harness_agent( + client=_FakeChatClient(), # type: ignore[arg-type] + max_context_window_tokens=1000, + max_output_tokens=invalid_value, + ) def test_create_harness_agent_rejects_output_gte_context() -> None: diff --git a/python/samples/02-agents/harness/README.md b/python/samples/02-agents/harness/README.md index 3bf0f091102..15424e1422d 100644 --- a/python/samples/02-agents/harness/README.md +++ b/python/samples/02-agents/harness/README.md @@ -45,13 +45,23 @@ python samples/02-agents/harness/harness_research.py ### Minimal Setup -`create_harness_agent` requires only a chat client and token budget parameters: +`create_harness_agent` requires only a chat client: ```python from agent_framework import create_harness_agent from agent_framework.foundry import FoundryChatClient from azure.identity import AzureCliCredential +agent = create_harness_agent( + client=FoundryChatClient(credential=AzureCliCredential()), +) +``` + +### With Compaction + +Provide token budget parameters to enable automatic context-window compaction: + +```python agent = create_harness_agent( client=FoundryChatClient(credential=AzureCliCredential()), max_context_window_tokens=128_000, @@ -59,7 +69,7 @@ agent = create_harness_agent( ) ``` -### Customization +### Further Customization Disable or customize any feature: From 30935e14e451c9509d9ed5c7b1878efb66d9ed82 Mon Sep 17 00:00:00 2001 From: Matthias Howell <106839070+MatthiasHowellYopp@users.noreply.github.com> Date: Wed, 10 Jun 2026 10:07:05 -0400 Subject: [PATCH 20/25] Update dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com> --- .../Microsoft.Agents.AI.Valkey.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj index 06e8e95e840..e819c3f51c5 100644 --- a/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj +++ b/dotnet/src/Microsoft.Agents.AI.Valkey/Microsoft.Agents.AI.Valkey.csproj @@ -3,7 +3,7 @@ $(TargetFrameworksCore) Microsoft.Agents.AI.Valkey - preview + alpha $(NoWarn);CA1873 From 3c0c12cd463601c451130884b5442dc42b12cf1e Mon Sep 17 00:00:00 2001 From: westey <164392973+westey-m@users.noreply.github.com> Date: Wed, 10 Jun 2026 16:26:23 +0100 Subject: [PATCH 21/25] .NET: Update release version for 2026-06-10 release and switch GH.CP Agent to RC (#6454) * Update release version for 2026-06-10 release * Switch GitHub.Copilot to RC --- dotnet/nuget/nuget-package.props | 6 +++--- .../Microsoft.Agents.AI.GitHub.Copilot.csproj | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dotnet/nuget/nuget-package.props b/dotnet/nuget/nuget-package.props index 28bc03d112a..c5c14856dad 100644 --- a/dotnet/nuget/nuget-package.props +++ b/dotnet/nuget/nuget-package.props @@ -1,14 +1,14 @@ - 1.9.0 + 1.10.0 1 - 260603 + 260610 $(VersionPrefix)-rc$(RCNumber) $(VersionPrefix)-$(VersionSuffix).$(DateSuffix).1 $(VersionPrefix)-preview.$(DateSuffix).1 $(VersionPrefix) - 1.9.0 + 1.10.0 Debug;Release;Publish true diff --git a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj index 8b868b5f774..4aaaa7d9544 100644 --- a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj +++ b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj @@ -1,7 +1,7 @@ - preview + true $(TargetFrameworksCore) $(NoWarn);GHCP001 From a5f4e0078e1c0d1d8fcd580a1bcccc8836093b98 Mon Sep 17 00:00:00 2001 From: Giles Odigwe <79032838+giles17@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:41:48 -0700 Subject: [PATCH 22/25] .NET: Fix .NET Copilot integration tests for SDK v1.0.0 (#6424) * Fix .NET Copilot integration tests for SDK v1.0.0 - Remove hard-skip in favor of runtime Assert.Skip when COPILOT_GITHUB_TOKEN is not set - Add [Trait("Category", "Integration")] for CI filtering - Fix FunctionTool test: use explicit SessionConfig with Tools, OnPermissionRequest, and SystemMessage - Mark RemoteMcp test as IntegrationDisabled (requires OAuth flow) - Create explicit sessions in all tests and delete after each (cleanup) - Remove unused System.Diagnostics import - Simplify SkipIfCopilotNotConfigured to only check env var Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address review: use try/finally for session cleanup, IsNullOrWhiteSpace - Wrap act/assert in try/finally so sessions are always deleted even on failure - Use IsNullOrWhiteSpace instead of IsNullOrEmpty for token check Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add COPILOT_GITHUB_TOKEN to .NET integration test workflow The Copilot SDK runtime reads this env var directly for authentication. No Node.js/npm install needed - the SDK downloads the CLI binary at build time. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../workflows/dotnet-integration-tests.yml | 1 + .../GitHubCopilotAgentTests.cs | 278 +++++++++++++----- 2 files changed, 198 insertions(+), 81 deletions(-) diff --git a/.github/workflows/dotnet-integration-tests.yml b/.github/workflows/dotnet-integration-tests.yml index 5b08752abb3..4a10694bda5 100644 --- a/.github/workflows/dotnet-integration-tests.yml +++ b/.github/workflows/dotnet-integration-tests.yml @@ -88,6 +88,7 @@ jobs: env: COSMOSDB_ENDPOINT: https://localhost:8081 COSMOSDB_KEY: C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw== + COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }} OpenAI__ApiKey: ${{ secrets.OPENAI__APIKEY }} OpenAI__ChatModelId: ${{ vars.OPENAI__CHATMODELID }} OpenAI__ChatReasoningModelId: ${{ vars.OPENAI__CHATREASONINGMODELID }} diff --git a/dotnet/tests/Microsoft.Agents.AI.GitHub.Copilot.IntegrationTests/GitHubCopilotAgentTests.cs b/dotnet/tests/Microsoft.Agents.AI.GitHub.Copilot.IntegrationTests/GitHubCopilotAgentTests.cs index 2404a254e3f..cfdc8198725 100644 --- a/dotnet/tests/Microsoft.Agents.AI.GitHub.Copilot.IntegrationTests/GitHubCopilotAgentTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.GitHub.Copilot.IntegrationTests/GitHubCopilotAgentTests.cs @@ -10,57 +10,86 @@ namespace Microsoft.Agents.AI.GitHub.Copilot.IntegrationTests; +[Trait("Category", "Integration")] public class GitHubCopilotAgentTests { - private const string SkipReason = "Integration tests require GitHub Copilot CLI installed. For local execution only."; + private static void SkipIfCopilotNotConfigured() + { + if (string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("COPILOT_GITHUB_TOKEN"))) + { + Assert.Skip("COPILOT_GITHUB_TOKEN not set; skipping GitHub Copilot integration tests."); + } + } private static Task OnPermissionRequestAsync(PermissionRequest request, PermissionInvocation invocation) => Task.FromResult(PermissionDecision.ApproveOnce()); - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithSimplePrompt_ReturnsResponseAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); await using GitHubCopilotAgent agent = new(client, sessionConfig: null); + AgentSession session = await agent.CreateSessionAsync(); - // Act - AgentResponse response = await agent.RunAsync("What is 2 + 2? Answer with just the number."); + try + { + // Act + AgentResponse response = await agent.RunAsync("What is 2 + 2? Answer with just the number.", session); - // Assert - Assert.NotNull(response); - Assert.NotEmpty(response.Messages); - Assert.Contains("4", response.Text); + // Assert + Assert.NotNull(response); + Assert.NotEmpty(response.Messages); + Assert.Contains("4", response.Text); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunStreamingAsync_WithSimplePrompt_ReturnsUpdatesAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); await using GitHubCopilotAgent agent = new(client, sessionConfig: null); + AgentSession session = await agent.CreateSessionAsync(); - // Act - List updates = []; - await foreach (AgentResponseUpdate update in agent.RunStreamingAsync("What is 2 + 2? Answer with just the number.")) + try { - updates.Add(update); - } + // Act + List updates = []; + await foreach (AgentResponseUpdate update in agent.RunStreamingAsync("What is 2 + 2? Answer with just the number.", session)) + { + updates.Add(update); + } - // Assert - Assert.NotEmpty(updates); - string fullText = string.Join("", updates.Select(u => u.Text)); - Assert.Contains("4", fullText); + // Assert + Assert.NotEmpty(updates); + string fullText = string.Join("", updates.Select(u => u.Text)); + Assert.Contains("4", fullText); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithFunctionTool_InvokesToolAsync() { // Arrange + SkipIfCopilotNotConfigured(); + bool toolInvoked = false; AIFunction weatherTool = AIFunctionFactory.Create((string location) => @@ -72,24 +101,42 @@ public async Task RunAsync_WithFunctionTool_InvokesToolAsync() await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); - await using GitHubCopilotAgent agent = new( - client, - tools: [weatherTool], - instructions: "You are a helpful weather agent. Use the GetWeather tool to answer weather questions."); + SessionConfig sessionConfig = new() + { + Tools = [weatherTool], + OnPermissionRequest = OnPermissionRequestAsync, + SystemMessage = new SystemMessageConfig + { + Mode = SystemMessageMode.Append, + Content = "You are a weather assistant. Always use the GetWeather tool to answer weather questions.", + }, + }; - // Act - AgentResponse response = await agent.RunAsync("What's the weather like in Seattle?"); + await using GitHubCopilotAgent agent = new(client, sessionConfig); + AgentSession session = await agent.CreateSessionAsync(); - // Assert - Assert.NotNull(response); - Assert.NotEmpty(response.Messages); - Assert.True(toolInvoked); + try + { + // Act + AgentResponse response = await agent.RunAsync("What's the weather like in Seattle?", session); + + // Assert + Assert.NotNull(response); + Assert.NotEmpty(response.Messages); + Assert.True(toolInvoked); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithSession_MaintainsContextAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); @@ -99,23 +146,32 @@ public async Task RunAsync_WithSession_MaintainsContextAsync() AgentSession session = await agent.CreateSessionAsync(); - // Act - First turn - AgentResponse response1 = await agent.RunAsync("My name is Alice.", session); - Assert.NotNull(response1); + try + { + // Act - First turn + AgentResponse response1 = await agent.RunAsync("My name is Alice.", session); + Assert.NotNull(response1); - // Act - Second turn using same session - AgentResponse response2 = await agent.RunAsync("What is my name?", session); + // Act - Second turn using same session + AgentResponse response2 = await agent.RunAsync("What is my name?", session); - // Assert - Assert.NotNull(response2); - Assert.Contains("Alice", response2.Text, StringComparison.OrdinalIgnoreCase); + // Assert + Assert.NotNull(response2); + Assert.Contains("Alice", response2.Text, StringComparison.OrdinalIgnoreCase); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithSessionResume_ContinuesConversationAsync() { // Arrange - First agent instance starts a conversation - string? sessionId; + SkipIfCopilotNotConfigured(); + + string? sessionId = null; await using CopilotClient client1 = new(new CopilotClientOptions()); await client1.StartAsync(); @@ -125,31 +181,44 @@ public async Task RunAsync_WithSessionResume_ContinuesConversationAsync() instructions: "You are a helpful assistant. Keep your answers short."); AgentSession session1 = await agent1.CreateSessionAsync(); - await agent1.RunAsync("Remember this number: 42.", session1); - sessionId = ((GitHubCopilotAgentSession)session1).SessionId; - Assert.NotNull(sessionId); + try + { + await agent1.RunAsync("Remember this number: 42.", session1); - // Act - Second agent instance resumes the session - await using CopilotClient client2 = new(new CopilotClientOptions()); - await client2.StartAsync(); + sessionId = ((GitHubCopilotAgentSession)session1).SessionId; + Assert.NotNull(sessionId); - await using GitHubCopilotAgent agent2 = new( - client2, - instructions: "You are a helpful assistant. Keep your answers short."); + // Act - Second agent instance resumes the session + await using CopilotClient client2 = new(new CopilotClientOptions()); + await client2.StartAsync(); - AgentSession session2 = await agent2.CreateSessionAsync(sessionId); - AgentResponse response = await agent2.RunAsync("What number did I ask you to remember?", session2); + await using GitHubCopilotAgent agent2 = new( + client2, + instructions: "You are a helpful assistant. Keep your answers short."); - // Assert - Assert.NotNull(response); - Assert.Contains("42", response.Text); + AgentSession session2 = await agent2.CreateSessionAsync(sessionId); + AgentResponse response = await agent2.RunAsync("What number did I ask you to remember?", session2); + + // Assert + Assert.NotNull(response); + Assert.Contains("42", response.Text); + } + finally + { + if (sessionId is not null) + { + await client1.DeleteSessionAsync(sessionId); + } + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithShellPermissions_ExecutesCommandAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); @@ -159,20 +228,30 @@ public async Task RunAsync_WithShellPermissions_ExecutesCommandAsync() }; await using GitHubCopilotAgent agent = new(client, sessionConfig); + AgentSession session = await agent.CreateSessionAsync(); - // Act - AgentResponse response = await agent.RunAsync("Run a shell command to print 'hello world'"); + try + { + // Act + AgentResponse response = await agent.RunAsync("Run a shell command to print 'hello world'", session); - // Assert - Assert.NotNull(response); - Assert.NotEmpty(response.Messages); - Assert.Contains("hello", response.Text, StringComparison.OrdinalIgnoreCase); + // Assert + Assert.NotNull(response); + Assert.NotEmpty(response.Messages); + Assert.Contains("hello", response.Text, StringComparison.OrdinalIgnoreCase); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithUrlPermissions_FetchesContentAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); @@ -182,20 +261,30 @@ public async Task RunAsync_WithUrlPermissions_FetchesContentAsync() }; await using GitHubCopilotAgent agent = new(client, sessionConfig); + AgentSession session = await agent.CreateSessionAsync(); - // Act - AgentResponse response = await agent.RunAsync( - "Fetch https://learn.microsoft.com/agent-framework/tutorials/quick-start and summarize its contents in one sentence"); + try + { + // Act + AgentResponse response = await agent.RunAsync( + "Fetch https://learn.microsoft.com/agent-framework/tutorials/quick-start and summarize its contents in one sentence", session); - // Assert - Assert.NotNull(response); - Assert.Contains("Agent Framework", response.Text, StringComparison.OrdinalIgnoreCase); + // Assert + Assert.NotNull(response); + Assert.Contains("Agent Framework", response.Text, StringComparison.OrdinalIgnoreCase); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] public async Task RunAsync_WithLocalMcpServer_UsesServerToolsAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); @@ -214,20 +303,31 @@ public async Task RunAsync_WithLocalMcpServer_UsesServerToolsAsync() }; await using GitHubCopilotAgent agent = new(client, sessionConfig); + AgentSession session = await agent.CreateSessionAsync(); - // Act - AgentResponse response = await agent.RunAsync("List the files in the current directory"); + try + { + // Act + AgentResponse response = await agent.RunAsync("List the files in the current directory", session); - // Assert - Assert.NotNull(response); - Assert.NotEmpty(response.Messages); - Assert.NotEmpty(response.Text); + // Assert + Assert.NotNull(response); + Assert.NotEmpty(response.Messages); + Assert.NotEmpty(response.Text); + } + finally + { + await DeleteSessionAsync(client, session); + } } - [Fact(Skip = SkipReason)] + [Fact] + [Trait("Category", "IntegrationDisabled")] public async Task RunAsync_WithRemoteMcpServer_UsesServerToolsAsync() { // Arrange + SkipIfCopilotNotConfigured(); + await using CopilotClient client = new(new CopilotClientOptions()); await client.StartAsync(); @@ -245,12 +345,28 @@ public async Task RunAsync_WithRemoteMcpServer_UsesServerToolsAsync() }; await using GitHubCopilotAgent agent = new(client, sessionConfig); + AgentSession session = await agent.CreateSessionAsync(); - // Act - AgentResponse response = await agent.RunAsync("Search Microsoft Learn for 'Azure Functions' and summarize the top result"); + try + { + // Act + AgentResponse response = await agent.RunAsync("Search Microsoft Learn for 'Azure Functions' and summarize the top result", session); - // Assert - Assert.NotNull(response); - Assert.Contains("Azure Functions", response.Text, StringComparison.OrdinalIgnoreCase); + // Assert + Assert.NotNull(response); + Assert.Contains("Azure Functions", response.Text, StringComparison.OrdinalIgnoreCase); + } + finally + { + await DeleteSessionAsync(client, session); + } + } + + private static async Task DeleteSessionAsync(CopilotClient client, AgentSession session) + { + if (session is GitHubCopilotAgentSession { SessionId: { } sessionId }) + { + await client.DeleteSessionAsync(sessionId); + } } } From dd29f9aa654257ad807ef7fdcd25fcc7ded109f6 Mon Sep 17 00:00:00 2001 From: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com> Date: Wed, 10 Jun 2026 17:49:48 +0100 Subject: [PATCH 23/25] .NET: Hosted Agent Sample - Toolbox with various Auth (#5777) (#6018) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * .NET: Add Hosted-Toolbox-AuthPaths sample and auto-map /readiness with toolbox health gating (#5777) Add a new hosted agent sample demonstrating five MCP tool authentication paths (API key, agent MI, project MI, custom OAuth, literal token) via a Foundry Toolbox. Package changes (Microsoft.Agents.AI.Foundry.Hosting): - MapFoundryResponses now auto-maps GET /readiness via MapHealthChecks, idempotent across Tier 1/2 (AgentHost, already mapped) and Tier 3 (WebApplication, gap filled). - AddFoundryResponses registers AddHealthChecks() so the pipeline is available. - AddFoundryToolboxes registers FoundryToolboxHealthCheck on the /readiness aggregate, gating readiness on pre-registered toolbox startup outcome (per spec section 3.1). - FoundryToolboxService now exposes StartupStatus and FailedToolboxNames properties. New types: - FoundryToolboxStartupStatus (public enum): Pending, Healthy, Failed, NoEndpoint. - FoundryToolboxHealthCheck (internal IHealthCheck): adapts startup status to the AspNetCore HealthChecks pipeline with failed toolbox names in result data. Tests: - 3 new tests for /readiness auto-mapping (Tier 3 default, pre-mapped skip, idempotent). - 4 new tests for FoundryToolboxHealthCheck (Pending, NoEndpoint, Failed, Healthy). - 3 enhanced FoundryToolboxServiceTests with StartupStatus assertions. * .NET: Align FoundryToolboxService with tools-integration-spec (#5777 Part A) Bring Microsoft.Agents.AI.Foundry.Hosting's toolbox path into compliance with tools-integration-spec.md sections 2-4, 6.3, and 9. Empirically validated against tao-foundry-prj: the previous code (reading FOUNDRY_AGENT_TOOLSET_ENDPOINT, which the platform never injects) silently registered zero tools in production. Package changes (Microsoft.Agents.AI.Foundry.Hosting): - FoundryToolboxService.StartAsync now derives the toolbox proxy base URL from the platform-injected FOUNDRY_PROJECT_ENDPOINT and constructs the per-toolbox URL as {FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{name}/mcp?api-version={ApiVersion} per spec sections 2-3. The legacy FOUNDRY_AGENT_TOOLSET_ENDPOINT env var is removed outright (preview package, no production consumers). - FoundryToolboxOptions.ApiVersion default flipped to 'v1' to match spec example. - FoundryToolboxBearerTokenHandler always sends the mandatory Foundry-Features: Toolboxes=V1Preview header per spec section 2, merging any additional flags supplied via the FOUNDRY_AGENT_TOOLSET_FEATURES env var. - FoundryToolboxBearerTokenHandler token scope changed from https://cognitiveservices.azure.com/.default to https://ai.azure.com/.default per spec section 4. - FoundryToolboxBearerTokenHandler propagates W3C trace context (traceparent, tracestate, baggage) from Activity.Current per spec section 6.3. Sample changes: - Hosted-Toolbox-AuthPaths and Hosted-Toolbox Program.cs, README.md, and .env.example corrected to describe the actual env-var contract (FOUNDRY_PROJECT_ENDPOINT auto-injected; AZURE_AI_PROJECT_ENDPOINT as the local-dev fallback). Removes the misleading 'auto-injected by Foundry runtime' claims for FOUNDRY_AGENT_TOOLSET_ENDPOINT. - Hosted-Toolbox-AuthPaths/agent.manifest.yaml declares the toolbox and model dependencies under resources[] per the AgentManifest schema so azd ai agent init users get them provisioned automatically. Tests: - 4 new FoundryToolboxServiceTests covering env-var derivation, EndpointOverride precedence, trailing-slash normalization, and the existing NoEndpoint behavior under the new env var name. - 4 new FoundryToolboxBearerTokenHandlerTests covering token scope, mandatory feature header always present, header merging with override, no duplicate mandatory flag, trace context propagation from Activity.Current, and no override of caller-set traceparent. - New FoundryProjectEndpointEnvFixture xUnit collection definition serializes env-var-mutating tests across FoundryToolboxServiceTests and FoundryToolboxHealthCheckTests, preventing parallel-execution races. - FoundryToolboxHealthCheckTests adjusted for the new env var name. * .NET: Drop ACA prereq from Hosted-Toolbox-AuthPaths README (#5777 Part B) Empirically verified that any Azure Cognitive Services MCP endpoint already in the Foundry project (e.g., a Language service MCP) accepts Entra tokens and can serve Paths 2 and 3 without deploying a separate Azure MCP Server to ACA. README updates: - Step 0 rewritten: 'Identify an Entra-authenticated MCP target in your project' instead of 'Deploy Azure MCP Server to Azure Container Apps' (the original azmcp-foundry-aca-mi setup is now optional, not required). - Auth-paths matrix updated to describe AAD-based connections targeting a Cognitive Services MCP URL (e.g., Language service) instead of an ACA URL. - Step 2 connections table updated: the Entra ID category is now a single 'AAD' authType. The original 'Agent Identity' vs 'Project Managed Identity' as selectable connection sub-types is NOT exposed via the ARM control plane today; the platform selects the calling principal contextually. Both connections in the walkthrough share the same shape and target. - Added an explicit RBAC note: the agent identity AND project MI must hold the required role (typically Cognitive Services User) on the target resource; without it the MCP server returns HTTP 401 even though the connection wiring is correct. - Toolbox tool entries renamed lang_entra_agent / lang_entra_project to match the new connection names. Empirical validation supporting these changes is captured in the session plan.md (Part B addendum). * .NET: Document correct connection shape for Hosted-Toolbox-AuthPaths Paths 2/3 (#5777) Updates the sample README with the verified connection shape and RBAC procedure for Microsoft Entra agent-identity and project-managed-identity MCP authentication: - Connection authType values: AgenticIdentityToken (agent identity) and ProjectManagedIdentity (project MI), both with category=RemoteTool. - Top-level audience property required; for Cognitive Services targets the value is https://cognitiveservices.azure.com. - Connections created via ARM REST (the Foundry portal wizard does not yet expose these authTypes). - RBAC grants target the project's shared agent identity blueprint principal (project.properties.agentIdentity.agentIdentityId) for Path 2 and the project's system-assigned MI (project.identity.principalId) for Path 3. - Troubleshooting table updated with the audience-mismatch symptom and the startup-cache behavior of FoundryToolboxService. * .NET: Drop Path 3 (project MI) and align with new agent model in Hosted-Toolbox-AuthPaths (#5777) Updates the sample to use only the new Foundry agent object model and removes the project managed identity path: - Auth-path matrix reduced to four paths: key, Entra agent identity, custom OAuth, inline authorization. Project managed identity is moved into a note describing when it applies (multiple agents sharing access) rather than as a documented sample path. - RBAC instructions reference the agent's own instance_identity.principal_id from the agent ARM resource (new agent object model) instead of the project's shared agent identity blueprint (legacy model). - Step 2 (connections) creates only the AgenticIdentityToken connection. - Step 3 (toolbox tools) lists four tool entries instead of five. - Sample prompts and troubleshooting table updated to match. * .NET: Restore Path 3 (project MI) to Hosted-Toolbox-AuthPaths matrix (#5777) The sample's purpose is to enumerate every authentication path a Foundry toolbox can drive, not to pick one. Path 3 belongs alongside the other four with explicit guidance for when each path is the right choice. - Path 3 (project managed identity, authType=ProjectManagedIdentity) restored to the matrix with a 'When to pick this' column. - Step 2 (connections) provisions both lang-mcp-agent-id and lang-mcp-project-mi via ARM REST. - Step 3 (toolbox) lists five tool entries (one per path). - RBAC instructions cover both the agent's instance identity (Path 2) and the project's system-assigned MI (Path 3). - Sample prompts include all five paths. - Troubleshooting table updated accordingly. * .NET: Fix duplicate line in Hosted-Toolbox-AuthPaths README (#5777) * .NET: Fix broken markdown link to ToolCallingApprovalHostedAgentFixture (#5777) * .NET: Fix relative path depth in markdown link (#5777) * .NET: Address Copilot review feedback for #5777 - FoundryToolboxHealthCheck description: rename FOUNDRY_AGENT_TOOLSET_ENDPOINT → FOUNDRY_PROJECT_ENDPOINT (stale reference; operator-facing in /readiness body). - FoundryToolboxStartupStatus.NoEndpoint XML doc: same rename. - ServiceCollectionExtensions XML docs: same rename + URL shape update. - Foundry.Hosting.IntegrationTests.TestContainer: remove explicit app.MapGet('/readiness') — now redundant + would conflict with the auto-mapped readiness route from MapFoundryResponses. - Hosted-Toolbox-AuthPaths agent.manifest.yaml: parameterize TOOLBOX_NAME via {{TOOLBOX_NAME}} template substitution and declare it under parameters with a default of 'auth-paths-toolbox' so the README's 'use any name' guidance actually works for hosted deployments. * .NET: Address Copilot review round 2 — fallback env + dedup + naming (#5777) - FoundryToolboxService.StartAsync: fall back to AZURE_AI_PROJECT_ENDPOINT when FOUNDRY_PROJECT_ENDPOINT is absent. Matches the local-dev convention used by the samples and resolves the doc/code mismatch flagged in review. - FoundryToolboxHealthCheck description updated for the fallback. - AddFoundryToolboxes: guard against duplicate health-check registration via an explicit name-uniqueness check on HealthCheckServiceOptions.Registrations. AddCheck(name, ...) does not dedupe by name, so repeated AddFoundryToolboxes calls would have registered multiple instances. - FoundryToolboxOptions.EndpointOverride doc: clarify URL becomes {EndpointOverride}/toolboxes/{name}/mcp (was missing /toolboxes/ segment). - Hosted-Toolbox sample (Program.cs + README): switch FOUNDRY_TOOLBOX_NAME to TOOLBOX_NAME (the FOUNDRY_* prefix is reserved by the platform), default changed from 'my-toolset' to 'my-toolbox', terminology updated from 'Toolset' to 'Toolbox'. - FoundryToolboxServiceTests: 2 test renames to reflect what they actually assert (StartupStatus + FailedToolboxNames, not URL shape directly). - Tests adjusted to clear both env vars in NoEndpoint scenarios. * .NET: Fix stale NoEndpoint XML doc and misleading test comment (#5777) Update FoundryToolboxStartupStatus.NoEndpoint XML doc to mention both FOUNDRY_PROJECT_ENDPOINT and AZURE_AI_PROJECT_ENDPOINT (the service checks both since the fallback was added). Fix test comment that claimed URL derivation validation when the test only asserts on StartupStatus and FailedToolboxNames. * Remove OAuth consent path from AuthPaths sample, keep four working auth paths The interactive OAuth identity passthrough path needs a protocol gap closed in the hosting package (the proprietary oauth_consent_request item is not representable through the OpenAI/MEAI abstractions), so it is deferred to a separate spike branch. This strips the OAuth path from the AuthPaths sample, the companion REPL client, the agent manifest, and the docs, then renumbers the inline Authorization path so the sample teaches four contiguous paths: API key via connection, Entra agent identity, Entra project managed identity, and inline Authorization (anti-pattern). Package code is unchanged; the consent infrastructure already present in main stays as baseline. Both samples build with --warnaserror and all 246 hosting unit tests pass. * .NET: Drop project MI auth path and dedicated client from Hosted-Toolbox-AuthPaths (#5777) Live validation against tao-foundry-prj showed the ProjectManagedIdentity path failing with an unresolved token audience 401, so the sample now ships three working auth paths instead of four: connection key, agent managed identity, and inline Authorization. Changes: - Remove the project managed identity path from the AuthPaths sample matrix, prerequisites, connections, toolbox table, prompts, Program.cs instructions and agent.manifest.yaml. - Delete the near duplicate Hosted-Toolbox-AuthPaths-Client project and remove it from the solution. The README now drives the agent with the shared SimpleAgent REPL via AsAIAgent(agentEndpoint). - Correct the troubleshooting note: the Foundry toolbox tools/list is all or nothing, so one bad source returns -32007, fails startup, and returns 424 for every path. Add the allowed_tools caveat that names must match the upstream server. - Mark the toolbox startup status and health check experimental under AgentsAIExperiments (MAAI001) instead of AIOpenAIResponses, and update the package NoWarn set accordingly. * .NET: Address PR review nits for Hosted-Toolbox-AuthPaths (#5777) - Remove duplicated NU1903 comment in Foundry.Hosting csproj. - Fix stale 'four-tool' cross-links in Hosted-Toolbox and Hosted-McpTools READMEs to describe the three-path toolbox driven by the shared SimpleAgent REPL. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * .NET: Address toolbox startup-status review feedback (#5777) - Rename FoundryToolboxStartupStatus.Failed to Unhealthy so it is the proper opposite of Healthy, and clarify the doc comment covers the partial-failure case. - Raise the missing-endpoint toolbox log from Information to Warning, since enabling toolboxes is an explicit opt-in and a silently disabled toolbox warrants a higher-severity signal. - Update unit tests and the AuthPaths README troubleshooting row accordingly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * .NET: Reword toolbox-wiring comment to avoid hosting-layer internals (#5777) Address PR review feedback: explain how a Foundry Toolbox is attached using the public API (AddFoundryToolboxes vs the CreateHostedMcpToolbox marker) and observable behavior, instead of naming the internal AgentFrameworkResponseHandler type and FoundryToolboxService.Tools property. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- dotnet/agent-framework-dotnet.slnx | 3 + .../responses/Hosted-McpTools/README.md | 6 + .../Hosted-Toolbox-AuthPaths/.env.example | 16 ++ .../Hosted-Toolbox-AuthPaths/Dockerfile | 17 ++ .../Dockerfile.contributor | 21 ++ .../Hosted-Toolbox-AuthPaths.csproj | 33 +++ .../Hosted-Toolbox-AuthPaths/Program.cs | 145 +++++++++++++ .../Hosted-Toolbox-AuthPaths/README.md | 197 ++++++++++++++++++ .../agent.manifest.yaml | 48 +++++ .../Hosted-Toolbox-AuthPaths/agent.yaml | 9 + .../responses/Hosted-Toolbox/Program.cs | 41 ++-- .../responses/Hosted-Toolbox/README.md | 27 +++ .../FoundryToolboxBearerTokenHandler.cs | 97 ++++++++- .../FoundryToolboxHealthCheck.cs | 66 ++++++ .../FoundryToolboxOptions.cs | 11 +- .../FoundryToolboxService.cs | 56 ++++- .../FoundryToolboxStartupStatus.cs | 46 ++++ ...Microsoft.Agents.AI.Foundry.Hosting.csproj | 2 +- .../ServiceCollectionExtensions.cs | 85 +++++++- .../Program.cs | 1 - .../FoundryProjectEndpointEnvFixture.cs | 14 ++ .../FoundryToolboxBearerTokenHandlerTests.cs | 133 +++++++++++- .../FoundryToolboxHealthCheckTests.cs | 135 ++++++++++++ .../FoundryToolboxServiceTests.cs | 160 +++++++++++++- .../ServiceCollectionExtensionsTests.cs | 75 +++++++ 25 files changed, 1390 insertions(+), 54 deletions(-) create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/.env.example create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile.contributor create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Hosted-Toolbox-AuthPaths.csproj create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Program.cs create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/README.md create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.manifest.yaml create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.yaml create mode 100644 dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/README.md create mode 100644 dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxHealthCheck.cs create mode 100644 dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxStartupStatus.cs create mode 100644 dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryProjectEndpointEnvFixture.cs create mode 100644 dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxHealthCheckTests.cs diff --git a/dotnet/agent-framework-dotnet.slnx b/dotnet/agent-framework-dotnet.slnx index e395627bc98..98c364cd533 100644 --- a/dotnet/agent-framework-dotnet.slnx +++ b/dotnet/agent-framework-dotnet.slnx @@ -344,6 +344,9 @@ + + + diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md index f0f0be9e748..db0a2324127 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-McpTools/README.md @@ -109,3 +109,9 @@ For end-to-end hosted agent deployment guidance, see the [official deployment gu ## NuGet package users Use the standard `Dockerfile` instead of `Dockerfile.contributor`. See the commented section in `HostedMcpTools.csproj` for the `PackageReference` alternative. + +## Related samples + +- [`Hosted-Toolbox/`](../Hosted-Toolbox/) — connects to a single Foundry Toolbox via the AF Foundry hosting bridge (`AddFoundryToolboxes` + `FoundryAITool.CreateHostedMcpToolbox`). +- [`Hosted-Toolbox-AuthPaths/`](../Hosted-Toolbox-AuthPaths/) — same hosting bones as `Hosted-Toolbox/`, but the toolbox bundles three MCP tools each authenticated differently (key, Entra agent identity, inline `Authorization`), driven by the shared `Using-Samples/SimpleAgent/` REPL. + diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/.env.example b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/.env.example new file mode 100644 index 00000000000..e4302a5a9a8 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/.env.example @@ -0,0 +1,16 @@ +# Azure AI Foundry project endpoint (auto-injected in hosted containers). +AZURE_AI_PROJECT_ENDPOINT=https://.services.ai.azure.com/api/projects/ + +# Model deployment name. Must exist in the Foundry project above. +AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-4o + +# Name of the Foundry Toolbox you provisioned in the portal (see README.md). +TOOLBOX_NAME=auth-paths-toolbox + +# Agent name advertised over the wire. Must be unique if running side-by-side with +# other Hosted-* samples (e.g. Hosted-Toolbox), otherwise the REPL client cannot +# disambiguate which agent to chat with. +AGENT_NAME=hosted-toolbox-auth-paths-agent + +# Application Insights connection string (auto-injected in hosted containers; optional locally). +# APPLICATIONINSIGHTS_CONNECTION_STRING=InstrumentationKey=... diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile new file mode 100644 index 00000000000..b803098b6ae --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile @@ -0,0 +1,17 @@ +# Use the official .NET 10.0 ASP.NET runtime as a parent image +FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS base +WORKDIR /app + +FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build +WORKDIR /src +COPY . . +RUN dotnet restore +RUN dotnet publish -c Release -o /app/publish + +# Final stage +FROM base AS final +WORKDIR /app +COPY --from=build /app/publish . +EXPOSE 8088 +ENV ASPNETCORE_URLS=http://+:8088 +ENTRYPOINT ["dotnet", "HostedToolboxAuthPaths.dll"] diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile.contributor b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile.contributor new file mode 100644 index 00000000000..bbeb4a098ba --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Dockerfile.contributor @@ -0,0 +1,21 @@ +# Dockerfile for contributors building from the agent-framework repository source. +# +# This project uses ProjectReference to the local source, which means a standard +# multi-stage Docker build cannot resolve dependencies outside this folder. +# Pre-publish the app targeting the container runtime and copy the output: +# +# dotnet publish -c Debug -f net10.0 -r linux-musl-x64 --self-contained false -o out +# docker build -f Dockerfile.contributor -t hosted-toolbox-auth-paths . +# docker run --rm -p 8088:8088 \ +# -e AGENT_NAME=hosted-toolbox-auth-paths-agent \ +# -e AZURE_BEARER_TOKEN=$AZURE_BEARER_TOKEN \ +# --env-file .env hosted-toolbox-auth-paths +# +# For end-users consuming the NuGet package (not ProjectReference), use the standard +# Dockerfile which performs a full dotnet restore + publish inside the container. +FROM mcr.microsoft.com/dotnet/aspnet:10.0-alpine AS final +WORKDIR /app +COPY out/ . +EXPOSE 8088 +ENV ASPNETCORE_URLS=http://+:8088 +ENTRYPOINT ["dotnet", "HostedToolboxAuthPaths.dll"] diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Hosted-Toolbox-AuthPaths.csproj b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Hosted-Toolbox-AuthPaths.csproj new file mode 100644 index 00000000000..da484bb9e1c --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Hosted-Toolbox-AuthPaths.csproj @@ -0,0 +1,33 @@ + + + + net10.0 + enable + enable + false + HostedToolboxAuthPaths + HostedToolboxAuthPaths + $(NoWarn);OPENAI001 + + + + + + + + + + + + + + + + + + diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Program.cs b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Program.cs new file mode 100644 index 00000000000..7bf9baeaf53 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/Program.cs @@ -0,0 +1,145 @@ +// Copyright (c) Microsoft. All rights reserved. + +// Foundry Toolbox Auth Paths Agent — A hosted agent backed by a single Foundry Toolbox +// that bundles MCP tools using THREE different authentication paths. +// +// This sample demonstrates the same hosting bones as Hosted-Toolbox/, but the toolbox +// (provisioned by the user out-of-band) contains three MCP tool entries each authenticated +// differently. The agent code itself is agnostic to authentication — the educational +// surface lives in the toolbox configuration in the Foundry portal and in this sample's +// README.md. +// +// Required environment variables: +// AZURE_AI_PROJECT_ENDPOINT (local-dev) OR FOUNDRY_PROJECT_ENDPOINT (hosted runtime) +// - Azure AI Foundry project endpoint. The Foundry hosted +// runtime auto-injects FOUNDRY_PROJECT_ENDPOINT; locally +// set AZURE_AI_PROJECT_ENDPOINT (the AF-repo convention). +// TOOLBOX_NAME - Name of the Foundry Toolbox to load +// (default: auth-paths-toolbox) +// +// Optional: +// AZURE_AI_MODEL_DEPLOYMENT_NAME - Model deployment name (default: gpt-4o) +// AGENT_NAME - Defaults to "hosted-toolbox-auth-paths-agent". +// +// The Foundry.Hosting package builds the toolbox proxy URL from FOUNDRY_PROJECT_ENDPOINT +// per tools-integration-spec.md §2–§3, so the sample does not need to plumb any +// toolbox-specific URL env var. +// +// NOTE: All FOUNDRY_* and AGENT_* env-var prefixes (other than the platform-injected ones +// listed above) are reserved by the Foundry container platform and rejected by the +// agent-create API. Use TOOLBOX_NAME, not FOUNDRY_TOOLBOX_NAME, for sample-owned config. + +#pragma warning disable OPENAI001 // FoundryAITool.CreateHostedMcpToolbox is experimental + +using Azure.AI.Projects; +using Azure.Core; +using Azure.Identity; +using DotNetEnv; +using Hosted_Shared_Contributor_Setup; +using Microsoft.Agents.AI; +using Microsoft.Agents.AI.Foundry.Hosting; + +// Load .env file if present (for local development) +Env.TraversePath().Load(); + +// Project endpoint resolution order: +// 1. FOUNDRY_PROJECT_ENDPOINT — auto-injected by the Foundry hosted runtime. +// 2. AZURE_AI_PROJECT_ENDPOINT — the convention developers set locally for `dotnet run`. +// When deployed, only (1) is available; the AF-repo sample convention to set (2) at +// deploy time fails silently because the platform reserves all FOUNDRY_* env-var names +// and rejects them at agent-create time. Read both, prefer the platform-injected one. +string endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") + ?? Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT") + ?? throw new InvalidOperationException( + "Neither FOUNDRY_PROJECT_ENDPOINT (platform-injected in hosted runtime) " + + "nor AZURE_AI_PROJECT_ENDPOINT (local-dev convention) is set."); +string deploymentName = Environment.GetEnvironmentVariable("AZURE_AI_MODEL_DEPLOYMENT_NAME") ?? "gpt-4o"; +string toolboxName = Environment.GetEnvironmentVariable("TOOLBOX_NAME") ?? "auth-paths-toolbox"; +string agentName = Environment.GetEnvironmentVariable("AGENT_NAME") ?? "hosted-toolbox-auth-paths-agent"; + +TokenCredential credential = new ChainedTokenCredential( + new DevTemporaryTokenCredential(), + new DefaultAzureCredential()); + +// Notes on toolbox wiring — there are two ways to attach a Foundry Toolbox to an agent: +// - Server-side "baked-in" (what this sample uses): calling AddFoundryToolboxes(name) +// below registers the toolbox with the Foundry.Hosting layer, which resolves that +// toolbox's MCP tools once at startup and automatically makes them available to the +// agent on every request. The agent code does nothing per request. +// - Per-request / caller-driven (NOT used here): a client can attach a toolbox for a +// single call by placing a FoundryAITool.CreateHostedMcpToolbox(name) marker in the +// request body's tool list. +// Because this sample bakes the toolbox in on the server, it uses AddFoundryToolboxes and +// does NOT put the CreateHostedMcpToolbox marker in the agent's `tools:` array. +AIAgent agent = new AIProjectClient(new Uri(endpoint), credential) + .AsAIAgent( + model: deploymentName, + instructions: """ + You are a helpful assistant with access to several tools, each provided by a different + upstream service authenticated through a distinct mechanism (API key, agent managed + identity, and a literal token + shipped with the tool definition). Pick the tool that best fits the user's question + and explain which upstream service answered when you respond. + """, + name: agentName, + description: "Hosted agent demonstrating three MCP-tool authentication paths via a Foundry Toolbox."); + +// Tier 3 spine (WebApplication.CreateBuilder + AddFoundryResponses + MapFoundryResponses): +// the Foundry.Hosting package auto-maps the spec-required GET /readiness probe inside +// MapFoundryResponses (idempotent — skipped when AgentHost or the developer already +// mapped it), so the sample stays free of platform plumbing. +var builder = WebApplication.CreateBuilder(args); + +builder.Services.AddFoundryResponses(agent); +// Pre-register the toolbox name so FoundryToolboxService resolves the foundry-toolbox:// +// marker at request time. With FOUNDRY_PROJECT_ENDPOINT injected by the platform, startup +// MCP tools/list against the toolbox proxy is typically <100ms in-region. +builder.Services.AddFoundryToolboxes(toolboxName); + +var app = builder.Build(); +app.MapFoundryResponses(); + +// Contributor-only: in Development, also map the per-agent OpenAI route shape that live Foundry +// uses so a local REPL client can target this server via AIProjectClient.AsAIAgent(Uri agentEndpoint). +// Do not use this in production. Hosted Foundry agents only support the agent-endpoint path. +app.MapDevTemporaryLocalAgentEndpoint(); + +app.Run(); + +// ── DevTemporaryTokenCredential ─────────────────────────────────────────────── + +/// +/// A for local Docker debugging only. +/// Reads a pre-fetched bearer token from the AZURE_BEARER_TOKEN environment variable +/// once at startup. This should NOT be used in production. +/// +/// Generate a token on your host and pass it to the container: +/// export AZURE_BEARER_TOKEN=$(az account get-access-token --resource https://ai.azure.com --query accessToken -o tsv) +/// docker run -e AZURE_BEARER_TOKEN=$AZURE_BEARER_TOKEN ... +/// +internal sealed class DevTemporaryTokenCredential : TokenCredential +{ + private const string EnvironmentVariable = "AZURE_BEARER_TOKEN"; + private readonly string? _token; + + public DevTemporaryTokenCredential() + { + this._token = Environment.GetEnvironmentVariable(EnvironmentVariable); + } + + public override AccessToken GetToken(TokenRequestContext requestContext, CancellationToken cancellationToken) + => this.GetAccessToken(); + + public override ValueTask GetTokenAsync(TokenRequestContext requestContext, CancellationToken cancellationToken) + => new(this.GetAccessToken()); + + private AccessToken GetAccessToken() + { + if (string.IsNullOrEmpty(this._token) || this._token == "DefaultAzureCredential") + { + throw new CredentialUnavailableException($"{EnvironmentVariable} environment variable is not set."); + } + + return new AccessToken(this._token, DateTimeOffset.MaxValue); + } +} diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/README.md new file mode 100644 index 00000000000..e1cf78fc244 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/README.md @@ -0,0 +1,197 @@ +# Hosted Toolbox — Authentication Paths + +A hosted Foundry agent backed by a single Foundry Toolbox that bundles MCP tools using **three different authentication paths**. The educational surface lives in the toolbox configuration (which you provision in the Foundry portal) and in this README — the agent code itself is identical to the existing [`Hosted-Toolbox/`](../Hosted-Toolbox/) sample. + +Drive the agent interactively across the auth paths with the shared [`Using-Samples/SimpleAgent/`](../Using-Samples/SimpleAgent/) REPL client, pointed at this agent. + +## What this sample teaches + +| Aspect | This sample | Existing siblings | +|---|---|---| +| Toolbox marker pattern | `FoundryAITool.CreateHostedMcpToolbox(name)` + `AddFoundryToolboxes(name)` | Same as [`Hosted-Toolbox/`](../Hosted-Toolbox/) | +| Tools per toolbox | **Three MCP tools, each with a different auth method** | `Hosted-Toolbox/`: typically one demo tool | +| Consumption | Server-side (Foundry resolves the marker) | Same | +| Client | Shared [`Using-Samples/SimpleAgent/`](../Using-Samples/SimpleAgent/) REPL, pointed at this agent | `Hosted-Toolbox/`: any client | + +Related samples: +- [`Hosted-Toolbox/`](../Hosted-Toolbox/) — simpler single-tool toolbox. +- [`Hosted-McpTools/`](../Hosted-McpTools/) — contrasts client-side `McpClient` vs server-side `HostedMcpServerTool` for non-toolbox MCP servers. + +## Authentication-path matrix + +The sample's purpose is to enumerate every authentication path a Foundry toolbox can drive, so each path appears alongside the others. Pick the ones your scenario needs — each connection in a toolbox is independent. + +| # | Auth method | MCP target | Connection `authType` | What flows where | When to pick this | +|---|---|---|---|---|---| +| 1 | **Key-based via project connection** | GitHub MCP at `https://api.githubcopilot.com/mcp` | `CustomKeys` | A PAT stored as `Authorization: Bearer ` lives in the Foundry connection. The toolbox proxy reads it server-side and injects on every MCP call. | The upstream service only accepts API keys or PATs. | +| 2 | **Microsoft Entra — agent identity** | Any Azure Cognitive Services MCP endpoint your project can reach (e.g., Language service MCP) | `AgenticIdentityToken` | Foundry mints an Entra token for the agent's own identity (`instance_identity` in the new agent object model), scoped to the connection's `audience`, and forwards it to the MCP server. The agent identity must hold the required role (typically `Cognitive Services User`) on the target resource. | Per-agent least-privilege access to Entra-protected services. Recommended default for new agents. | +| 3 | **Inline `Authorization` (anti-pattern)** | `https://gitmcp.io/Azure/azure-rest-api-specs` | none | A literal bearer string lives on the toolbox tool entry's `authorization` field. **Do not do this in production** — there's no rotation, no secret store, no per-user identity. Shown for completeness. | Local-dev or public MCP servers that accept any (or no) bearer. | + +## Prerequisites + +### 0. (Path #2 only) Identify an Entra-authenticated MCP target + +Path #2 requires an MCP server that accepts Microsoft Entra tokens. Any **Azure Cognitive Services** resource that exposes an MCP endpoint works — they all accept Entra ID tokens and gate access via standard RBAC. + +The reference walkthrough below uses an **Azure Language service** MCP endpoint: + +``` +https://.cognitiveservices.azure.com/language/mcp?api-version=2025-11-15-preview +``` + +Substitute any other Cognitive Services MCP endpoint you have. If your project has none, omit tool #2 from your toolbox — the remaining two paths still work. + +#### RBAC for path #2 + +Grant the **`Cognitive Services User`** role on the target resource to the agent's instance identity. Find it on the agent ARM resource (Azure portal → your agent → JSON view) at `instance_identity.principal_id`. This is the principal the Foundry proxy uses when minting tokens for `AgenticIdentityToken` connections. + +```powershell +$lang = "/subscriptions//resourceGroups//providers/Microsoft.CognitiveServices/accounts/" + +az role assignment create ` + --assignee-object-id ` + --assignee-principal-type ServicePrincipal ` + --role "Cognitive Services User" ` + --scope $lang +``` + +Repeat for any additional Cognitive Services resources the agent identity needs to call. + +> The RBAC grant requires `Microsoft.Authorization/roleAssignments/write` on the target scope. In many enterprise subscriptions this needs a PIM JIT activation. + +### 1. Foundry project + Azure AI User role + +- An active Microsoft Foundry project ([create one](https://learn.microsoft.com/en-us/azure/foundry/how-to/create-projects)). +- The **Azure AI User** role on the project assigned to: + - The developer (you) creating the toolbox. + - The agent identity for tool invocation. + +### 2. Create the project connections + +The Entra-based connection (path #2) is not available in the Foundry portal connection wizard today. Create it via ARM REST: + +```powershell +$armToken = az account get-access-token --query accessToken -o tsv +$h = @{ Authorization = "Bearer $armToken"; "Content-Type" = "application/json" } +$proj = "/subscriptions//resourceGroups//providers/Microsoft.CognitiveServices/accounts//projects/" +$lang = "https://.cognitiveservices.azure.com/language/mcp?api-version=2025-11-15-preview" + +# Path 2 — agent identity +$body2 = @{ properties = @{ + category = "RemoteTool"; target = $lang + authType = "AgenticIdentityToken"; audience = "https://cognitiveservices.azure.com" + isSharedToAll = $false +}} | ConvertTo-Json -Depth 5 +az rest --method PUT --headers "Content-Type=application/json" ` + --url "https://management.azure.com$proj/connections/lang-mcp-agent-id?api-version=2025-04-01-preview" ` + --body $body2 +``` + +Connection summary: + +| Connection name (used by the toolbox) | `category` | `authType` | `audience` | +|---|---|---|---| +| `github-mcp-key` | `CustomKeys` | `CustomKeys` | n/a (key value carries `Authorization: Bearer `) | +| `lang-mcp-agent-id` | `RemoteTool` | `AgenticIdentityToken` | `https://cognitiveservices.azure.com` | + +Path #3 (`gitmcp.io`) needs no connection — the auth lives on the toolbox tool entry itself. + +The `audience` value is the token resource identifier of the target service — for any Cognitive Services resource it is `https://cognitiveservices.azure.com`. For other Azure services consult [Agent identity — runtime token exchange](https://learn.microsoft.com/azure/foundry/agents/concepts/agent-identity#runtime-token-exchange). + +### 3. Create the toolbox + +In the Foundry portal → Tools → Add Toolbox. Name it `auth-paths-toolbox` (or whatever you prefer; export the name as `TOOLBOX_NAME`). Add three MCP tool entries: + +| Tool `server_label` | `server_url` | Auth | +|---|---|---| +| `github_pat` | `https://api.githubcopilot.com/mcp` | `project_connection_id: github-mcp-key` | +| `lang_agent` | Your Language service MCP URL | `project_connection_id: lang-mcp-agent-id` | +| `gitmcp_inline` | `https://gitmcp.io/Azure/azure-rest-api-specs` | `authorization: "Bearer demo-only-not-real"` (no `project_connection_id`) | + +Each entry should also carry: + +- `require_approval: never` (this sample is focused on auth, not approval flows; see [`ToolCallingApprovalHostedAgentFixture.cs`](../../../../../tests/Foundry.Hosting.IntegrationTests/Fixtures/ToolCallingApprovalHostedAgentFixture.cs) for that concern). +- A tight `allowed_tools` list. GitHub MCP exposes ~50 tools; restrict to what you actually want the model to invoke. For example: `github_pat` → `["search_issues", "list_pull_requests"]`. **Every name in `allowed_tools` must match a real tool on the upstream server** — an unknown name (e.g., `get_issue`, which GitHub MCP does not expose) makes the whole source fail enumeration. See the partial-failure note below. + +### Sidebar — what the toolbox-creation code looks like + +This sample assumes the toolbox already exists; it does not provision one programmatically. For an end-to-end code example of toolbox creation from a publisher script (suitable for a CI/CD pipeline), see [`02-agents/AgentsWithFoundry/Agent_Step25_FoundryToolboxMcp/Program.cs`](../../../../02-agents/AgentsWithFoundry/Agent_Step25_FoundryToolboxMcp/Program.cs) — its `CreateSampleToolboxAsync` helper uses `AgentAdministrationClient.GetAgentToolboxes().CreateToolboxVersionAsync(...)` and is the canonical pattern. + +## Run the agent + +Set environment variables (or copy `.env.example` to `.env` and fill it in): + +```powershell +$env:AZURE_AI_PROJECT_ENDPOINT = "https://.services.ai.azure.com/api/projects/" +$env:AZURE_AI_MODEL_DEPLOYMENT_NAME = "gpt-4o" +$env:TOOLBOX_NAME = "auth-paths-toolbox" +``` + +Locally, the `Foundry.Hosting` package reads `AZURE_AI_PROJECT_ENDPOINT` as a fallback when `FOUNDRY_PROJECT_ENDPOINT` is absent. In the hosted Foundry runtime, the platform auto-injects `FOUNDRY_PROJECT_ENDPOINT` and the package builds the toolbox proxy URL as `{FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{TOOLBOX_NAME}/mcp?api-version=v1` per [`tools-integration-spec.md`](https://github.com/microsoft/AgentSchema/blob/main/specs/agents/hosted_agents/container-spec/docs/tools-integration-spec.md) §2–§3. + +Then sign in (`az login`) and start the server: + +```powershell +dotnet run --tl:off +``` + +The server logs at `http://localhost:8088/`. In Development it also maps the per-agent OpenAI route shape (`MapDevTemporaryLocalAgentEndpoint()`), so the shared `SimpleAgent` REPL client can reach it through `AsAIAgent(agentEndpoint)` — the only supported way to consume a hosted Foundry agent. In a separate terminal: + +**Against the local dev server** (point the client at localhost; the `{project}` segment is a wildcard the server ignores): + +```powershell +cd ../Using-Samples/SimpleAgent +$env:AZURE_AI_PROJECT_ENDPOINT = "http://localhost:8088/api/projects/local" +$env:AZURE_AI_AGENT_NAME = "hosted-toolbox-auth-paths-agent" +dotnet run --tl:off +``` + +**Against a deployed agent** (point the client at the real project endpoint and the deployed agent name): + +```powershell +cd ../Using-Samples/SimpleAgent +$env:AZURE_AI_PROJECT_ENDPOINT = "https://.services.ai.azure.com/api/projects/" +$env:AZURE_AI_AGENT_NAME = "hosted-toolbox-auth-paths-agent" +dotnet run --tl:off +``` + +Either way the client derives the per-agent endpoint URL (`{AZURE_AI_PROJECT_ENDPOINT}/agents/{AZURE_AI_AGENT_NAME}/endpoint/protocols/openai`) and consumes the agent via `AsAIAgent(agentEndpoint)`. Run `az login` first so the client can mint a bearer token. + +> **Parallel-run warning**: `Hosted-Toolbox/` and other `Hosted-*` samples default to the same port (8088) and the same agent name slot. Always set a unique `AGENT_NAME` (this sample defaults to `hosted-toolbox-auth-paths-agent`) and stop other hosted samples before starting this one. + +## Sample prompts + +One per auth path so each tool gets exercised at least once: + +``` +List the latest 3 issues in microsoft/agent-framework. # path #1 — GitHub MCP (key) +Detect the language of "Bonjour le monde". # path #2 — Language MCP (agent identity) +What's the latest API version for Microsoft.CognitiveServices? # path #3 — gitmcp.io (inline Authorization) +``` + +## Troubleshooting / partial-failure semantics + +`AddFoundryToolboxes` resolves the toolbox at startup by listing its tools via MCP `tools/list`. This enumeration is **all-or-nothing**: if *any* single tool source fails to enumerate, the Foundry toolbox proxy returns a top-level JSON-RPC error (`-32007`) instead of a partial list, the hosting package marks the toolbox startup as failed, `/readiness` returns 503, and *every* invoke against the agent returns **HTTP 424** — even for the auth paths that are configured correctly. So one misconfigured connection or one bad `allowed_tools` entry bricks the whole agent at startup, not just at tool-call time. Get each source enumerating cleanly before deploying. Symptoms per auth path: + +| Symptom | Likely cause | +|---|---| +| **All invokes return HTTP 424 ("Failed Dependency")** | One or more tool sources failed `tools/list` at startup (see all-or-nothing note above). Common causes: an `allowed_tools` name that does not exist on the upstream server, or an Entra connection whose token is rejected. Reproduce by calling the toolbox `tools/list` directly with your own token — a `-32007` top-level error names the failing source. | +| **HTTP 401 "audience is incorrect"** | The connection's `audience` field is missing or does not match the OAuth resource identifier the target service accepts. For Cognitive Services targets, set `audience: "https://cognitiveservices.azure.com"`. | +| **HTTP 401 / 403 "principal does not have access"** | Path #1: PAT expired or scope insufficient. Path #2: the agent's instance identity is missing the required role on the target resource. | +| **Container reports zero tools but startup succeeded** | `FoundryToolboxService.StartAsync` caches the `tools/list` result at startup. If a connection or RBAC grant changed after the container started, force a fresh container (re-deploy the agent version) — the cache won't pick up the change until then. | +| **HTTP 404 from a tool call** | Toolbox name mismatch (`TOOLBOX_NAME` vs the name in the portal), or the toolbox was deleted. | +| **Server logs a warning "Neither FOUNDRY_PROJECT_ENDPOINT nor AZURE_AI_PROJECT_ENDPOINT is set; toolbox support is disabled"** | Local dev without the env var set. The agent will load with zero tools and respond as if it has none. Set `AZURE_AI_PROJECT_ENDPOINT` (local-dev fallback) or `FOUNDRY_PROJECT_ENDPOINT` to your project endpoint. | +| **Tools appear but model never invokes them** | `instructions:` in `Program.cs` may not surface what each tool is for. Tighten the `allowed_tools` lists and rephrase prompts to mention the upstream service by name. | + +## Region and model compatibility + +Foundry Toolboxes have region constraints; some tool types are limited to specific models. This sample defaults to `gpt-4o`, which works in all supported regions. For the full matrix, see the [Foundry tools compatibility matrix](https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/tools/toolbox#region-and-model-compatibility). + +## Anti-pattern note for path #3 + +Inline `authorization` on a toolbox tool entry stores credentials **inside the toolbox definition**. There is no rotation, no per-user scoping, no secret-store integration. Use it only for: + +- Public MCP servers that ignore the bearer (the `gitmcp.io` case demonstrated here). +- Local development against a test MCP server with a throwaway token. + +For everything else use `project_connection_id` and let the platform inject credentials. diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.manifest.yaml b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.manifest.yaml new file mode 100644 index 00000000000..77336ea78f1 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.manifest.yaml @@ -0,0 +1,48 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/microsoft/AgentSchema/refs/heads/main/schemas/v1.0/AgentManifest.yaml +name: hosted-toolbox-auth-paths +displayName: "Hosted Toolbox - Authentication Paths" + +description: > + A hosted agent demonstrating three MCP-tool authentication paths in a single + Foundry Toolbox: API key via project connection, Microsoft Entra agent + identity, and inline Authorization + (anti-pattern). The toolbox itself is + provisioned out of band; see this sample's README for the portal walkthrough. + +metadata: + tags: + - AI Agent Hosting + - Azure AI AgentServer + - Responses Protocol + - Agent Framework + - Foundry Toolbox + - Authentication + - MCP + +template: + name: hosted-toolbox-auth-paths + kind: hosted + protocols: + - protocol: responses + version: 1.0.0 + resources: + cpu: "0.25" + memory: 0.5Gi + environment_variables: + - name: AZURE_AI_MODEL_DEPLOYMENT_NAME + value: "{{AZURE_AI_MODEL_DEPLOYMENT_NAME}}" + - name: TOOLBOX_NAME + value: "{{TOOLBOX_NAME}}" +parameters: + properties: + - name: TOOLBOX_NAME + type: string + default: "auth-paths-toolbox" + description: "Name of the Foundry Toolbox to load at runtime." +resources: + - kind: model + id: gpt-4o + name: AZURE_AI_MODEL_DEPLOYMENT_NAME + - kind: toolbox + name: "{{TOOLBOX_NAME}}" + tools: [] diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.yaml b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.yaml new file mode 100644 index 00000000000..87cca57bb79 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox-AuthPaths/agent.yaml @@ -0,0 +1,9 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/microsoft/AgentSchema/refs/heads/main/schemas/v1.0/ContainerAgent.yaml +kind: hosted +name: hosted-toolbox-auth-paths +protocols: + - protocol: responses + version: 1.0.0 +resources: + cpu: "0.25" + memory: 0.5Gi diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/Program.cs b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/Program.cs index 3f6c0a70a7f..b06b8f56888 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/Program.cs +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/Program.cs @@ -1,21 +1,27 @@ // Copyright (c) Microsoft. All rights reserved. -// Foundry Toolbox Agent - A hosted agent that uses Foundry Toolset MCP tools. +// Foundry Toolbox Agent - A hosted agent that uses Foundry Toolbox MCP tools. // -// Demonstrates how to register one or more Foundry toolsets so the agent can +// Demonstrates how to register one or more Foundry toolboxes so the agent can // call tools provided by the Foundry platform's managed MCP proxy. // // Required environment variables: -// AZURE_AI_PROJECT_ENDPOINT - Azure AI Foundry project endpoint +// AZURE_AI_PROJECT_ENDPOINT (local-dev) OR FOUNDRY_PROJECT_ENDPOINT (hosted runtime) +// - Azure AI Foundry project endpoint. The Foundry hosted +// runtime auto-injects FOUNDRY_PROJECT_ENDPOINT; locally +// set AZURE_AI_PROJECT_ENDPOINT. // AZURE_AI_MODEL_DEPLOYMENT_NAME - Model deployment name (default: gpt-4o) -// FOUNDRY_AGENT_TOOLSET_ENDPOINT - Foundry Toolsets proxy base URL -// (injected automatically by Foundry platform at runtime) // // Optional: -// FOUNDRY_TOOLBOX_NAME - Name of the toolset to load (default: my-toolset) -// FOUNDRY_AGENT_NAME - Client name reported to MCP server -// FOUNDRY_AGENT_VERSION - Client version reported to MCP server -// FOUNDRY_AGENT_TOOLSET_FEATURES - Feature flags sent to Foundry proxy via header +// TOOLBOX_NAME - Name of the toolbox to load (default: my-toolbox) +// FOUNDRY_AGENT_NAME - Client name reported to MCP server (auto-injected in hosted runtime) +// FOUNDRY_AGENT_VERSION - Client version reported to MCP server (auto-injected in hosted runtime) +// FOUNDRY_AGENT_TOOLSET_FEATURES - Additional Foundry-Features header flags (the mandatory +// Toolboxes=V1Preview flag is always sent; this env var +// appends additional flags if present). +// +// The Foundry.Hosting package builds the toolbox proxy URL from FOUNDRY_PROJECT_ENDPOINT +// per tools-integration-spec.md §2–§3. using Azure.AI.Projects; using Azure.Core; @@ -28,10 +34,13 @@ // Load .env file if present (for local development) Env.TraversePath().Load(); -string endpoint = Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT") - ?? throw new InvalidOperationException("AZURE_AI_PROJECT_ENDPOINT is not set."); +string endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") + ?? Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT") + ?? throw new InvalidOperationException( + "Neither FOUNDRY_PROJECT_ENDPOINT (platform-injected in hosted runtime) " + + "nor AZURE_AI_PROJECT_ENDPOINT (local-dev convention) is set."); string deploymentName = Environment.GetEnvironmentVariable("AZURE_AI_MODEL_DEPLOYMENT_NAME") ?? "gpt-4o"; -string toolboxName = Environment.GetEnvironmentVariable("FOUNDRY_TOOLBOX_NAME") ?? "my-toolset"; +string toolboxName = Environment.GetEnvironmentVariable("TOOLBOX_NAME") ?? "my-toolbox"; // Use a chained credential: try a temporary dev token first (for local Docker debugging), // then fall back to DefaultAzureCredential (for local dev via dotnet run / managed identity in production). @@ -45,12 +54,12 @@ .AsAIAgent( model: deploymentName, instructions: """ - You are a helpful assistant with access to tools provided by the Foundry Toolset. + You are a helpful assistant with access to tools provided by the Foundry Toolbox. Use the available tools to answer user questions. If a tool is not available for a request, let the user know clearly. """, name: Environment.GetEnvironmentVariable("AGENT_NAME") ?? "hosted-toolbox-agent", - description: "Hosted agent backed by Foundry Toolset MCP tools"); + description: "Hosted agent backed by Foundry Toolbox MCP tools"); // ── Build the host ──────────────────────────────────────────────────────────── @@ -61,8 +70,8 @@ Use the available tools to answer user questions. builder.Services.AddDevTemporaryLocalContributorSetup(); // Local Docker debugging only - must not be used in production. // Register Foundry Toolbox: connects to the MCP proxy at startup and makes tools available. -// The toolset name must match a toolset registered in your Foundry project. -// When FOUNDRY_AGENT_TOOLSET_ENDPOINT is absent (e.g., in local development without Foundry +// The toolbox name must match a toolbox registered in your Foundry project. +// When FOUNDRY_PROJECT_ENDPOINT is absent (e.g., in local development without Foundry // infrastructure), startup succeeds without error and no toolbox tools are loaded. builder.Services.AddFoundryToolboxes(toolboxName); diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/README.md b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/README.md new file mode 100644 index 00000000000..37d4dd7d281 --- /dev/null +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Toolbox/README.md @@ -0,0 +1,27 @@ +# Hosted-Toolbox + +A hosted Foundry agent that loads tools from a Foundry Toolbox via the AF Foundry hosting bridge. + +The agent declares one `FoundryAITool.CreateHostedMcpToolbox(name)` marker; `AddFoundryToolboxes(name)` registers a `FoundryToolboxService` that resolves the marker into the individual MCP tools the toolbox bundles, connecting to the Foundry Toolboxes MCP proxy at startup and discovering tools via `tools/list`. + +## Prerequisites + +- A Microsoft Foundry project with a Toolbox configured. +- Azure CLI logged in (`az login`). +- Set environment variables: + - `AZURE_AI_PROJECT_ENDPOINT` (local-dev) or `FOUNDRY_PROJECT_ENDPOINT` (auto-injected in hosted containers) + - `AZURE_AI_MODEL_DEPLOYMENT_NAME` (default `gpt-4o`) + - `TOOLBOX_NAME` (default `my-toolbox`) + +The `Foundry.Hosting` package builds the toolbox proxy URL from `FOUNDRY_PROJECT_ENDPOINT` as `{FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{TOOLBOX_NAME}/mcp?api-version=v1` per [`tools-integration-spec.md`](https://github.com/microsoft/AgentSchema/blob/main/specs/agents/hosted_agents/container-spec/docs/tools-integration-spec.md) §2–§3. + +## Run + +```powershell +dotnet run --tl:off +``` + +## Related samples + +- [`Hosted-Toolbox-AuthPaths/`](../Hosted-Toolbox-AuthPaths/) — extends this pattern with a three-tool toolbox demonstrating different MCP-tool authentication paths (key, Entra agent identity, inline `Authorization`), driven by the shared `Using-Samples/SimpleAgent/` REPL. +- [`Hosted-McpTools/`](../Hosted-McpTools/) — contrasts client-side `McpClient` vs server-side `HostedMcpServerTool` for non-toolbox MCP servers. diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxBearerTokenHandler.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxBearerTokenHandler.cs index d3452972762..23e28583229 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxBearerTokenHandler.cs +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxBearerTokenHandler.cs @@ -1,6 +1,7 @@ // Copyright (c) Microsoft. All rights reserved. using System; +using System.Diagnostics; using System.Net; using System.Net.Http; using System.Net.Http.Headers; @@ -13,24 +14,32 @@ namespace Microsoft.Agents.AI.Foundry.Hosting; /// /// An that: /// -/// Acquires a fresh Azure bearer token (scope: https://cognitiveservices.azure.com/.default) per request. -/// Injects the Foundry-Features header from FOUNDRY_AGENT_TOOLSET_FEATURES when non-empty. +/// Acquires a fresh Azure bearer token (scope: https://ai.azure.com/.default) per request, per tools-integration-spec.md §4. +/// Always injects the mandatory Foundry-Features: Toolboxes=V1Preview header per spec §2, merging any additional flags from FOUNDRY_AGENT_TOOLSET_FEATURES. +/// Propagates W3C trace context (traceparent, tracestate, baggage) from per spec §6.3. /// Retries on HTTP 429, 500, 502, and 503 with exponential back-off (max 3 attempts, per spec §7). /// /// internal sealed class FoundryToolboxBearerTokenHandler : DelegatingHandler { private const int MaxRetries = 3; + + // Per tools-integration-spec.md §4, the container authenticates to the Foundry Toolbox + // proxy with a bearer token whose audience is https://ai.azure.com. private static readonly TokenRequestContext s_tokenContext = - new(["https://cognitiveservices.azure.com/.default"]); + new(["https://ai.azure.com/.default"]); + + // Per tools-integration-spec.md §2, every proxy request MUST include the + // Foundry-Features: Toolboxes=V1Preview opt-in header while the service is in preview. + private const string MandatoryFeatureFlag = "Toolboxes=V1Preview"; private readonly TokenCredential _credential; - private readonly string? _featuresHeaderValue; + private readonly string? _additionalFeaturesHeaderValue; - internal FoundryToolboxBearerTokenHandler(TokenCredential credential, string? featuresHeaderValue) + internal FoundryToolboxBearerTokenHandler(TokenCredential credential, string? additionalFeaturesHeaderValue) { this._credential = credential; - this._featuresHeaderValue = featuresHeaderValue; + this._additionalFeaturesHeaderValue = additionalFeaturesHeaderValue; } protected override async Task SendAsync( @@ -43,10 +52,9 @@ protected override async Task SendAsync( request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token.Token); - if (!string.IsNullOrEmpty(this._featuresHeaderValue)) - { - request.Headers.TryAddWithoutValidation("Foundry-Features", this._featuresHeaderValue); - } + request.Headers.TryAddWithoutValidation("Foundry-Features", BuildFeaturesHeaderValue(this._additionalFeaturesHeaderValue)); + + PropagateTraceContext(request); // MaxRetries is the total number of attempts (not additional retries after the first). for (int attempt = 0; attempt < MaxRetries; attempt++) @@ -82,6 +90,75 @@ await Task.Delay(TimeSpan.FromSeconds(Math.Pow(2, attempt)), cancellationToken) throw new InvalidOperationException("Retry loop completed without returning a response."); } + // Returns "Toolboxes=V1Preview" when no override is set, or + // "Toolboxes=V1Preview," when an override is set and doesn't already include it. + internal static string BuildFeaturesHeaderValue(string? additional) + { + if (string.IsNullOrWhiteSpace(additional)) + { + return MandatoryFeatureFlag; + } + + // Avoid duplicating the mandatory flag if the override happens to already include it + // (case-insensitive, ignore surrounding whitespace). + foreach (var part in additional!.Split(',')) + { + if (string.Equals(part.Trim(), MandatoryFeatureFlag, StringComparison.OrdinalIgnoreCase)) + { + return additional; + } + } + + return $"{MandatoryFeatureFlag},{additional}"; + } + + // Per tools-integration-spec.md §6.3, propagate W3C trace context onto outbound requests. + // Skip headers already set on the message (callers / inner handlers may override). + private static void PropagateTraceContext(HttpRequestMessage request) + { + var activity = Activity.Current; + if (activity is null) + { + return; + } + + if (!request.Headers.Contains("traceparent")) + { + var traceparent = activity.Id; + if (!string.IsNullOrEmpty(traceparent)) + { + request.Headers.TryAddWithoutValidation("traceparent", traceparent); + } + } + + var traceState = activity.TraceStateString; + if (!string.IsNullOrEmpty(traceState) && !request.Headers.Contains("tracestate")) + { + request.Headers.TryAddWithoutValidation("tracestate", traceState); + } + + // Baggage is a comma-separated list of key=value pairs per the W3C Baggage spec. + if (!request.Headers.Contains("baggage")) + { + string? baggageHeader = null; + foreach (var pair in activity.Baggage) + { + if (pair.Value is null) + { + continue; + } + + var entry = $"{Uri.EscapeDataString(pair.Key)}={Uri.EscapeDataString(pair.Value)}"; + baggageHeader = baggageHeader is null ? entry : $"{baggageHeader},{entry}"; + } + + if (baggageHeader is not null) + { + request.Headers.TryAddWithoutValidation("baggage", baggageHeader); + } + } + } + private static async Task CloneRequestAsync( HttpRequestMessage original, CancellationToken cancellationToken) diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxHealthCheck.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxHealthCheck.cs new file mode 100644 index 00000000000..e4e297d63b2 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxHealthCheck.cs @@ -0,0 +1,66 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Diagnostics.HealthChecks; +using Microsoft.Shared.DiagnosticIds; + +namespace Microsoft.Agents.AI.Foundry.Hosting; + +/// +/// Adapts to the AspNetCore +/// HealthChecks pipeline so the GET /readiness probe (mapped by +/// ) reflects whether +/// pre-registered toolbox connections are usable. Registered automatically by +/// +/// and its overloads. +/// +[Experimental(DiagnosticIds.Experiments.AgentsAIExperiments)] +internal sealed class FoundryToolboxHealthCheck : IHealthCheck +{ + private readonly FoundryToolboxService _toolboxService; + + public FoundryToolboxHealthCheck(FoundryToolboxService toolboxService) + { + ArgumentNullException.ThrowIfNull(toolboxService); + this._toolboxService = toolboxService; + } + + public Task CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default) + { + switch (this._toolboxService.StartupStatus) + { + case FoundryToolboxStartupStatus.Healthy: + return Task.FromResult(HealthCheckResult.Healthy( + description: $"Foundry toolbox: {this._toolboxService.Tools.Count} tool(s) available.")); + + case FoundryToolboxStartupStatus.NoEndpoint: + return Task.FromResult(HealthCheckResult.Healthy( + description: "Foundry toolbox: neither FOUNDRY_PROJECT_ENDPOINT nor AZURE_AI_PROJECT_ENDPOINT is set; toolbox support disabled (local dev).")); + + case FoundryToolboxStartupStatus.Pending: + return Task.FromResult(new HealthCheckResult( + status: context.Registration.FailureStatus, + description: "Foundry toolbox: startup has not completed yet.")); + + case FoundryToolboxStartupStatus.Unhealthy: + var data = new Dictionary(StringComparer.Ordinal) + { + ["failedToolboxes"] = this._toolboxService.FailedToolboxNames, + }; + return Task.FromResult(new HealthCheckResult( + status: context.Registration.FailureStatus, + description: $"Foundry toolbox: {this._toolboxService.FailedToolboxNames.Count} pre-registered toolbox(es) failed to open at startup.", + data: data)); + + default: + return Task.FromResult(new HealthCheckResult( + status: context.Registration.FailureStatus, + description: $"Foundry toolbox: unknown startup status '{this._toolboxService.StartupStatus}'.")); + } + } +} diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxOptions.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxOptions.cs index 78430f40bf0..de3ccbf2ade 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxOptions.cs +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxOptions.cs @@ -16,14 +16,15 @@ public sealed class FoundryToolboxOptions /// Gets the list of toolbox names to connect to at startup. /// Each name corresponds to a toolbox registered in the Foundry project. /// The platform proxy URL is constructed as: - /// {FOUNDRY_AGENT_TOOLSET_ENDPOINT}/{toolboxName}/mcp?api-version={ApiVersion} + /// {FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{toolboxName}/mcp?api-version={ApiVersion} + /// per tools-integration-spec.md §2–§3. /// public IList ToolboxNames { get; } = []; /// - /// Gets or sets the Toolsets API version to use when constructing proxy URLs. + /// Gets or sets the Toolboxes API version to use when constructing proxy URLs. /// - public string ApiVersion { get; set; } = "2025-05-01-preview"; + public string ApiVersion { get; set; } = "v1"; /// /// Gets or sets a value indicating whether per-request toolbox markers (referenced via @@ -36,7 +37,9 @@ public sealed class FoundryToolboxOptions public bool StrictMode { get; set; } = true; /// - /// For testing only: overrides FOUNDRY_AGENT_TOOLSET_ENDPOINT. + /// For testing only: overrides the toolbox proxy base URL (skipping the + /// FOUNDRY_PROJECT_ENDPOINT-derived default). When set, the proxy URL + /// becomes {EndpointOverride}/toolboxes/{toolboxName}/mcp?api-version={ApiVersion}. /// Not part of the public API. /// internal string? EndpointOverride { get; set; } diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxService.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxService.cs index 7a8bc71e022..44b3d123b8e 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxService.cs +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxService.cs @@ -24,7 +24,13 @@ namespace Microsoft.Agents.AI.Foundry.Hosting; /// /// /// -/// When FOUNDRY_AGENT_TOOLSET_ENDPOINT is absent the service starts without error and +/// The toolbox proxy base URL is derived from the platform-injected +/// FOUNDRY_PROJECT_ENDPOINT environment variable per tools-integration-spec.md +/// §2–§3. The per-toolbox proxy URL is constructed as +/// {FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{toolboxName}/mcp?api-version={ApiVersion}. +/// +/// +/// When FOUNDRY_PROJECT_ENDPOINT is absent the service starts without error and /// no tools are registered, keeping the container healthy per spec §2. /// /// @@ -56,6 +62,24 @@ public sealed class FoundryToolboxService : IHostedService, IAsyncDisposable /// public IReadOnlyList Tools { get; private set; } = []; + /// + /// Gets the startup status of the service. Reflects the outcome of pre-registered + /// toolbox connections opened in ; lazy-opens triggered by + /// per-request markers do not change this value. + /// + /// + /// Consumed by to gate the + /// GET /readiness probe so the Foundry hosted runtime does not start routing + /// traffic to a container whose pre-registered toolbox failed to open at startup. + /// + public FoundryToolboxStartupStatus StartupStatus { get; private set; } = FoundryToolboxStartupStatus.Pending; + + /// + /// Gets the names of pre-registered toolboxes that failed to open during + /// . Empty when startup was successful or has not run yet. + /// + public IReadOnlyList FailedToolboxNames { get; private set; } = []; + /// /// Initializes a new instance of . /// @@ -75,16 +99,24 @@ public FoundryToolboxService( /// public async Task StartAsync(CancellationToken cancellationToken) { - this._resolvedEndpoint = this._options.EndpointOverride - ?? Environment.GetEnvironmentVariable("FOUNDRY_AGENT_TOOLSET_ENDPOINT"); - - if (string.IsNullOrEmpty(this._resolvedEndpoint)) + // Per tools-integration-spec.md §2-§3, the container derives the toolbox proxy base + // URL from the platform-injected FOUNDRY_PROJECT_ENDPOINT. The EndpointOverride + // option exists for tests; AZURE_AI_PROJECT_ENDPOINT is honored as a local-dev + // fallback to mirror the convention used by AF-repo samples. + var projectEndpoint = this._options.EndpointOverride + ?? Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") + ?? Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT"); + + if (string.IsNullOrEmpty(projectEndpoint)) { - this._logger.LogInformation("FOUNDRY_AGENT_TOOLSET_ENDPOINT is not set; toolbox support is disabled."); + this._logger.LogWarning( + "Neither FOUNDRY_PROJECT_ENDPOINT nor AZURE_AI_PROJECT_ENDPOINT is set; toolbox support is disabled."); this.Tools = []; + this.StartupStatus = FoundryToolboxStartupStatus.NoEndpoint; return; } + this._resolvedEndpoint = projectEndpoint.TrimEnd('/'); this._featuresHeader = Environment.GetEnvironmentVariable("FOUNDRY_AGENT_TOOLSET_FEATURES"); this._agentName = Environment.GetEnvironmentVariable("FOUNDRY_AGENT_NAME") ?? "hosted-agent"; this._agentVersion = Environment.GetEnvironmentVariable("FOUNDRY_AGENT_VERSION") ?? "1.0.0"; @@ -93,10 +125,12 @@ public async Task StartAsync(CancellationToken cancellationToken) { this._logger.LogInformation("No pre-registered toolbox names configured."); this.Tools = []; + this.StartupStatus = FoundryToolboxStartupStatus.Healthy; return; } var allTools = new List(); + var failed = new List(); var seen = new HashSet(StringComparer.OrdinalIgnoreCase); foreach (var toolboxName in this._options.ToolboxNames) @@ -121,10 +155,16 @@ public async Task StartAsync(CancellationToken cancellationToken) "Failed to connect to toolbox '{ToolboxName}'. Tools from this toolbox will not be available.", toolboxName); } + + failed.Add(toolboxName); } } this.Tools = allTools; + this.FailedToolboxNames = failed; + this.StartupStatus = failed.Count == 0 + ? FoundryToolboxStartupStatus.Healthy + : FoundryToolboxStartupStatus.Unhealthy; } /// @@ -165,7 +205,7 @@ public async ValueTask> GetToolboxToolsAsync( if (string.IsNullOrEmpty(this._resolvedEndpoint)) { throw new InvalidOperationException( - $"Cannot resolve toolbox '{toolboxName}': FOUNDRY_AGENT_TOOLSET_ENDPOINT is not set."); + $"Cannot resolve toolbox '{toolboxName}': FOUNDRY_PROJECT_ENDPOINT is not set."); } await this._lazyOpenLock.WaitAsync(cancellationToken).ConfigureAwait(false); @@ -192,7 +232,7 @@ private async Task OpenToolboxAsync( string? version, CancellationToken cancellationToken) { - var proxyUrl = $"{this._resolvedEndpoint!.TrimEnd('/')}/{toolboxName}/mcp?api-version={this._options.ApiVersion}"; + var proxyUrl = $"{this._resolvedEndpoint!}/toolboxes/{toolboxName}/mcp?api-version={this._options.ApiVersion}"; if (this._logger.IsEnabled(LogLevel.Information)) { diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxStartupStatus.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxStartupStatus.cs new file mode 100644 index 00000000000..821287192d8 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/FoundryToolboxStartupStatus.cs @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System.Diagnostics.CodeAnalysis; +using Microsoft.Shared.DiagnosticIds; + +namespace Microsoft.Agents.AI.Foundry.Hosting; + +/// +/// Outcome of startup. Drives the +/// foundry-toolbox health-check that gates the GET /readiness probe so the +/// Foundry hosted runtime does not start routing traffic before pre-registered toolbox +/// connections are confirmed open (per container-image-spec.md §3.1). +/// +[Experimental(DiagnosticIds.Experiments.AgentsAIExperiments)] +public enum FoundryToolboxStartupStatus +{ + /// + /// has not run yet. The health-check + /// reports Unhealthy in this state so the platform waits for startup to + /// complete before the first invocation. + /// + Pending = 0, + + /// + /// Startup completed and either every pre-registered toolbox opened successfully or + /// no pre-registered toolboxes were configured. The health-check reports + /// Healthy. + /// + Healthy = 1, + + /// + /// One or more pre-registered toolboxes failed to open during startup (including the + /// partial case where some opened and some did not). The health-check reports + /// Unhealthy and exposes the failed names in the HealthCheckResult.Data + /// dictionary so operators can diagnose the failure without parsing log output. + /// + Unhealthy = 2, + + /// + /// Neither the FOUNDRY_PROJECT_ENDPOINT nor the AZURE_AI_PROJECT_ENDPOINT + /// environment variable is set. This is normal for local dotnet run flows and the + /// health-check reports Healthy so the container is still routable; toolbox tools + /// will simply not be available. + /// + NoEndpoint = 3, +} diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/Microsoft.Agents.AI.Foundry.Hosting.csproj b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/Microsoft.Agents.AI.Foundry.Hosting.csproj index 71d9af8f71c..ec348b2167c 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/Microsoft.Agents.AI.Foundry.Hosting.csproj +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/Microsoft.Agents.AI.Foundry.Hosting.csproj @@ -13,7 +13,7 @@ true true true - $(NoWarn);OPENAI001;MEAI001;NU1903 + $(NoWarn);OPENAI001;MEAI001;MAAI001;NU1903 false diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/ServiceCollectionExtensions.cs b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/ServiceCollectionExtensions.cs index a0f53b342e3..bd61b9f4eb8 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/ServiceCollectionExtensions.cs +++ b/dotnet/src/Microsoft.Agents.AI.Foundry.Hosting/ServiceCollectionExtensions.cs @@ -7,10 +7,12 @@ using Azure.AI.AgentServer.Responses; using Azure.Core; using Azure.Identity; +using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Routing; using Microsoft.Extensions.AI; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using Microsoft.Extensions.Diagnostics.HealthChecks; using Microsoft.Shared.DiagnosticIds; namespace Microsoft.Agents.AI.Foundry.Hosting; @@ -49,6 +51,7 @@ public static IServiceCollection AddFoundryResponses(this IServiceCollection ser { ArgumentNullException.ThrowIfNull(services); services.AddResponsesServer(); + services.AddHealthChecks(); services.TryAddSingleton(_ => FileSystemAgentSessionStore.CreateDefault()); services.TryAddSingleton(); return services; @@ -84,6 +87,7 @@ public static IServiceCollection AddFoundryResponses(this IServiceCollection ser ArgumentNullException.ThrowIfNull(agent); services.AddResponsesServer(); + services.AddHealthChecks(); agentSessionStore ??= FileSystemAgentSessionStore.CreateDefault(); if (!string.IsNullOrWhiteSpace(agent.Name)) @@ -109,10 +113,10 @@ public static IServiceCollection AddFoundryResponses(this IServiceCollection ser /// /// Each string in is a toolbox name registered in the Foundry /// project. The proxy URL per toolbox is constructed as: - /// {FOUNDRY_AGENT_TOOLSET_ENDPOINT}/{toolboxName}/mcp?api-version=2025-05-01-preview + /// {FOUNDRY_PROJECT_ENDPOINT}/toolboxes/{toolboxName}/mcp?api-version=v1 /// /// - /// When FOUNDRY_AGENT_TOOLSET_ENDPOINT is absent, startup succeeds without error and + /// When FOUNDRY_PROJECT_ENDPOINT is absent, startup succeeds without error and /// no tools are loaded (the container remains healthy per spec §2). /// /// @@ -167,12 +171,61 @@ public static IServiceCollection AddFoundryToolboxes( // multiple times will not invoke StartAsync twice on the same singleton. services.AddHostedService(sp => sp.GetRequiredService()); + // Register the toolbox health check on the same /readiness pipeline that + // MapFoundryResponses maps. This gates the Foundry hosted runtime's readiness + // probe (per container-image-spec.md §3.1) on the outcome of the pre-registered + // toolbox connections opened in FoundryToolboxService.StartAsync. + // AddCheck(name, ...) does NOT dedupe by name, so guard against duplicate + // registration when AddFoundryToolboxes is called multiple times. + const string HealthCheckName = "foundry-toolbox"; + services.AddHealthChecks(); + services.Configure(opts => + { + foreach (var existing in opts.Registrations) + { + if (string.Equals(existing.Name, HealthCheckName, StringComparison.Ordinal)) + { + return; + } + } + + opts.Registrations.Add(new HealthCheckRegistration( + name: HealthCheckName, + factory: sp => ActivatorUtilities.CreateInstance(sp), + failureStatus: HealthStatus.Unhealthy, + tags: ["foundry", "toolbox", "readiness"])); + }); + return services; } /// /// Maps the Responses API routes for the agent-framework handler to the endpoint routing pipeline. /// + /// + /// + /// Also maps the Foundry-required GET /readiness health probe to + /// + /// when no /readiness route is already registered. This makes the package + /// spec-compliant in the Foundry hosted runtime (which probes /readiness + /// before accepting any invocation per container-image-spec.md §2; without + /// it every request fails with HTTP 424 session_not_ready) regardless of the + /// host spine the developer chose: + /// + /// + /// Tier 1/2 (AgentHost.CreateBuilder) — the Core SDK + /// already maps /readiness. The duplicate-route guard below skips + /// re-mapping it. + /// Tier 3 (WebApplication.CreateBuilder + + /// AddFoundryResponses + MapFoundryResponses) — the Core SDK + /// does NOT map it. This call covers the gap automatically. + /// + /// + /// Developers can still opt out by registering their own /readiness route + /// before calling MapFoundryResponses; the existing route is detected and + /// preserved. + /// + /// /// The endpoint route builder. /// Optional route prefix (e.g., "/openai/v1"). Default: empty (routes at /responses). /// The endpoint route builder for chaining. @@ -180,9 +233,37 @@ public static IEndpointRouteBuilder MapFoundryResponses(this IEndpointRouteBuild { ArgumentNullException.ThrowIfNull(endpoints); endpoints.MapResponsesServer(prefix); + MapReadinessIfMissing(endpoints); return endpoints; } + /// + /// Maps GET /readiness to the AspNetCore HealthChecks pipeline only when no + /// route already serves that path. The duplicate guard scans + /// entries by route pattern, which catches both the + /// SDK-mapped MapHealthChecks("/readiness") path used by + /// AgentHostBuilder and any user-registered app.MapGet("/readiness", ...) + /// route. Idempotent across multiple MapFoundryResponses invocations. + /// + private static void MapReadinessIfMissing(IEndpointRouteBuilder endpoints) + { + const string ReadinessPath = "/readiness"; + + foreach (var dataSource in endpoints.DataSources) + { + foreach (var endpoint in dataSource.Endpoints) + { + if (endpoint is RouteEndpoint route && + string.Equals(route.RoutePattern.RawText, ReadinessPath, StringComparison.OrdinalIgnoreCase)) + { + return; + } + } + } + + endpoints.MapHealthChecks(ReadinessPath); + } + /// /// The ActivitySource name for the Responses hosting pipeline. /// diff --git a/dotnet/tests/Foundry.Hosting.IntegrationTests.TestContainer/Program.cs b/dotnet/tests/Foundry.Hosting.IntegrationTests.TestContainer/Program.cs index babfdfcddf7..29d57d369a1 100644 --- a/dotnet/tests/Foundry.Hosting.IntegrationTests.TestContainer/Program.cs +++ b/dotnet/tests/Foundry.Hosting.IntegrationTests.TestContainer/Program.cs @@ -54,7 +54,6 @@ var app = builder.Build(); app.MapFoundryResponses(); -app.MapGet("/readiness", () => Results.Ok()); app.Run(); static AIAgent CreateHappyPathAgent(AIProjectClient client, string deployment) => diff --git a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryProjectEndpointEnvFixture.cs b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryProjectEndpointEnvFixture.cs new file mode 100644 index 00000000000..667bc46b593 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryProjectEndpointEnvFixture.cs @@ -0,0 +1,14 @@ +// Copyright (c) Microsoft. All rights reserved. + +namespace Microsoft.Agents.AI.Foundry.Hosting.UnitTests; + +/// +/// xUnit collection that serializes tests mutating the FOUNDRY_PROJECT_ENDPOINT +/// process environment variable. Without this, parallel test execution causes flaky +/// races between tests that set / unset the variable. +/// +[CollectionDefinition(Name, DisableParallelization = true)] +public sealed class FoundryProjectEndpointEnvFixture +{ + public const string Name = "FoundryProjectEndpointEnv"; +} diff --git a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxBearerTokenHandlerTests.cs b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxBearerTokenHandlerTests.cs index e619445481a..eafa3c497a2 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxBearerTokenHandlerTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxBearerTokenHandlerTests.cs @@ -1,6 +1,9 @@ // Copyright (c) Microsoft. All rights reserved. using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; using System.Net; using System.Net.Http; using System.Threading; @@ -51,28 +54,144 @@ public async Task SendAsync_InjectsBearerTokenAsync() } [Fact] - public async Task SendAsync_InjectsFoundryFeaturesHeaderAsync() + public async Task SendAsync_UsesAiAzureComScopeAsync() { - var (handler, _) = CreateHandlerPair(featuresHeader: "feature1,feature2"); + // Arrange + var capturedContexts = new List(); + var credential = new Mock(); + credential + .Setup(c => c.GetTokenAsync(It.IsAny(), It.IsAny())) + .Callback((ctx, _) => capturedContexts.Add(ctx)) + .ReturnsAsync(new AccessToken(FakeToken, DateTimeOffset.MaxValue)); + var (handler, _) = CreateHandlerPair(credential); using var invoker = new HttpMessageInvoker(handler); + // Act using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); - using var response = await invoker.SendAsync(request, CancellationToken.None); + await invoker.SendAsync(request, CancellationToken.None); - Assert.True(request.Headers.TryGetValues("Foundry-Features", out var values)); - Assert.Contains("feature1,feature2", values); + // Assert: spec §4 mandates the https://ai.azure.com audience. + Assert.Single(capturedContexts); + Assert.Contains("https://ai.azure.com/.default", capturedContexts[0].Scopes); } [Fact] - public async Task SendAsync_OmitsFeaturesHeaderWhenNullAsync() + public async Task SendAsync_AlwaysInjectsMandatoryFoundryFeaturesHeaderAsync() { + // Arrange var (handler, _) = CreateHandlerPair(featuresHeader: null); using var invoker = new HttpMessageInvoker(handler); + // Act using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); using var response = await invoker.SendAsync(request, CancellationToken.None); - Assert.False(request.Headers.Contains("Foundry-Features")); + // Assert: spec §2 requires Foundry-Features: Toolboxes=V1Preview on every request. + Assert.True(request.Headers.TryGetValues("Foundry-Features", out var values)); + Assert.Equal("Toolboxes=V1Preview", values.Single()); + } + + [Fact] + public async Task SendAsync_MergesMandatoryAndOverrideFeaturesAsync() + { + var (handler, _) = CreateHandlerPair(featuresHeader: "feature1,feature2"); + using var invoker = new HttpMessageInvoker(handler); + + using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); + await invoker.SendAsync(request, CancellationToken.None); + + Assert.True(request.Headers.TryGetValues("Foundry-Features", out var values)); + var header = values.Single(); + Assert.Contains("Toolboxes=V1Preview", header, StringComparison.Ordinal); + Assert.Contains("feature1", header, StringComparison.Ordinal); + Assert.Contains("feature2", header, StringComparison.Ordinal); + } + + [Fact] + public async Task SendAsync_DoesNotDuplicateMandatoryFlagAsync() + { + // Override already contains the mandatory flag — must not be duplicated in the merged value. + var (handler, _) = CreateHandlerPair(featuresHeader: "Toolboxes=V1Preview"); + using var invoker = new HttpMessageInvoker(handler); + + using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); + await invoker.SendAsync(request, CancellationToken.None); + + Assert.True(request.Headers.TryGetValues("Foundry-Features", out var values)); + var header = values.Single(); + var count = 0; + var idx = 0; + while ((idx = header.IndexOf("Toolboxes=V1Preview", idx, StringComparison.OrdinalIgnoreCase)) >= 0) + { + count++; + idx += "Toolboxes=V1Preview".Length; + } + Assert.Equal(1, count); + } + + [Fact] + public async Task SendAsync_PropagatesTraceContextFromActivityAsync() + { + // Arrange: activate an Activity so Activity.Current is populated. + using var listener = new ActivityListener + { + ShouldListenTo = _ => true, + Sample = (ref ActivityCreationOptions _) => ActivitySamplingResult.AllData, + }; + ActivitySource.AddActivityListener(listener); + using var source = new ActivitySource("test-source"); + using var activity = source.StartActivity("test-op")!; + Assert.NotNull(activity); + activity.TraceStateString = "vendor=value"; + activity.AddBaggage("user", "alice"); + + var (handler, _) = CreateHandlerPair(); + using var invoker = new HttpMessageInvoker(handler); + + // Act + using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); + await invoker.SendAsync(request, CancellationToken.None); + + // Assert: spec §6.3 requires traceparent/tracestate/baggage propagation. + Assert.True(request.Headers.TryGetValues("traceparent", out var tpValues)); + Assert.Contains(activity.TraceId.ToString(), tpValues.Single(), StringComparison.Ordinal); + + Assert.True(request.Headers.TryGetValues("tracestate", out var tsValues)); + Assert.Equal("vendor=value", tsValues.Single()); + + Assert.True(request.Headers.TryGetValues("baggage", out var bgValues)); + Assert.Contains("user=alice", bgValues.Single(), StringComparison.Ordinal); + } + + [Fact] + public async Task SendAsync_DoesNotOverrideExistingTraceparentAsync() + { + // Caller pre-set traceparent on the message; must not be duplicated or replaced. + using var listener = new ActivityListener + { + ShouldListenTo = _ => true, + Sample = (ref ActivityCreationOptions _) => ActivitySamplingResult.AllData, + }; + ActivitySource.AddActivityListener(listener); + using var source = new ActivitySource("test-source"); + using var activity = source.StartActivity("test-op")!; + Assert.NotNull(activity); + + var (handler, _) = CreateHandlerPair(); + using var invoker = new HttpMessageInvoker(handler); + + const string PresetTraceparent = "00-00000000000000000000000000000001-0000000000000001-01"; + using var request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/api"); + request.Headers.TryAddWithoutValidation("traceparent", PresetTraceparent); + + // Act + await invoker.SendAsync(request, CancellationToken.None); + + // Assert + Assert.True(request.Headers.TryGetValues("traceparent", out var values)); + var list = values.ToList(); + Assert.Single(list); + Assert.Equal(PresetTraceparent, list[0]); } [Theory] diff --git a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxHealthCheckTests.cs b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxHealthCheckTests.cs new file mode 100644 index 00000000000..7ea5d14e1c7 --- /dev/null +++ b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxHealthCheckTests.cs @@ -0,0 +1,135 @@ +// Copyright (c) Microsoft. All rights reserved. + +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Azure.Core; +using Microsoft.Extensions.Diagnostics.HealthChecks; +using Microsoft.Extensions.Options; +using Moq; + +namespace Microsoft.Agents.AI.Foundry.Hosting.UnitTests; + +[Collection(FoundryProjectEndpointEnvFixture.Name)] +public class FoundryToolboxHealthCheckTests +{ + [Fact] + public async Task CheckHealthAsync_PendingStatus_ReturnsConfiguredFailureAsync() + { + // Arrange: a fresh FoundryToolboxService whose StartAsync has never run reports + // Pending. The health check must surface that as the registration's failure + // status so the platform waits before sending traffic. + var service = CreateServiceWithoutStarting(); + var check = new FoundryToolboxHealthCheck(service); + var context = NewContext(failureStatus: HealthStatus.Unhealthy); + + // Act + var result = await check.CheckHealthAsync(context); + + // Assert + Assert.Equal(HealthStatus.Unhealthy, result.Status); + Assert.Contains("startup has not completed", result.Description, StringComparison.OrdinalIgnoreCase); + } + + [Fact] + public async Task CheckHealthAsync_NoEndpointStatus_ReturnsHealthyAsync() + { + // Arrange: no FOUNDRY_PROJECT_ENDPOINT / AZURE_AI_PROJECT_ENDPOINT is normal local-dev. + // The container must still pass readiness because the rest of the agent is functional. + var savedFoundry = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT"); + var savedAzure = Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT"); + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", null); + Environment.SetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT", null); + try + { + var service = CreateServiceWithoutStarting(toolbox: "any"); + await service.StartAsync(CancellationToken.None); + + var check = new FoundryToolboxHealthCheck(service); + var context = NewContext(failureStatus: HealthStatus.Unhealthy); + + // Act + var result = await check.CheckHealthAsync(context); + + // Assert + Assert.Equal(HealthStatus.Healthy, result.Status); + Assert.Equal(FoundryToolboxStartupStatus.NoEndpoint, service.StartupStatus); + } + finally + { + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", savedFoundry); + Environment.SetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT", savedAzure); + } + } + + [Fact] + public async Task CheckHealthAsync_UnhealthyStatus_ReturnsConfiguredFailureWithFailedNamesAsync() + { + // Arrange: pre-registered toolbox at an unreachable endpoint forces StartAsync to + // record the failure. The health-check must reflect Unhealthy and expose the + // failed toolbox names in the result data so operators can diagnose without log + // diving. + var options = new FoundryToolboxOptions + { + EndpointOverride = "http://127.0.0.1:1/unreachable", + }; + options.ToolboxNames.Add("broken-toolbox"); + var service = new FoundryToolboxService(Options.Create(options), Mock.Of()); + await service.StartAsync(CancellationToken.None); + + var check = new FoundryToolboxHealthCheck(service); + var context = NewContext(failureStatus: HealthStatus.Unhealthy); + + // Act + var result = await check.CheckHealthAsync(context); + + // Assert + Assert.Equal(HealthStatus.Unhealthy, result.Status); + Assert.True(result.Data.ContainsKey("failedToolboxes")); + var failed = Assert.IsAssignableFrom>(result.Data["failedToolboxes"]); + Assert.Equal("broken-toolbox", Assert.Single(failed)); + } + + [Fact] + public async Task CheckHealthAsync_HealthyStatus_ReturnsHealthyAsync() + { + // Arrange: an endpoint set but no pre-registered toolboxes is the legitimate + // lazy-only setup. StartAsync reports Healthy and the check must agree. + var options = new FoundryToolboxOptions + { + EndpointOverride = "http://127.0.0.1:1/unused", + }; + var service = new FoundryToolboxService(Options.Create(options), Mock.Of()); + await service.StartAsync(CancellationToken.None); + + var check = new FoundryToolboxHealthCheck(service); + var context = NewContext(failureStatus: HealthStatus.Unhealthy); + + // Act + var result = await check.CheckHealthAsync(context); + + // Assert + Assert.Equal(HealthStatus.Healthy, result.Status); + } + + private static FoundryToolboxService CreateServiceWithoutStarting(string? toolbox = null) + { + var options = new FoundryToolboxOptions(); + if (toolbox is not null) + { + options.ToolboxNames.Add(toolbox); + } + return new FoundryToolboxService(Options.Create(options), Mock.Of()); + } + + private static HealthCheckContext NewContext(HealthStatus failureStatus) => + new() + { + Registration = new HealthCheckRegistration( + name: "foundry-toolbox", + instance: Mock.Of(), + failureStatus: failureStatus, + tags: null), + }; +} diff --git a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxServiceTests.cs b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxServiceTests.cs index cdcdf5ee8e3..d8a56adcd6f 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxServiceTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/FoundryToolboxServiceTests.cs @@ -9,6 +9,7 @@ namespace Microsoft.Agents.AI.Foundry.Hosting.UnitTests; +[Collection(FoundryProjectEndpointEnvFixture.Name)] public class FoundryToolboxServiceTests { [Fact] @@ -39,15 +40,17 @@ public async Task GetToolboxToolsAsync_NonStrictMode_RequiresEndpointAsync() var ex = await Assert.ThrowsAsync( async () => await service.GetToolboxToolsAsync("missing", version: null, CancellationToken.None)); - Assert.Contains("FOUNDRY_AGENT_TOOLSET_ENDPOINT", ex.Message, StringComparison.Ordinal); + Assert.Contains("FOUNDRY_PROJECT_ENDPOINT", ex.Message, StringComparison.Ordinal); } [Fact] public async Task StartAsync_WithoutEndpoint_LeavesToolsEmptyAsync() { - // Ensure env var is not set (tests may run in any CI environment) - var saved = Environment.GetEnvironmentVariable("FOUNDRY_AGENT_TOOLSET_ENDPOINT"); - Environment.SetEnvironmentVariable("FOUNDRY_AGENT_TOOLSET_ENDPOINT", null); + // Ensure neither env var is set (tests may run in any CI environment) + var savedFoundry = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT"); + var savedAzure = Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT"); + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", null); + Environment.SetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT", null); try { var options = new FoundryToolboxOptions(); @@ -59,10 +62,157 @@ public async Task StartAsync_WithoutEndpoint_LeavesToolsEmptyAsync() await service.StartAsync(CancellationToken.None); Assert.Empty(service.Tools); + Assert.Equal(FoundryToolboxStartupStatus.NoEndpoint, service.StartupStatus); + Assert.Empty(service.FailedToolboxNames); } finally { - Environment.SetEnvironmentVariable("FOUNDRY_AGENT_TOOLSET_ENDPOINT", saved); + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", savedFoundry); + Environment.SetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT", savedAzure); } } + + [Fact] + public async Task StartAsync_AttemptsOpenForPreRegisteredToolboxFromProjectEndpointAsync() + { + // Arrange: point the service at an unreachable host and confirm StartAsync + // attempts to open the pre-registered toolbox (verified via FailedToolboxNames + // recording the attempted name and StartupStatus reflecting the failure). + var saved = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT"); + Environment.SetEnvironmentVariable( + "FOUNDRY_PROJECT_ENDPOINT", + "https://example.invalid/api/projects/proj"); + try + { + var options = new FoundryToolboxOptions { ApiVersion = "v1" }; + options.ToolboxNames.Add("my-toolbox"); + var service = new FoundryToolboxService( + Options.Create(options), + Mock.Of()); + + // Act: StartAsync attempts to connect to the invalid endpoint and fails. + // The failure path records FailedToolboxNames; the value confirms the resolver ran. + await service.StartAsync(CancellationToken.None); + + // Assert: open failed, status reflects that (resolver was reached), and + // the failed name matches — i.e. we attempted the right toolbox. + Assert.Equal(FoundryToolboxStartupStatus.Unhealthy, service.StartupStatus); + Assert.Single(service.FailedToolboxNames); + Assert.Equal("my-toolbox", service.FailedToolboxNames[0]); + } + finally + { + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", saved); + } + } + + [Fact] + public async Task StartAsync_TrailingSlashOnProjectEndpoint_AttemptsOpenAsync() + { + var saved = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT"); + Environment.SetEnvironmentVariable( + "FOUNDRY_PROJECT_ENDPOINT", + "https://example.invalid/api/projects/proj/"); + try + { + var options = new FoundryToolboxOptions(); + options.ToolboxNames.Add("tb"); + var service = new FoundryToolboxService( + Options.Create(options), + Mock.Of()); + + await service.StartAsync(CancellationToken.None); + + // Arrange/Act: when trailing-slash normalization works the open still fails + // (host is unreachable), but FailedToolboxNames records the attempted name — + // proof that the resolver did not throw on the slash and the URL was built. + Assert.Equal(FoundryToolboxStartupStatus.Unhealthy, service.StartupStatus); + Assert.Single(service.FailedToolboxNames); + Assert.Equal("tb", service.FailedToolboxNames[0]); + } + finally + { + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", saved); + } + } + + [Fact] + public async Task StartAsync_EndpointOverrideWinsOverEnvAsync() + { + var saved = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT"); + Environment.SetEnvironmentVariable( + "FOUNDRY_PROJECT_ENDPOINT", + "https://from-env.invalid/api/projects/proj"); + try + { + // EndpointOverride should take precedence over the env var. + var options = new FoundryToolboxOptions + { + EndpointOverride = "http://127.0.0.1:1/from-override", + }; + options.ToolboxNames.Add("tb"); + + var service = new FoundryToolboxService( + Options.Create(options), + Mock.Of()); + + await service.StartAsync(CancellationToken.None); + + // Override URL is unreachable; we expect Unhealthy (proving Start did try to open + // a toolbox, i.e. did not fall into the NoEndpoint branch). + Assert.Equal(FoundryToolboxStartupStatus.Unhealthy, service.StartupStatus); + Assert.Single(service.FailedToolboxNames); + } + finally + { + Environment.SetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT", saved); + } + } + + [Fact] + public async Task StartAsync_WithEndpointButFailingToolbox_RecordsFailureAndStaysReachableAsync() + { + // Arrange: a syntactically valid but unreachable endpoint forces OpenToolboxAsync + // to throw inside the catch-and-log path. The service must still complete StartAsync + // (so the host doesn't crash) and surface the failure via StartupStatus. + var options = new FoundryToolboxOptions + { + EndpointOverride = "http://127.0.0.1:1/unreachable", + }; + options.ToolboxNames.Add("broken-toolbox"); + + var service = new FoundryToolboxService( + Options.Create(options), + Mock.Of()); + + // Act + await service.StartAsync(CancellationToken.None); + + // Assert + Assert.Equal(FoundryToolboxStartupStatus.Unhealthy, service.StartupStatus); + Assert.Single(service.FailedToolboxNames); + Assert.Equal("broken-toolbox", service.FailedToolboxNames[0]); + Assert.Empty(service.Tools); + } + + [Fact] + public async Task StartAsync_WithEndpointAndNoToolboxes_ReportsHealthyAsync() + { + // No pre-registered toolboxes is a legitimate "lazy-only" setup. Health-check + // should report Healthy so the readiness probe passes. + var options = new FoundryToolboxOptions + { + EndpointOverride = "http://127.0.0.1:1/unused", + }; + + var service = new FoundryToolboxService( + Options.Create(options), + Mock.Of()); + + await service.StartAsync(CancellationToken.None); + + Assert.Equal(FoundryToolboxStartupStatus.Healthy, service.StartupStatus); + Assert.Empty(service.FailedToolboxNames); + Assert.Empty(service.Tools); + } } diff --git a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/ServiceCollectionExtensionsTests.cs b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/ServiceCollectionExtensionsTests.cs index bcab777af07..f49c669f66d 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/ServiceCollectionExtensionsTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Foundry.Hosting.UnitTests/ServiceCollectionExtensionsTests.cs @@ -2,9 +2,15 @@ using System; using System.Linq; +using System.Net; +using System.Threading.Tasks; using Azure.AI.AgentServer.Responses; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.TestHost; using Microsoft.Extensions.AI; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; using Moq; using OpenAI.Responses; @@ -135,4 +141,73 @@ public void MeaiOpenAIResponsesChatClient_TypeFullName_ReflectionGuard() Assert.True(typeof(IChatClient).IsAssignableFrom(meaiType!), $"Expected MEAI {meaiType!.FullName} to implement IChatClient."); } + + // ── /readiness auto-mapping (Foundry container-image-spec §2) ──────────────── + + [Fact] + public async Task MapFoundryResponses_MapsReadinessEndpoint_WhenTier3HostHasNotMappedItAsync() + { + // Arrange: Tier 3 host (WebApplication.CreateBuilder, no AgentHost) — Core SDK does + // NOT map /readiness in this case, so MapFoundryResponses must cover the gap. + using var host = await BuildTestHostAsync(static app => app.MapFoundryResponses()); + + // Act + var response = await host.GetTestClient().GetAsync(new Uri("/readiness", UriKind.Relative)); + + // Assert + Assert.Equal(HttpStatusCode.OK, response.StatusCode); + } + + [Fact] + public async Task MapFoundryResponses_DoesNotDuplicateReadiness_WhenAlreadyMappedAsync() + { + // Arrange: developer already mapped /readiness with a custom body. The auto-map + // must detect the existing route and leave it untouched (no AmbiguousMatchException + // at runtime, no override of the developer's response). + const string CustomBody = "ready-from-developer"; + using var host = await BuildTestHostAsync(static app => + { + app.MapGet("/readiness", () => Results.Text("ready-from-developer")); + app.MapFoundryResponses(); + }); + + // Act + var response = await host.GetTestClient().GetAsync(new Uri("/readiness", UriKind.Relative)); + + // Assert + Assert.Equal(HttpStatusCode.OK, response.StatusCode); + var body = await response.Content.ReadAsStringAsync(); + Assert.Equal(CustomBody, body); + } + + [Fact] + public async Task MapFoundryResponses_CalledTwice_StillOnlyMapsReadinessOnceAsync() + { + // Arrange: defensive coverage for callers that map the responses pipeline twice + // (e.g. once at the root and once under "openai/v1" in the existing AF samples). + using var host = await BuildTestHostAsync(static app => + { + app.MapFoundryResponses(); + app.MapFoundryResponses("openai/v1"); + }); + + // Act + Assert: a single GET /readiness must succeed without ambiguous-match throw. + var response = await host.GetTestClient().GetAsync(new Uri("/readiness", UriKind.Relative)); + Assert.Equal(HttpStatusCode.OK, response.StatusCode); + } + + private static async Task BuildTestHostAsync(Action configure) + { + var builder = WebApplication.CreateBuilder(); + builder.WebHost.UseTestServer(); + + var mockAgent = new Mock(); + mockAgent.SetupGet(a => a.Name).Returns("test-agent"); + builder.Services.AddFoundryResponses(mockAgent.Object); + + var app = builder.Build(); + configure(app); + await app.StartAsync(); + return app; + } } From 60cc5ee4e452c9797e10d69572b56754291c88b8 Mon Sep 17 00:00:00 2001 From: Tamir Dresher Date: Wed, 10 Jun 2026 21:07:18 +0300 Subject: [PATCH 24/25] .NET: Make GitHub.Copilot.SDK build targets reach transitive consumers (#6455) (#6457) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * .NET: Make GitHub.Copilot.SDK build targets reach transitive consumers (#6455) Microsoft.Agents.AI.GitHub.Copilot now ships a buildTransitive/ bridge so consumers who only reference this package (the normal use case) get the GitHub.Copilot.SDK's CLI binary-download MSBuild targets executed at build time. Without this, the SDK shipped its targets under build/ which NuGet only auto-imports for projects with a direct PackageReference to the SDK, so consumers of the adapter package got only the managed .dll, no copilot.exe in their output, and a runtime InvalidOperationException on the first RunAsync. The bridge consists of two files under buildTransitive/: * Microsoft.Agents.AI.GitHub.Copilot.props is generated at this package's pack time and pins the SDK version (from PackageVersion items in Directory.Packages.props) into _MicrosoftAgentsAICopilotSdkVersion. * Microsoft.Agents.AI.GitHub.Copilot.targets is static and imports the SDK's own build/GitHub.Copilot.SDK.targets from the NuGet cache using the pinned version. The version-pin condition no-ops gracefully if the resolved SDK differs from what was baked in (e.g. consumer overrides the SDK version directly), so this is purely additive. Verified by packing locally, restoring from a flat local feed, and building a transitive-only consumer (PackageReference to MAF only, no direct SDK ref). copilot.exe lands at bin/{cfg}/{tfm}/runtimes/{rid}/ native/copilot.exe as expected, matching the path the SDK's runtime CopilotClient looks at. Fixes #6455 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address Copilot review feedback (#6457) - buildTransitive/.targets: compute the full SDK targets path with a single Path.Combine call into one property (_MicrosoftAgentsAICopilotSdkTargetsPath), used in both Project= and Exists() — no more split between Path.Combine for the directory and inline / separator for the file name. - Split the version-defaulting Condition between the two files: the generated .props now just bakes the packaged SDK version into a dedicated property (_MicrosoftAgentsAICopilotSdkPackagedVersion), and the static .targets file is the single place that defaults _MicrosoftAgentsAICopilotSdkVersion to it. Removes the need for any MSBuild escape gymnastics in the pack-time string construction, and keeps the consumer override path the same. - _GenerateBuildTransitiveProps now hangs off public BeforeTargets (Build, Pack) in addition to _GetPackageFiles, so the file is generated even without a full pack, and we're not solely dependent on an underscore-prefixed internal target. The items live in a top-level ItemGroup so they are collected at evaluation time instead of being added from inside the Target. End-to-end retested with a transitive-only consumer (PackageReference to MAF only, no direct GitHub.Copilot.SDK ref): copilot.exe lands at bin/Debug/net10.0/runtimes/win-x64/native/copilot.exe (141.8 MB) as before. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Tamir Dresher Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../Microsoft.Agents.AI.GitHub.Copilot.csproj | 48 +++++++++++++++++++ .../buildTransitive/.gitignore | 3 ++ ...Microsoft.Agents.AI.GitHub.Copilot.targets | 34 +++++++++++++ 3 files changed, 85 insertions(+) create mode 100644 dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/.gitignore create mode 100644 dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/Microsoft.Agents.AI.GitHub.Copilot.targets diff --git a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj index 4aaaa7d9544..dad0b31f59d 100644 --- a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj +++ b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/Microsoft.Agents.AI.GitHub.Copilot.csproj @@ -32,4 +32,52 @@ Provides Microsoft Agent Framework support for GitHub Copilot SDK. + + + + + + + + + <_CopilotSdkPackageVersion Include="@(PackageVersion)" Condition="'%(Identity)' == 'GitHub.Copilot.SDK'" /> + + + <_CopilotSdkResolvedVersion>@(_CopilotSdkPackageVersion->'%(Version)') + + + + <_BuildTransitivePropsContent> + + + <_MicrosoftAgentsAICopilotSdkPackagedVersion>$(_CopilotSdkResolvedVersion) + +]]> + + + + + diff --git a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/.gitignore b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/.gitignore new file mode 100644 index 00000000000..87bc8ad53ed --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/.gitignore @@ -0,0 +1,3 @@ +# Auto-generated at pack time by _GenerateBuildTransitiveProps in the csproj. +Microsoft.Agents.AI.GitHub.Copilot.props + diff --git a/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/Microsoft.Agents.AI.GitHub.Copilot.targets b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/Microsoft.Agents.AI.GitHub.Copilot.targets new file mode 100644 index 00000000000..04a777550f8 --- /dev/null +++ b/dotnet/src/Microsoft.Agents.AI.GitHub.Copilot/buildTransitive/Microsoft.Agents.AI.GitHub.Copilot.targets @@ -0,0 +1,34 @@ + + + + <_MicrosoftAgentsAICopilotSdkVersion Condition="'$(_MicrosoftAgentsAICopilotSdkVersion)' == ''">$(_MicrosoftAgentsAICopilotSdkPackagedVersion) + <_MicrosoftAgentsAICopilotSdkTargetsPath Condition="'$(_MicrosoftAgentsAICopilotSdkVersion)' != ''">$([System.IO.Path]::Combine('$(NuGetPackageRoot)', 'github.copilot.sdk', '$(_MicrosoftAgentsAICopilotSdkVersion)', 'build', 'GitHub.Copilot.SDK.targets')) + + + + From 3753d938f5c3f2d67f62cb00086e7a6d34681268 Mon Sep 17 00:00:00 2001 From: Peter Ibekwe <109177538+peibekwe@users.noreply.github.com> Date: Wed, 10 Jun 2026 11:08:32 -0700 Subject: [PATCH 25/25] .NET: Bug fixes for declarative workflows (#6427) * declarative workflow approval flow fix * Update mcp handler cache construction * fix method argument. * Update dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/ObjectModel/InvokeFunctionToolExecutor.cs Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fix identation --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../DefaultMcpToolHandler.cs | 78 +++- .../ObjectModel/InvokeFunctionToolExecutor.cs | 68 +++- .../DefaultMcpToolHandlerTests.cs | 183 +++++++++ .../InvokeFunctionToolExecutorTest.cs | 355 ++++++++++++++++++ 4 files changed, 663 insertions(+), 21 deletions(-) diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative.Mcp/DefaultMcpToolHandler.cs b/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative.Mcp/DefaultMcpToolHandler.cs index c133b38bbdd..8b0a410d8bd 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative.Mcp/DefaultMcpToolHandler.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative.Mcp/DefaultMcpToolHandler.cs @@ -2,10 +2,10 @@ using System; using System.Collections.Generic; -using System.Globalization; using System.IO; using System.Linq; using System.Net.Http; +using System.Security.Cryptography; using System.Text; using System.Text.Json; using System.Threading; @@ -39,7 +39,7 @@ public sealed class DefaultMcpToolHandler : IMcpToolHandler, IAsyncDisposable private static readonly JsonWriterOptions s_toolListJsonWriterOptions = new() { Indented = true }; private readonly Func>? _httpClientProvider; - private readonly Dictionary _clients = []; + private readonly Dictionary<(string Url, string Label, string Connection, string HeadersHash), McpClient> _clients = []; private readonly Dictionary _ownedHttpClients = []; private readonly SemaphoreSlim _clientLock = new(1, 1); @@ -66,16 +66,15 @@ public async Task InvokeToolAsync( string? connectionName, CancellationToken cancellationToken = default) { - // TODO: Handle connectionName and server label appropriately when Hosted scenario supports them. For now, ignore if (IsListToolsToolName(toolName)) { ThrowIfListToolsArgumentsSpecified(arguments); - McpClient listToolsClient = await this.GetOrCreateClientAsync(serverUrl, serverLabel, headers, cancellationToken).ConfigureAwait(false); + McpClient listToolsClient = await this.GetOrCreateClientAsync(serverUrl, serverLabel, headers, connectionName, cancellationToken).ConfigureAwait(false); IList tools = await listToolsClient.ListToolsAsync(cancellationToken: cancellationToken).ConfigureAwait(false); return CreateListToolsResultContent(tools.Select(tool => tool.ProtocolTool)); } - McpClient client = await this.GetOrCreateClientAsync(serverUrl, serverLabel, headers, cancellationToken).ConfigureAwait(false); + McpClient client = await this.GetOrCreateClientAsync(serverUrl, serverLabel, headers, connectionName, cancellationToken).ConfigureAwait(false); McpServerToolResultContent resultContent = new(Guid.NewGuid().ToString()); @@ -145,10 +144,11 @@ private async Task GetOrCreateClientAsync( string serverUrl, string? serverLabel, IDictionary? headers, + string? connectionName, CancellationToken cancellationToken) { - string normalizedUrl = serverUrl.Trim().ToUpperInvariant(); - string clientCacheKey = $"{normalizedUrl}|{ComputeHeadersHash(headers)}"; + string trimmedUrl = serverUrl.Trim(); + var clientCacheKey = BuildCacheKey(trimmedUrl, serverLabel, connectionName, headers); await this._clientLock.WaitAsync(cancellationToken).ConfigureAwait(false); try @@ -158,7 +158,7 @@ private async Task GetOrCreateClientAsync( return existingClient; } - McpClient newClient = await this.CreateClientAsync(serverUrl, serverLabel, headers, normalizedUrl, cancellationToken).ConfigureAwait(false); + McpClient newClient = await this.CreateClientAsync(trimmedUrl, serverLabel, headers, trimmedUrl, cancellationToken).ConfigureAwait(false); this._clients[clientCacheKey] = newClient; return newClient; } @@ -168,6 +168,19 @@ private async Task GetOrCreateClientAsync( } } + /// + /// Builds the per-client cache key as a 4-tuple of + /// (trimmed serverUrl, serverLabel, connectionName, headers hash). All four components + /// participate so that callers using different labels/connections/headers receive + /// distinct instances even when targeting the same URL. + /// + internal static (string Url, string Label, string Connection, string HeadersHash) BuildCacheKey( + string trimmedUrl, + string? serverLabel, + string? connectionName, + IDictionary? headers) => + (trimmedUrl, serverLabel ?? string.Empty, connectionName ?? string.Empty, ComputeHeadersHash(headers)); + private async Task CreateClientAsync( string serverUrl, string? serverLabel, @@ -185,7 +198,12 @@ private async Task CreateClientAsync( if (httpClient is null && !this._ownedHttpClients.TryGetValue(httpClientCacheKey, out httpClient)) { - httpClient = new HttpClient(); + // Disable cookies so handler-level state (cookie jar) cannot cross the cache-key + // isolation boundary established by GetOrCreateClientAsync. The actual MCP auth + // travels via AdditionalHeaders (set per-transport below), not session cookies. + // CheckCertificateRevocationList satisfies CA5399 since we're explicitly constructing the handler. + HttpClientHandler handler = new() { UseCookies = false, CheckCertificateRevocationList = true }; + httpClient = new HttpClient(handler); this._ownedHttpClients[httpClientCacheKey] = httpClient; } @@ -202,26 +220,50 @@ private async Task CreateClientAsync( return await McpClient.CreateAsync(transport, cancellationToken: cancellationToken).ConfigureAwait(false); } - private static string ComputeHeadersHash(IDictionary? headers) + /// + /// Computes a deterministic, order-independent hash of the header set. + /// Header names are lower-cased for case-insensitive matching (RFC 7230 §3.2). + /// Header values remain case-sensitive (RFC 7235 — credentials are case-sensitive). + /// +#pragma warning disable CA1308 // RFC 7230 §3.2 requires lower-cased header names for case-insensitive comparison; CA1308's uppercase preference does not apply here + internal static string ComputeHeadersHash(IDictionary? headers) { if (headers is null || headers.Count == 0) { return string.Empty; } - // Build a deterministic, sorted representation of the headers - // Within a single process lifetime, the hashcodes are consistent. - // This will ensure that the same set of headers always produces the same hash, regardless of order. - SortedDictionary sorted = new(headers.ToDictionary(h => h.Key.ToUpperInvariant(), h => h.Value.ToUpperInvariant())); - int hashCode = 17; + // Sort by lower-cased key for deterministic ordering, preserving value case. + SortedDictionary sorted = new(StringComparer.Ordinal); + foreach (KeyValuePair header in headers) + { + sorted[header.Key.ToLowerInvariant()] = header.Value; + } + + StringBuilder payload = new(); foreach (KeyValuePair kvp in sorted) { - hashCode = (hashCode * 31) + StringComparer.OrdinalIgnoreCase.GetHashCode(kvp.Key); - hashCode = (hashCode * 31) + StringComparer.OrdinalIgnoreCase.GetHashCode(kvp.Value); + payload.Append(kvp.Key).Append(':').Append(kvp.Value).Append('\n'); + } + + byte[] inputBytes = Encoding.UTF8.GetBytes(payload.ToString()); +#if NET5_0_OR_GREATER + byte[] hashBytes = SHA256.HashData(inputBytes); +#else + using SHA256 sha256 = SHA256.Create(); + byte[] hashBytes = sha256.ComputeHash(inputBytes); +#endif + + // Convert to hex string (compatible with net472/netstandard2.0) + StringBuilder hex = new(hashBytes.Length * 2); + foreach (byte b in hashBytes) + { + hex.Append(b.ToString("X2", System.Globalization.CultureInfo.InvariantCulture)); } - return hashCode.ToString(CultureInfo.InvariantCulture); + return hex.ToString(); } +#pragma warning restore CA1308 private static void ThrowIfListToolsArgumentsSpecified(IDictionary? arguments) { diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/ObjectModel/InvokeFunctionToolExecutor.cs b/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/ObjectModel/InvokeFunctionToolExecutor.cs index 6ca429c648a..08d57a6b6e6 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/ObjectModel/InvokeFunctionToolExecutor.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/ObjectModel/InvokeFunctionToolExecutor.cs @@ -13,6 +13,7 @@ using Microsoft.Agents.AI.Workflows.Declarative.PowerFx; using Microsoft.Agents.ObjectModel; using Microsoft.Extensions.AI; +using Microsoft.Extensions.Logging; using Microsoft.Shared.Diagnostics; namespace Microsoft.Agents.AI.Workflows.Declarative.ObjectModel; @@ -27,6 +28,13 @@ internal sealed class InvokeFunctionToolExecutor( WorkflowFormulaState state) : DeclarativeActionExecutor(model, state) { + private const string ApprovalSnapshotStateKey = nameof(_approvalSnapshot); + + /// + /// Snapshot of evaluated parameters at approval-request time. + /// + private ApprovalSnapshot? _approvalSnapshot; + /// /// Step identifiers for the function tool invocation workflow. /// @@ -69,6 +77,10 @@ public static class Steps // If approval is required, add user input request content if (requireApproval) { + // Snapshot the evaluated parameters. + // If state mutates during the approval window, the approved values are used on resume. + this._approvalSnapshot = new ApprovalSnapshot(functionName, arguments); + requestMessage.Contents.Add(new ToolApprovalRequestContent(this.Id, functionCall)); } @@ -155,6 +167,31 @@ public async ValueTask CaptureResponseAsync( // Completes the action after processing the function result. await context.RaiseCompletionEventAsync(this.Model, cancellationToken).ConfigureAwait(false); + + // Clear the approval snapshot after the action completes so a subsequent + // execution of the same executor instance doesn't reuse stale data. + this._approvalSnapshot = null; + await context.QueueStateUpdateAsync(ApprovalSnapshotStateKey, null, null, cancellationToken).ConfigureAwait(false); + } + + /// + /// + /// Persists the approval snapshot to workflow state so it survives checkpoint/restore cycles. + /// + protected override async ValueTask OnCheckpointingAsync(IWorkflowContext context, CancellationToken cancellationToken = default) + { + await context.QueueStateUpdateAsync(ApprovalSnapshotStateKey, this._approvalSnapshot, null, cancellationToken).ConfigureAwait(false); + await base.OnCheckpointingAsync(context, cancellationToken).ConfigureAwait(false); + } + + /// + /// + /// Restores the approval snapshot from workflow state after a checkpoint restore. + /// + protected override async ValueTask OnCheckpointRestoredAsync(IWorkflowContext context, CancellationToken cancellationToken = default) + { + await base.OnCheckpointRestoredAsync(context, cancellationToken).ConfigureAwait(false); + this._approvalSnapshot = await context.ReadStateAsync(ApprovalSnapshotStateKey, null, cancellationToken).ConfigureAwait(false); } /// @@ -262,7 +299,24 @@ private string GetFunctionName() => private async ValueTask InvokeRegisteredFunctionAsync(CancellationToken cancellationToken) { - string functionName = this.GetFunctionName(); + string functionName; + Dictionary? arguments; + + if (this._approvalSnapshot is { } snapshot) + { + // Use the snapshot captured at approval-request time so we invoke exactly what + // the user approved, even if Power Fx state has mutated during the approval window. + functionName = snapshot.FunctionName; + arguments = snapshot.Arguments; + } + else + { + // Fallback for checkpoints created before approval snapshots were introduced. + this.Logger.LogWarning("Approval snapshot missing for '{ActionId}'; falling back to expression re-evaluation.", this.Id); + functionName = this.GetFunctionName(); + arguments = this.GetArguments(); + } + AIFunction? function = agentProvider.Functions?.FirstOrDefault( f => string.Equals(f.Name, functionName, StringComparison.Ordinal)); @@ -275,8 +329,7 @@ private string GetFunctionName() => }; } - Dictionary? arguments = this.GetArguments(); - AIFunctionArguments? functionArguments = arguments is null ? null : new AIFunctionArguments(arguments); + AIFunctionArguments? functionArguments = arguments is null ? null : new AIFunctionArguments(arguments.NormalizePortableValues()); object? result; try @@ -341,4 +394,13 @@ private bool GetAutoSendValue() return result; } + + /// + /// Stores the evaluated parameters at approval-request time so that + /// uses the values the user reviewed, + /// even if mutates during the approval window. + /// + internal sealed record ApprovalSnapshot( + string FunctionName, + Dictionary? Arguments); } diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.Mcp.UnitTests/DefaultMcpToolHandlerTests.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.Mcp.UnitTests/DefaultMcpToolHandlerTests.cs index 1327c3df48f..1470e4f0f56 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.Mcp.UnitTests/DefaultMcpToolHandlerTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.Mcp.UnitTests/DefaultMcpToolHandlerTests.cs @@ -321,6 +321,189 @@ await handler.InvokeToolAsync( #endregion + #region ComputeHeadersHash Tests + + [Fact] + public void ComputeHeadersHash_WithNullHeaders_ReturnsEmptyString() + { + // Act + string result = DefaultMcpToolHandler.ComputeHeadersHash(null); + + // Assert + result.Should().BeEmpty(); + } + + [Fact] + public void ComputeHeadersHash_WithEmptyHeaders_ReturnsEmptyString() + { + // Act + string result = DefaultMcpToolHandler.ComputeHeadersHash(new Dictionary()); + + // Assert + result.Should().BeEmpty(); + } + + [Fact] + public void ComputeHeadersHash_SameHeadersDifferentOrder_ReturnsSameHash() + { + // Arrange + Dictionary headers1 = new() + { + ["Authorization"] = "Bearer token123", + ["X-Custom"] = "value1" + }; + Dictionary headers2 = new() + { + ["X-Custom"] = "value1", + ["Authorization"] = "Bearer token123" + }; + + // Act + string hash1 = DefaultMcpToolHandler.ComputeHeadersHash(headers1); + string hash2 = DefaultMcpToolHandler.ComputeHeadersHash(headers2); + + // Assert + hash1.Should().Be(hash2); + } + + [Fact] + public void ComputeHeadersHash_SameKeysDifferentCaseKeys_ReturnsSameHash() + { + // Arrange — RFC 7230: header names are case-insensitive + Dictionary headers1 = new() { ["Authorization"] = "Bearer token" }; + Dictionary headers2 = new() { ["authorization"] = "Bearer token" }; + + // Act + string hash1 = DefaultMcpToolHandler.ComputeHeadersHash(headers1); + string hash2 = DefaultMcpToolHandler.ComputeHeadersHash(headers2); + + // Assert + hash1.Should().Be(hash2); + } + + [Fact] + public void ComputeHeadersHash_SameKeysDifferentCaseValues_ReturnsDifferentHash() + { + // Arrange — RFC 7235: credentials are case-sensitive + Dictionary headers1 = new() { ["Authorization"] = "Bearer ABC" }; + Dictionary headers2 = new() { ["Authorization"] = "Bearer abc" }; + + // Act + string hash1 = DefaultMcpToolHandler.ComputeHeadersHash(headers1); + string hash2 = DefaultMcpToolHandler.ComputeHeadersHash(headers2); + + // Assert + hash1.Should().NotBe(hash2); + } + + [Fact] + public void ComputeHeadersHash_DifferentHeaders_ReturnsDifferentHash() + { + // Arrange + Dictionary headers1 = new() { ["Authorization"] = "Bearer token1" }; + Dictionary headers2 = new() { ["Authorization"] = "Bearer token2" }; + + // Act + string hash1 = DefaultMcpToolHandler.ComputeHeadersHash(headers1); + string hash2 = DefaultMcpToolHandler.ComputeHeadersHash(headers2); + + // Assert + hash1.Should().NotBe(hash2); + } + + #endregion + + #region Cache Key Discrimination Tests + + // These tests exercise BuildCacheKey directly because the integration path + // (InvokeToolAsync against a fake server) doesn't surface cache-hit behavior + // without standing up a real MCP server — McpClient.CreateAsync fails before + // _clients[key] = newClient runs, so nothing ever gets cached. + // Tuple equality on the returned 4-tuple verifies that the dimensions + // collectively discriminate cache entries. + + [Fact] + public void BuildCacheKey_SameInputs_ReturnsEqualKeys() + { + // Arrange + Dictionary headers = new() { ["Authorization"] = "Bearer token" }; + + // Act + var key1 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label", "conn", headers); + var key2 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label", "conn", headers); + + // Assert + key1.Should().Be(key2); + } + + [Fact] + public void BuildCacheKey_DifferentConnectionName_ReturnsDifferentKeys() + { + // Act + var key1 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label", "connection-a", null); + var key2 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label", "connection-b", null); + + // Assert + key1.Should().NotBe(key2); + key1.Connection.Should().Be("connection-a"); + key2.Connection.Should().Be("connection-b"); + } + + [Fact] + public void BuildCacheKey_DifferentServerLabel_ReturnsDifferentKeys() + { + // Act + var key1 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label-a", null, null); + var key2 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", "label-b", null, null); + + // Assert + key1.Should().NotBe(key2); + key1.Label.Should().Be("label-a"); + key2.Label.Should().Be("label-b"); + } + + [Fact] + public void BuildCacheKey_CaseSensitiveUrlPath_ReturnsDifferentKeys() + { + // Arrange — RFC 3986: URL path is case-sensitive + // Act + var key1 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/Tools", null, null, null); + var key2 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/tools", null, null, null); + + // Assert + key1.Should().NotBe(key2); + } + + [Fact] + public void BuildCacheKey_HeaderValuesCaseSensitive_ReturnsDifferentKeys() + { + // Arrange — RFC 7235: credentials are case-sensitive + Dictionary headers1 = new() { ["Authorization"] = "Bearer ABC" }; + Dictionary headers2 = new() { ["Authorization"] = "Bearer abc" }; + + // Act + var key1 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", null, null, headers1); + var key2 = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", null, null, headers2); + + // Assert — header value case must propagate into the cache key + key1.Should().NotBe(key2); + key1.HeadersHash.Should().NotBe(key2.HeadersHash); + } + + [Fact] + public void BuildCacheKey_NullLabelAndConnection_NormalizesToEmptyString() + { + // Act + var key = DefaultMcpToolHandler.BuildCacheKey("http://localhost/mcp", null, null, null); + + // Assert — verifies null-safety contract callers rely on + key.Label.Should().BeEmpty(); + key.Connection.Should().BeEmpty(); + key.HeadersHash.Should().BeEmpty(); + } + + #endregion + #region Reserved Tools/List Tests [Fact] diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.UnitTests/ObjectModel/InvokeFunctionToolExecutorTest.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.UnitTests/ObjectModel/InvokeFunctionToolExecutorTest.cs index b00339ea3b5..845f2a18718 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.UnitTests/ObjectModel/InvokeFunctionToolExecutorTest.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.UnitTests/ObjectModel/InvokeFunctionToolExecutorTest.cs @@ -1,11 +1,21 @@ // Copyright (c) Microsoft. All rights reserved. +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text.Json; +using System.Threading; using System.Threading.Tasks; using Microsoft.Agents.AI.Workflows.Declarative.Events; +using Microsoft.Agents.AI.Workflows.Declarative.Kit; using Microsoft.Agents.AI.Workflows.Declarative.ObjectModel; using Microsoft.Agents.AI.Workflows.Declarative.PowerFx; using Microsoft.Agents.ObjectModel; using Microsoft.Extensions.AI; +using Microsoft.PowerFx.Types; +using Moq; +using ApprovalSnapshot = Microsoft.Agents.AI.Workflows.Declarative.ObjectModel.InvokeFunctionToolExecutor.ApprovalSnapshot; namespace Microsoft.Agents.AI.Workflows.Declarative.UnitTests.ObjectModel; @@ -261,6 +271,323 @@ public async Task InvokeFunctionToolCaptureResponseWithMultipleFunctionResultsAs #endregion + #region Approval Snapshot Security Tests + + /// + /// Verifies that mutating the function-name variable after approval does not change + /// which function is actually invoked. The originally-approved name must be used. + /// + [Fact] + public async Task InvokeFunctionToolCaptureResponseUsesApprovedFunctionNameNotMutatedAsync() + { + // Arrange + const string ApprovedFunctionName = "safe_readonly_query"; + const string MutatedFunctionName = "dangerous_admin_tool"; + + this.State.Set("TargetFunction", FormulaValue.New(ApprovedFunctionName)); + this.State.InitializeSystem(); + this.State.Bind(); + + InvokeFunctionTool model = this.CreateModelWithVariableFunctionName( + displayName: nameof(InvokeFunctionToolCaptureResponseUsesApprovedFunctionNameNotMutatedAsync), + variableName: "TargetFunction"); + + string? capturedFunctionName = null; + TestFunctionAgentProvider testAgentProvider = new( + [ + AIFunctionFactory.Create(() => "safe-result", name: ApprovedFunctionName), + AIFunctionFactory.Create(() => "dangerous-result", name: MutatedFunctionName), + ], + onInvoke: name => capturedFunctionName = name); + InvokeFunctionToolExecutor action = new(model, testAgentProvider, this.State); + + // Act - trigger ExecuteAsync to store the approval snapshot + Mock mockContext = CreateMockWorkflowContext(); + await action.HandleAsync(new ActionExecutorResult(action.Id), mockContext.Object, CancellationToken.None); + + // Simulate parallel branch mutating state during the approval window + this.State.Set("TargetFunction", FormulaValue.New(MutatedFunctionName)); + this.State.Bind(); + + // User clicks approve (they saw "safe_readonly_query" in the approval UI) + ExternalInputResponse response = CreateApprovalResponse(action.Id, approved: true); + + // Resume after approval + await action.CaptureResponseAsync(mockContext.Object, response, CancellationToken.None); + + // Assert - the originally-approved function must be invoked, not the mutated one + Assert.NotNull(capturedFunctionName); + Assert.Equal(ApprovedFunctionName, capturedFunctionName); + } + + /// + /// Verifies that mutating an argument variable after approval does not change + /// the arguments actually passed to the invoked function. + /// + [Fact] + public async Task InvokeFunctionToolCaptureResponseUsesApprovedArgumentsNotMutatedAsync() + { + // Arrange + const string FunctionName = "process_query"; + const string ArgumentKey = "query"; + const string ApprovedQuery = "SELECT * FROM users LIMIT 10"; + const string MutatedQuery = "DROP TABLE users CASCADE; --"; + + this.State.Set("SqlQuery", FormulaValue.New(ApprovedQuery)); + this.State.InitializeSystem(); + this.State.Bind(); + + InvokeFunctionTool model = this.CreateModelWithVariableArgument( + displayName: nameof(InvokeFunctionToolCaptureResponseUsesApprovedArgumentsNotMutatedAsync), + functionName: FunctionName, + argumentKey: ArgumentKey, + variableName: "SqlQuery"); + + AIFunctionArguments? capturedArguments = null; + TestFunctionAgentProvider testAgentProvider = new( + [AIFunctionFactory.Create((string query) => $"executed:{query}", name: FunctionName)], + onInvokeArguments: args => capturedArguments = args); + InvokeFunctionToolExecutor action = new(model, testAgentProvider, this.State); + + // Act - trigger ExecuteAsync to store the approval snapshot + Mock mockContext = CreateMockWorkflowContext(); + await action.HandleAsync(new ActionExecutorResult(action.Id), mockContext.Object, CancellationToken.None); + + // Simulate parallel branch mutating state during the approval window + this.State.Set("SqlQuery", FormulaValue.New(MutatedQuery)); + this.State.Bind(); + + // User clicks approve + ExternalInputResponse response = CreateApprovalResponse(action.Id, approved: true); + + // Resume after approval + await action.CaptureResponseAsync(mockContext.Object, response, CancellationToken.None); + + // Assert - the originally-approved argument must be used, not the mutated one + Assert.NotNull(capturedArguments); + Assert.Equal(ApprovedQuery, capturedArguments[ArgumentKey]?.ToString()); + } + + /// + /// Verifies that the approval snapshot survives a checkpoint/restore cycle. + /// After restore, the originally-approved function must still be used even if state was mutated. + /// + [Fact] + public async Task InvokeFunctionToolCaptureResponseUsesSnapshotAfterCheckpointRestoreAsync() + { + // Arrange + const string ApprovedFunctionName = "safe_readonly_query"; + const string MutatedFunctionName = "dangerous_admin_tool"; + + this.State.Set("TargetFunction", FormulaValue.New(ApprovedFunctionName)); + this.State.InitializeSystem(); + this.State.Bind(); + + InvokeFunctionTool model = this.CreateModelWithVariableFunctionName( + displayName: nameof(InvokeFunctionToolCaptureResponseUsesSnapshotAfterCheckpointRestoreAsync), + variableName: "TargetFunction"); + + string? capturedFunctionName = null; + TestFunctionAgentProvider testAgentProvider = new( + [ + AIFunctionFactory.Create(() => "safe-result", name: ApprovedFunctionName), + AIFunctionFactory.Create(() => "dangerous-result", name: MutatedFunctionName), + ], + onInvoke: name => capturedFunctionName = name); + InvokeFunctionToolExecutor action = new(model, testAgentProvider, this.State); + + // Act - trigger ExecuteAsync to store the approval snapshot + Mock mockContext = CreateMockWorkflowContextWithStateStore(); + await action.HandleAsync(new ActionExecutorResult(action.Id), mockContext.Object, CancellationToken.None); + + // Simulate checkpoint: persist to state store + await InvokeProtectedMethodAsync(action, "OnCheckpointingAsync", mockContext.Object, CancellationToken.None); + + // Simulate restore on a "new" executor instance by clearing the in-memory field via reflection + // (In production, a new executor instance would be created with _approvalSnapshot == null) + typeof(InvokeFunctionToolExecutor) + .GetField("_approvalSnapshot", BindingFlags.NonPublic | BindingFlags.Instance)! + .SetValue(action, null); + + // Restore from state store + await InvokeProtectedMethodAsync(action, "OnCheckpointRestoredAsync", mockContext.Object, CancellationToken.None); + + // Mutate state after restore (simulating parallel branch) + this.State.Set("TargetFunction", FormulaValue.New(MutatedFunctionName)); + this.State.Bind(); + + // User clicks approve + ExternalInputResponse response = CreateApprovalResponse(action.Id, approved: true); + + // Resume after approval + await action.CaptureResponseAsync(mockContext.Object, response, CancellationToken.None); + + // Assert - the originally-approved function must be invoked, not the mutated one + Assert.NotNull(capturedFunctionName); + Assert.Equal(ApprovedFunctionName, capturedFunctionName); + } + + /// + /// Verifies that the approval snapshot is cleared after a completed approval cycle, + /// both in-memory and in the persisted state store. This prevents stale data from + /// influencing a subsequent execution of the same executor instance. + /// + [Fact] + public async Task InvokeFunctionToolCaptureResponseClearsSnapshotAfterCompletionAsync() + { + // Arrange + const string FunctionName = "any_function"; + + this.State.InitializeSystem(); + this.State.Bind(); + + InvokeFunctionTool model = this.CreateModel( + displayName: nameof(InvokeFunctionToolCaptureResponseClearsSnapshotAfterCompletionAsync), + functionName: FunctionName, + requireApproval: true); + + TestFunctionAgentProvider testAgentProvider = new( + [AIFunctionFactory.Create(() => "result", name: FunctionName)]); + InvokeFunctionToolExecutor action = new(model, testAgentProvider, this.State); + + // Act - run the full approval cycle + Dictionary stateStore = []; + Mock mockContext = CreateMockWorkflowContextWithStateStore(stateStore); + await action.HandleAsync(new ActionExecutorResult(action.Id), mockContext.Object, CancellationToken.None); + + // Sanity: snapshot was captured + FieldInfo snapshotField = typeof(InvokeFunctionToolExecutor) + .GetField("_approvalSnapshot", BindingFlags.NonPublic | BindingFlags.Instance)!; + Assert.NotNull(snapshotField.GetValue(action)); + + ExternalInputResponse response = CreateApprovalResponse(action.Id, approved: true); + await action.CaptureResponseAsync(mockContext.Object, response, CancellationToken.None); + + // Assert - both in-memory field and persisted state are cleared + Assert.Null(snapshotField.GetValue(action)); + Assert.True(stateStore.ContainsKey("_approvalSnapshot")); + Assert.Null(stateStore["_approvalSnapshot"]); + } + + private static ExternalInputResponse CreateApprovalResponse(string actionId, bool approved) + { + FunctionCallContent functionCall = new(callId: actionId, name: "ignored"); + ToolApprovalRequestContent approvalRequest = new(actionId, functionCall); + ToolApprovalResponseContent approvalResponse = approvalRequest.CreateResponse(approved); + return new ExternalInputResponse(new ChatMessage(ChatRole.User, [approvalResponse])); + } + + private static Mock CreateMockWorkflowContext() + { + Mock mockContext = new(); + mockContext.Setup(c => c.AddEventAsync(It.IsAny(), It.IsAny())) + .Returns(default(ValueTask)); + mockContext.Setup(c => c.QueueStateUpdateAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .Returns(default(ValueTask)); + mockContext.Setup(c => c.SendMessageAsync(It.IsAny(), It.IsAny(), It.IsAny())) + .Returns(default(ValueTask)); + return mockContext; + } + + /// + /// Creates a mock workflow context that actually stores state values (for checkpoint/restore tests). + /// Optionally accepts an externally-owned dictionary so callers can inspect the persisted state. + /// + private static Mock CreateMockWorkflowContextWithStateStore(Dictionary? stateStore = null) + { + stateStore ??= []; + Mock mockContext = new(); + mockContext.Setup(c => c.AddEventAsync(It.IsAny(), It.IsAny())) + .Returns(default(ValueTask)); + mockContext.Setup(c => c.QueueStateUpdateAsync(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny())) + .Callback((key, value, _, _) => stateStore[key] = value) + .Returns(default(ValueTask)); + mockContext.Setup(c => c.SendMessageAsync(It.IsAny(), It.IsAny(), It.IsAny())) + .Returns(default(ValueTask)); + mockContext.Setup(c => c.ReadStateAsync(It.IsAny(), It.IsAny(), It.IsAny())) + .Returns((key, _, _) => + new ValueTask(stateStore.TryGetValue(key, out object? val) ? val as ApprovalSnapshot : null)); + mockContext.Setup(c => c.ReadStateKeysAsync(It.IsAny(), It.IsAny())) + .ReturnsAsync(new HashSet()); + return mockContext; + } + + /// + /// Invokes a protected method on the executor via reflection (for testing checkpoint hooks). + /// + private static async ValueTask InvokeProtectedMethodAsync(InvokeFunctionToolExecutor action, string methodName, IWorkflowContext context, CancellationToken cancellationToken) + { + MethodInfo method = typeof(InvokeFunctionToolExecutor) + .GetMethod(methodName, BindingFlags.NonPublic | BindingFlags.Instance)!; + ValueTask result = (ValueTask)method.Invoke(action, [context, cancellationToken])!; + await result.ConfigureAwait(false); + } + + /// + /// Minimal concrete that exposes an injected + /// registry and records which function got invoked. + /// Used by the framework-invoke approval branch (InvokeRegisteredFunctionAsync). + /// + private sealed class TestFunctionAgentProvider : ResponseAgentProvider + { + private readonly Action? _onInvoke; + private readonly Action? _onInvokeArguments; + + public TestFunctionAgentProvider( + IEnumerable functions, + Action? onInvoke = null, + Action? onInvokeArguments = null) + { + this._onInvoke = onInvoke; + this._onInvokeArguments = onInvokeArguments; + this.Functions = functions.Select(f => (AIFunction)new RecordingAIFunction(f, this)).ToList(); + } + + internal void RecordInvocation(string name, AIFunctionArguments? arguments) + { + this._onInvoke?.Invoke(name); + if (arguments is not null) + { + this._onInvokeArguments?.Invoke(arguments); + } + } + + public override Task CreateConversationAsync(CancellationToken cancellationToken = default) => + throw new NotSupportedException(); + + public override Task CreateMessageAsync(string conversationId, ChatMessage conversationMessage, CancellationToken cancellationToken = default) => + throw new NotSupportedException(); + + public override Task GetMessageAsync(string conversationId, string messageId, CancellationToken cancellationToken = default) => + throw new NotSupportedException(); + + public override IAsyncEnumerable InvokeAgentAsync( + string agentId, string? agentVersion, string? conversationId, + IEnumerable? messages, IDictionary? inputArguments, + CancellationToken cancellationToken = default) => + throw new NotSupportedException(); + + public override IAsyncEnumerable GetMessagesAsync( + string conversationId, int? limit = null, string? after = null, string? before = null, + bool newestFirst = false, CancellationToken cancellationToken = default) => + throw new NotSupportedException(); + + private sealed class RecordingAIFunction(AIFunction inner, TestFunctionAgentProvider owner) : AIFunction + { + public override string Name => inner.Name; + public override string Description => inner.Description; + public override JsonElement JsonSchema => inner.JsonSchema; + + protected override ValueTask InvokeCoreAsync(AIFunctionArguments arguments, CancellationToken cancellationToken) + { + owner.RecordInvocation(inner.Name, arguments); + return inner.InvokeAsync(arguments, cancellationToken); + } + } + } + + #endregion + #region Helper Methods private async Task ExecuteTestAsync(InvokeFunctionTool model) @@ -318,5 +645,33 @@ private InvokeFunctionTool CreateModel( return AssignParent(builder); } + private InvokeFunctionTool CreateModelWithVariableFunctionName(string displayName, string variableName) + { + InvokeFunctionTool.Builder builder = new() + { + Id = this.CreateActionId(), + DisplayName = this.FormatDisplayName(displayName), + FunctionName = new StringExpression.Builder( + StringExpression.Variable(PropertyPath.TopicVariable(variableName))), + RequireApproval = new BoolExpression.Builder(BoolExpression.Literal(true)), + }; + return AssignParent(builder); + } + + private InvokeFunctionTool CreateModelWithVariableArgument( + string displayName, string functionName, string argumentKey, string variableName) + { + InvokeFunctionTool.Builder builder = new() + { + Id = this.CreateActionId(), + DisplayName = this.FormatDisplayName(displayName), + FunctionName = new StringExpression.Builder(StringExpression.Literal(functionName)), + RequireApproval = new BoolExpression.Builder(BoolExpression.Literal(true)), + }; + builder.Arguments.Add(argumentKey, + ValueExpression.Variable(PropertyPath.TopicVariable(variableName))); + return AssignParent(builder); + } + #endregion }