Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove the legacy IsoEnvBroker service gate so current SF2 hosts can activate the normal MXC process backend. MXC performs BaseContainer/AppContainer capability selection when commands execute; packaged binary validation and host ACL guidance remain intact. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.
What Problem This Solves
The MXC plugin currently exposes low-level network and timeout settings, but it does not provide the Windows-aligned security presets used by the Windows node. Operators must assemble the intended network, standard-folder, clipboard, UI-isolation, and timeout behavior themselves, and clipboard-enabled policies can be ineffective when ProcessContainer UI isolation remains locked to the container.
The plugin also blocked activation by requiring the legacy
IsoEnvBrokerservice. Current SF2 builds exposeIsolationSessionandIsoSessionCore, while MXC's normalprocessbackend owns BaseContainer/AppContainer capability detection and does not require the legacy service name.Why This Change Was Made
This adds plugin-owned
Locked Down,Recommended, andUnprotectedpresets while preserving the existing advanced overrides and restrictive policy-file composition. The implementation resolves redirected Windows known folders for the Gateway identity, uses desktop isolation only when clipboard access is enabled, keeps internal shell commands locked down, and does not claim support for the Windows node output caps because the current sandbox backend contract has no complete output-limit seam.Plugin activation now validates the packaged MXC executor and retains the advisory system-drive ACL check, but defers containment capability selection to MXC when a command executes. This removes the stale service-name coupling without adding a replacement dependency on
IsolationSession.User Impact
Windows MXC users can select a consistent security level instead of configuring each control independently:
Locked DownRecommendedUnprotectedRecommendedis the default. Existingnetwork: "none"configuration can still tighten a preset, explicit timeout values remain supported, and configured policy-file timeouts continue to act as ceilings. Modern SF2 hosts can activate the plugin without installing or enabling a legacyIsoEnvBrokerservice.Evidence
node scripts/run-vitest.mjs extensions/mxc- 12 files, 133 tests passed.IsoEnvBroker service is not installedand passes after the readiness repair.node scripts/run-tsgo.mjs -p extensions/mxc/tsconfig.json- passed.git diff --check- passed.26683.1006thatIsolationSessionandIsoSessionCoreare installed whileIsoEnvBrokeris absent, matching the removed activation failure.mxcthroughopenclaw sandbox explain, and completed one real Gateway agent turn whose singleexeccall returnedMXC_PROCESS_OK. The temporary agent sandbox override was removed afterward and Gateway health remained 200.The repository-wide changed-file gate passed its guards, formatting, plugin-boundary checks, and doctor-contract tests before reaching unrelated extension type failures caused by stale dependencies. A required dependency refresh then stopped on the configured package feed returning 404 for
fast-uri@4.1.4; the MXC package's focused typecheck and complete test suite remain green. The replacement package completed live Windows execution on the affected SF2 host; no Velocity changes were required.