Skip to content

feat(policy): include backend filesystem requirements before policy approval - #5120

Open
shiju-nv wants to merge 5 commits into
NVIDIA:mainfrom
shiju-nv:feat/5108-backend-filesystem-baseline/shiju-nv
Open

shiju-nv wants to merge 5 commits into
NVIDIA:mainfrom
shiju-nv:feat/5108-backend-filesystem-baseline/shiju-nv

Conversation

@shiju-nv

@shiju-nv shiju-nv commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

A backend may need filesystem paths that only exist where the workload runs. This adds those requirements before the gateway approves and hashes the policy, so startup configuration and endpoint status identify the same approved policy and provider snapshot.

Related Issue

Closes #5108. Part of #5114.

Rebased onto main after #5204 merged.

Changes

  • Validate bounded canonical path descriptors and distinguish an absent legacy baseline from an explicitly empty one.
  • Share policy enrichment between gateway and supervisor without filtering paths against the gateway host or upgrading authored read-only grants.
  • Use the captured provider inputs and enriched policy for current and loaded endpoint identity.

Release Notes

Drivers can supply trusted proxy filesystem prerequisites. An absent descriptor retains legacy Linux defaults; an explicit empty descriptor suppresses them. Complete raw Rust capability and setup literals need the new optional field.

Testing

  • Independent review of the rebase adaptations
  • Rust formatting and diff checks
  • Unit tests added/updated (if applicable)
  • Rust regressions and E2E on the rebased head: pending hosted CI

Local Rust validation was interrupted by disk exhaustion and removal of the shared build cache.

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • Architecture docs updated (if applicable)

@shiju-nv shiju-nv added the test:e2e Requires end-to-end coverage label Nov 2, 2026
@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown

Label test:e2e applied for a2fd338. Open the existing run and click Re-run all jobs to execute with the label set. The run will execute the standard E2E suite after building the required gateway, sandbox, and supervisor images once. The matching required CI gate status on this PR will flip green automatically once the run finishes.

@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown

Compatibility review (advisory)

New or updated breaking changes; see the full report for all findings.

1. rust-sdk — No explicit risk acceptance found

openshell_sdk::raw::proto::compute::v1::GetCapabilitiesResponse gains proxy_filesystem_baseline: Option<ProxyFilesystemBaseline>, invalidating previously complete struct literals.

  • Impact: Rust SDK consumers implementing compute-driver servers or mocks with complete response literals fail to compile with E0063; existing RPC client calls and literals using ..Default::default() remain valid.
  • Action: Preserve GetCapabilitiesResponse's existing field set for v0.1.7 using a separately negotiated extension service, or defer the addition to a minor train with migration guidance to add proxy_filesystem_baseline: None or use ..Default::default().
  • PR: feat(policy): include backend filesystem requirements before policy approval #5120
Review details
  • Execution: complete
  • Candidate: PR #5120 (a074c65a1b5d0afd761ea7358194eaa3a7e2a7eb)
  • Baseline: c92c2c7983b1307715f6a922366dd3759e41b35b (c92c2c7983b1307715f6a922366dd3759e41b35b)
  • Reviewed: rust-sdk, python-sdk, go-sdk, typescript-sdk, api-behavior, cli, configuration, policy, helm, state

Advisory review; publication gates are unchanged.

Branch check run

@shiju-nv
shiju-nv force-pushed the feat/5108-backend-filesystem-baseline/shiju-nv branch 2 times, most recently from 955284b to 6b011be Compare November 2, 2026 16:59
@shiju-nv
shiju-nv changed the base branch from main to fix/stopped-driver-watch-fence-c92/shiju-nv November 2, 2026 16:59
@shiju-nv
shiju-nv force-pushed the fix/stopped-driver-watch-fence-c92/shiju-nv branch from d104104 to 760396e Compare November 3, 2026 11:45
@shiju-nv
shiju-nv force-pushed the feat/5108-backend-filesystem-baseline/shiju-nv branch from 6b011be to c8a4d13 Compare November 3, 2026 11:46
@shiju-nv shiju-nv changed the title feat(policy): admit backend filesystem prerequisites before launch feat(policy): include backend filesystem requirements before policy approval Nov 4, 2026
@pimlock
pimlock deleted the branch NVIDIA:fix/stopped-driver-watch-fence-c92/shiju-nv November 10, 2026 20:25
@pimlock pimlock closed this Nov 10, 2026
@pimlock

pimlock commented Nov 10, 2026

Copy link
Copy Markdown
Collaborator

@shiju-nv FYI this got closed automatically.

It looks like it's because the #5204 was merged, which deletes the branch.
Usually what happens in this case is these stacked PRs would be updated to main, but because this PR is opened from the external fork (shiju-nv/OpenShell) that didn't happen and instead this got closed. I cannot reopen it, I think you'll need to update the base branch and open it? Please let me know if you need help.

Proxy prerequisites may exist inside the workload namespace rather than on the gateway host. This lets compute drivers declare those paths before launch and keeps create admission, delivered policy and endpoint evidence tied to the same effective policy and provider snapshot.

Signed-off-by: Shiju <shiju@nvidia.com>
Signed-off-by: Shiju <shiju@nvidia.com>
Signed-off-by: Shiju <shiju@nvidia.com>
@shiju-nv shiju-nv reopened this Nov 10, 2026
@shiju-nv
shiju-nv changed the base branch from fix/stopped-driver-watch-fence-c92/shiju-nv to main November 10, 2026 21:28
@shiju-nv
shiju-nv force-pushed the feat/5108-backend-filesystem-baseline/shiju-nv branch from 609820e to 489cce6 Compare November 10, 2026 21:28
Signed-off-by: Shiju <shiju@nvidia.com>
Signed-off-by: Shiju <shiju@nvidia.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:platform test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Include backend filesystem requirements before approving sandbox policy

2 participants