[BREAKING] .NET: Isolate LocalCodeAct subprocess environment - #8159
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟢 Approval recommended
The implementation, documentation, and regression coverage consistently enforce the intended environment-isolation contract.
Pull request overview
Isolates LocalCodeAct Python subprocess environments to match the documented contract.
Changes:
- Clears inherited environment variables and applies explicit configuration.
- Retains required Windows bootstrap variables.
- Updates documentation and adds regression tests.
File summaries
| File | Description |
|---|---|
LocalExecuteCodeFunctionIntegrationTests.cs |
Tests default and explicit environment isolation. |
README.md |
Documents Windows bootstrap-variable retention. |
LocalCodeActProviderOptions.cs |
Updates the public environment contract. |
Internal/ProcessBridge.cs |
Implements subprocess environment isolation. |
Review details
- Files reviewed: 4/4 changed files
- Comments generated: 0
- Review effort level: Balanced
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
MAF Automated Review — Iteration 1
Result: No findings
Scope: full PR (1 commit(s)): 6f099737a6eb
Model: gpt-5.6-sol-fast
Overview
The change unconditionally clears the generated-code runner environment, reapplies only explicitly configured values, and narrowly backfills six Windows bootstrap variables. Both public entry points pass the same option into a fresh ProcessBridge, while real-process regression tests cover null/default and explicit environments. No Critical, High, or Medium residual risk was established.
Reviewed the supplied pull-request change set across correctness, security/reliability, architecture, and failure behavior.
No publishable findings remained after source verification for this scope.
Motivation & Context
LocalCodeAct documents subprocesses as receiving only explicitly provided environment variables. Process startup should consistently honor that contract for both default and configured usage.
Description & Review Guide
LocalCodeActProviderOptions.Environment.ProcessBridgeand the Windows bootstrap-variable compatibility behavior.Related Issue
N/A
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.