Skip to content

[SDK][Feature] Prototype sandbox config floors - #1

Draft
ChazGo wants to merge 1 commit into
mainfrom
chazgo-config-floor-prototype
Draft

ChazGo wants to merge 1 commit into
mainfrom
chazgo-config-floor-prototype

Conversation

@ChazGo

@ChazGo ChazGo commented Sep 14, 2026

Copy link
Copy Markdown
Owner

📖 Description

Why is this change being made?

We need a reviewable proof of concept for an MXC-owned, repository-reviewed catalog of minimum tool requirements, based on the design proposed in microsoft#779. Config floors are compatibility input rather than authorization, so the resolver must return requirements without modifying or overriding the host-authored policy.

This PR intentionally implements the smallest TypeScript SDK seam. Rust and C# parity, stronger tool identity, signed distribution, catalog overlays, rollback, governance, broad cross-platform authoring, and any certification process remain deferred production work.

What changed?

  • Added a versioned config-floor catalog and schema with representative git, node, and npm entries
  • Added npm-to-node dependency closure, cycle-safe resolution, deterministic union, and explicit undefined results when all requested tools are unknown
  • Added project, executable-prefix, npm cache, and npm registry symbol resolution so returned values are literal SandboxPolicy objects
  • Added strict catalog validation for malformed data, unsupported fields, missing dependencies, unsafe user-specific paths, wildcards, unknown symbols, and unregistered policy versions
  • Added package-copy wiring and a CI validation gate for the catalog artifacts
  • Added focused unit coverage and documented the ownership and security boundary

How was the change tested?

  • Ran npm run clean, npm run build, and the complete Node SDK unit suite: 417 tests, 398 passed, 19 skipped, 0 failed
  • Ran the repository versioning suite: 67 passed, 0 failed
  • Ran npm run validate-config-floors
  • Ran npm pack --dry-run --json and confirmed the catalog and schema are included in the package
  • Ran git diff --check

🔗 References

🔍 Validation

Covered above under How was the change tested?

✅ Checklist

📋 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.

Add a validated MXC-owned seed catalog and experimental TypeScript resolver that returns literal SandboxPolicy requirements without modifying host policy.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant