.NET: Add tenant-scoped task store isolation for A2A hosting - #17
Closed
SergeyMenshykh wants to merge 1 commit into
Closed
.NET: Add tenant-scoped task store isolation for A2A hosting#17SergeyMenshykh wants to merge 1 commit into
SergeyMenshykh wants to merge 1 commit into
Conversation
Wrap ITaskStore with IsolationKeyScopedTaskStore when a SessionIsolationKeyProvider is registered, mirroring the existing session store isolation pattern. This ensures task operations are scoped per tenant in multi-user deployments. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: adc30d6c-ce66-40bb-933e-9801c2156cda
SergeyMenshykh
had a problem deploying
to
github-app-auth
August 4, 2026 13:44 — with
GitHub Actions
Failure
SergeyMenshykh
had a problem deploying
to
github-app-auth
August 4, 2026 13:44 — with
GitHub Actions
Failure
SergeyMenshykh
had a problem deploying
to
github-app-auth
August 4, 2026 13:44 — with
GitHub Actions
Failure
SergeyMenshykh
temporarily deployed
to
integration
August 4, 2026 13:44 — with
GitHub Actions
Inactive
SergeyMenshykh
temporarily deployed
to
integration
August 4, 2026 13:44 — with
GitHub Actions
Inactive
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation & Context
The A2A hosting layer applies multi-tenant isolation to the session store but not the task store. This PR extends isolation to cover task operations as well.
Description & Review Guide
What are the major changes?
IsolationKeyScopedTaskStoreclass that wrapsITaskStorewith per-tenant key scoping (mirrorsIsolationKeyScopedAgentSessionStore).CreateA2AServerautomatically wraps the task store when aSessionIsolationKeyProvideris registered.What is the impact of these changes?
Task operations are now scoped per tenant in multi-user deployments. No behavioral change for single-user/prototyping scenarios.
What do you want reviewers to focus on?
Correctness of the
ListTasksAsyncContextId scoping/unscoping logic and the clone-vs-mutate approach.Related Issue
Fixes microsoft#7431
Contribution Checklist
breaking changelabel (or add "[BREAKING]" to the title prefix, before or after any language prefix) — a workflow keeps the label and title prefix in sync automatically.