Repository navigation
[WSLC] Proxy Pt. 3: Add runtimeConfig to WSLC provision contract - #1717
Draft
Elliot (theelliotm) wants to merge 1 commit into
Draft
Elliot (theelliotm) wants to merge 1 commit into
Elliot (theelliotm) wants to merge 1 commit into
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
5 of 11 tasks
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues block the development-contract runtimeConfig change.
No open issues 🎉
What changed in this PR
Prepares the development 1.1.0-alpha contract for the WSLC built-in proxy stack by adding provision-time runtimeConfig. This is contract-only: WSLC still rejects a provision-time proxy, and published contracts and SDK APIs remain unchanged.
Changes:
- Adds
runtimeConfigto the WSLC provision request and passes it through the adapter. - Regenerates the development schema and TypeScript types.
- Adds parsing, adapter, and backend-rejection coverage, and documents the current limitation.
| File | Description |
|---|---|
src/mxc-sdk/tests/mxc_contract/v1_1_0_alpha/state_aware/provision/wslc.rs |
Tests accepted and rejected runtime settings. |
src/mxc-sdk/tests/mxc_contract/v1_1_0_alpha/fixtures/wslc_provision/valid/runtime_proxy.json |
Adds a valid development-contract proxy fixture. |
src/mxc-sdk/src/core/mxc_contract/dev/state_aware/provision/wslc.rs |
Adds optional provision-time runtime settings. |
src/mxc-sdk/src/core/mxc_common/config_contract_adapters/dev/state_aware.rs |
Passes runtime settings into the common request. |
src/mxc-sdk/src/core/mxc_common/config_contract_adapters/dev/state_aware_tests/provision.rs |
Verifies field presence and proxy-value preservation. |
src/mxc-sdk/src/backends/wslc/common/policy.rs |
Tests continued rejection of provision-time proxies. |
sdk/node/src/generated/v1_1_0_alpha/wire.ts |
Updates generated development-contract types. |
schemas/dev/mxc-config.schema.1.1.0-alpha.json |
Updates the development schema. |
docs/backends/wslc/wslc-state-aware.md |
Clarifies contract acceptance versus backend rejection. |
Review effort: Balanced
Accept runtimeConfig on the 1.1.0-alpha WSLC provision request and pass it through the adapter. The WSLc backend still rejects networkProxy at provision. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c3f64c2c-9005-43eb-a803-a91fb7265c5b
Elliot (theelliotm)
force-pushed
the
user/emichlin/wslc-proxy-3-provision-proxy
branch
from
November 10, 2026 22:17
cedaf7e to
acf8251
Compare
This branch has not been deployed
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.
📖 Description
Third PR in the WSLC built-in proxy stack (#1625). Adds
runtimeConfigto the WSLCprovisionrequest in the development contract (1.1.0-alpha), so a later PR can let the daemon store a proxy URL at provision and apply it to every exec. Contract only: the WSLC backend still rejectsruntimeConfig.networkProxyat provision with the existing "set it on the exec phase" error.WslcProvisionRequestgainsruntimeConfig, placed as in the MicroVM provision request, and the adapter passes it into the common request.v1_1_0_alphaTypeScript types.wslc_provision/runtime_proxy.jsonfixture moves from invalid to valid for1.1.0-alpha. Published0.9.0-alphaand1.0.0still reject the field.🔗 References
Refs #1462
Spec: #1625
Stacked on #1714
🔍 Validation
On ARM64:
cargo fmt --all -- --check: passedcargo clippy -p mxc-sdk --features wslc --all-targets -- -D warnings: passedcargo test -p mxc-sdk --features wslc --lib -- config_contract_adapters wslc::common::policy: passed (199)cargo test -p mxc-sdk --test mxc_contract_v1_1_0_alpha --test mxc_contract_version_boundaries: passed (382, 21)node scripts/versioning/check-contract-codegen.js: passedNew tests cover accepted and rejected
runtimeConfigshapes, the value reaching the common request, and WSLC still rejecting a1.1.0-alphaprovision with a proxy.Not run: x64 and runtime suites (no runtime behavior change). CI WSLC builds fail on this stack until 3.0.5 is on NuGet.
✅ Checklist
feature-acceptedCargo.lock, thedependency-feed-checkcheck passes (see pull request builds)📋 Issue Type
Microsoft Reviewers: Open in CodeFlow