You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
NanVix: Preserve block-default networking with blockedHosts - #1071
Prevent legacy network host lists from silently changing or bypassing the selected network.defaultPolicy across shared validation, backend lowering, and SDK-generated requests.
Enforce the valid legacy defaultPolicy/host-list matrix in shared wxc_common validation while keeping policy models as raw data.
Make NanVix and Hyperlight lower the same validated legacy semantics, retaining backend-specific rejection when a microVM filter cannot represent both lists.
Make Node and Rust SDK builders emit a block default whenever an allowlist narrows outbound access; reject blocklist-only policies unless outbound is otherwise allowed. The C# SDK inherits the corrected Rust builder behavior through mxc_ffi.
Migrate affected Bubblewrap and LXC fixtures to equivalent valid shapes and update the LXC CIDR harness to assert its new default-DROP posture.
Keep Seatbelt backend tests on shared-valid inputs so they continue exercising backend representability, and correct their remediation guidance.
Correct Seatbelt, Bubblewrap, and cross-SDK documentation to distinguish shared validity, SDK construction, and backend representability.
Updated Copilot instructions (not applicable; this correction does not change repository build commands, architecture, or contributor conventions)
If this PR changes Cargo.lock, the dependency-feed-check check passes (not applicable; Cargo.lock is unchanged)
📋 Issue Type
Bug fix
Feature
Task
GitHub Actions runs the PR validation build automatically. The ADO pipeline
(MXC-PR-Build) is the Azure version of the PR pipeline, kept in parity with the GitHub
Actions build; it runs on merge to main, and Microsoft reviewers with write access can trigger it
on a PR with /azp run. See docs/pull-requests.md.
If the dependency-feed-check check fails on a new dependency, the crate must be added to
the feed before the PR can pass. See docs/pull-requests.md
for the steps.
Keep the authored allowOutbound value in the private in-process request while retaining block-default wire generation for allowlists.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This Unix exception still applies to both host lists, so blockedHosts with neither allowedHosts nor allowOutbound is emitted as defaultPolicy: 'block' and only fails later during backend execution. That contradicts the SDK contract documented in this PR that blocklist-only authoring is rejected unless outbound is otherwise allowed. Reject that shape before applying the backend-specific exception; only bare allowlists should be deferred.
Reject blocklist-only policies during request authoring
src/core/mxc-sdk/tests/sdk_helpers.rs:183
The Unix branch codifies the opposite of the stated Rust SDK contract: build_request succeeds for a blocklist-only policy even though the generated block-default request is invalid under the new shared matrix. Add an authoring check for blocked_hosts non-empty with both allowed_hosts empty and allow_outbound == false, then require this case to fail on every platform rather than deferring it to execution.
… rejected by #1071 (#1311)
Correct bwrap test changes for #1071
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
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.
📖 Description
Prevent legacy network host lists from silently changing or bypassing the selected
network.defaultPolicyacross shared validation, backend lowering, and SDK-generated requests.defaultPolicy/host-list matrix in sharedwxc_commonvalidation while keeping policy models as raw data.mxc_ffi.🔗 References
Resolves #787
🔍 Validation
node scripts/versioning/validate-configs.jsnpm testandnpm run typecheckfromsdk/nodecargo fmt --all -- --checkcargo test -p wxc_commoncargo test -p mxc_engine policycargo test -p mxc-sdk --test sdk_helperscargo test -p seatbelt_common --libcargo check -p seatbelt_common --tests --target aarch64-apple-darwincargo clippy -p seatbelt_common --tests --target aarch64-apple-darwin -- -D warningscargo test -p nanvix_runnercargo test -p hyperlight_common --features hyperlightcargo clippy -p wxc_common -p nanvix_runner --all-targets -- -D warningscargo clippy -p hyperlight_common --all-targets --features hyperlight -- -D warningscargo clippy -p mxc_engine -p mxc-sdk --all-targets -- -D warnings✅ Checklist
Cargo.lock, thedependency-feed-checkcheck passes (not applicable;Cargo.lockis unchanged)📋 Issue Type
GitHub Actions runs the PR validation build automatically. The ADO pipeline
(
MXC-PR-Build) is the Azure version of the PR pipeline, kept in parity with the GitHubActions build; it runs on merge to
main, and Microsoft reviewers with write access can trigger iton a PR with
/azp run. See docs/pull-requests.md.If the
dependency-feed-checkcheck fails on a new dependency, the crate must be added tothe feed before the PR can pass. See docs/pull-requests.md
for the steps.
Microsoft Reviewers: Open in CodeFlow