Files
Giles Odigwe e39a8a2e79
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
dotnet-build-and-test / paths-filter (push) Has been cancelled
dotnet-build-and-test / dotnet-build-and-test-check (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Debug, windows-latest, net9.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net8.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-foundry-hosted-it (push) Has been cancelled
dotnet-build-and-test / dotnet-test-functions (push) Has been cancelled
dotnet-build-and-test / Integration Test Report (push) Has been cancelled
Python: Bump Python package versions for 1.13.0 release (#7443)
* Bump Python package versions for 1.13.0 release

Bump all 37 Python package projects because the CHANGELOG-driven release includes cross-package feature-usage telemetry, with core and root advancing to 1.13.0, OpenAI to 1.12.0, patch bumps for other stable packages, and 260730 stamps for alpha and beta packages. No optional beta cohort bump was applied; every prerelease package changed. Raise core floors conservatively across co-released packages.

Copilot-Session: e234a28b-c2fd-4ff4-a51d-3d8917936541

* Align co-released Python package dependencies

Update the four hosting adapter pins to the co-released agent-framework-hosting alpha and raise the Azure Functions Durable Task floor to the co-released beta.

Copilot-Session: e234a28b-c2fd-4ff4-a51d-3d8917936541

* Minimize Python release lockfile updates

Regenerate uv.lock with the pre-commit hook pinned uv version so the release changes only workspace package versions while preserving platform markers and agentlightning 0.3.0.

Copilot-Session: e234a28b-c2fd-4ff4-a51d-3d8917936541

---------

Copilot-Session: e234a28b-c2fd-4ff4-a51d-3d8917936541
2026-07-30 22:47:07 +00:00
..

Foundry Hosting

This package provides the integration of Agent Framework agents and workflows with the Foundry Agent Server, which can be hosted on Foundry infrastructure.

ResponsesHostServer persists the Agent Framework AgentSession used by regular agents in addition to the Responses provider's message history. By default it uses the experimental FoundrySessionStore under /.sessions when hosted and an in-memory SessionStore locally. Hosted snapshots are partitioned by the Agent Server request context's platform user ID. Snapshot filenames use the Responses conversation_id or response_id, depending on the continuation mode.

Foundry's session file API exposes the hosted $HOME directory as /, so the API path /.sessions is stored on disk at $HOME/.sessions.

Workflow agents continue to use their existing checkpoint storage layout.

Foundry session isolation

FoundrySessionStore currently subclasses core's FileSessionStore. It reads the active request through azure.ai.agentserver.core.get_request_context() and validates the platform user_id (the same x-agent-user-id value exposed as ResponseContext.platform_context.user_id_key) before selecting its on-disk directory.

Regular-agent session snapshots use the platform user ID and a Responses key:

/.sessions/<user-id>/<conversation-id-or-response-id>.json

A Foundry session controls hosted compute and filesystem lifetime and may host multiple users and Responses conversations. The Foundry session ID is not used as the MAF session identifier.

When conversation_id is used, the host reads and writes the same snapshot under that ID. When previous_response_id is used, the host reads that response snapshot, runs the loaded MAF session, and writes the updated snapshot under the current response's response_id. Multiple responses can therefore branch from one prior response without overwriting its snapshot.

Foundry does not infer the hosted agent_session_id from previous_response_id. Callers using response chains must also reuse the agent_session_id returned by the previous response so the request reaches the same sandbox and $HOME/.sessions filesystem. Conversation objects bind to a stable hosted session automatically.

Workflow checkpoints and function approvals preserve the existing Foundry Hosting layout. Hosted paths insert the validated raw platform user ID:

/.checkpoints/<user-id>/<context-id>/
/.function_approvals/<user-id>/approval_requests.json

Local workflow checkpoints use {cwd}/.checkpoints/<context-id>/, and local function approvals remain in memory.

Hosted requests require container protocol 2.0.0. The v2-only request call_id is checked before session, checkpoint, or approval storage is used, and a missing platform user ID fails closed. Regular agents also require the normal Responses continuation ID for restoration. Local requests may remain unscoped.

The Foundry-specific store type intentionally hides the current filesystem implementation from ResponsesHostServer setup. A future version may move FoundrySessionStore to a Foundry storage API without changing the host's default configuration.