Skip to content

refactor(compute): support external driver parity - #2744

Open
drew wants to merge 6 commits into
mainfrom
refactor/2417-external-driver-parity/drew
Open

refactor(compute): support external driver parity#2744
drew wants to merge 6 commits into
mainfrom
refactor/2417-external-driver-parity/drew

Conversation

@drew

@drew drew commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Summary

Make external compute drivers follow the same public gRPC boundary as in-tree drivers. Canonical driver names can be supplied over UDS, driver-requested callback listeners are validated generically, and omitted process identity remains omitted so every runtime can apply its native defaults.

Related Issue

Part of #2417

Stacked on #2743.

Changes

  • preserve omitted process user and group fields by default for every compute driver
  • avoid adding capability messages, feature enums, or configuration for process identity behavior
  • structurally validate driver-requested callback listeners independently of driver name
  • allow canonical built-in names with --compute-driver-socket, with the explicit endpoint taking precedence
  • route shutdown, startup, lifecycle, and policy operations through the public compute-driver RPC boundary
  • add fake external UDS coverage using a canonical driver name
  • document the supported extension boundary in architecture notes and agent diagnostics; no public docs/ changes are included

Testing

  • mise run pre-commit
  • focused shutdown/startup reconciliation tests
  • process-identity create/get and policy-backfill tests
  • external UDS lifecycle tests

Checklist

@github-actions

Copy link
Copy Markdown

@drew
drew marked this pull request as draft August 14, 2026 03:04
@copy-pr-bot

copy-pr-bot Bot commented Aug 14, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@drew
drew marked this pull request as ready for review August 14, 2026 23:03
@drew
drew marked this pull request as draft August 14, 2026 23:05
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from eb4006a to 0801416 Compare August 17, 2026 06:05
@drew
drew marked this pull request as ready for review August 17, 2026 06:05
@drew
drew requested a review from sjenning as a code owner August 17, 2026 06:05
@drew
drew removed the request for review from maxamillion August 17, 2026 15:40
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from daf85c9 to 680d1c2 Compare August 18, 2026 07:03
Comment thread proto/compute_driver.proto Outdated
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from 680d1c2 to a06e71f Compare August 19, 2026 01:02
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from a06e71f to bb6f185 Compare August 19, 2026 01:26
@drew drew changed the title refactor(compute): negotiate external driver behavior refactor(compute): support external driver parity Aug 19, 2026
@drew drew added the test:e2e Requires end-to-end coverage label Aug 19, 2026
@github-actions

Copy link
Copy Markdown

Label test:e2e applied for e174352. 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 and supervisor images once. The matching required CI gate status on this PR will flip green automatically once the run finishes.

@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from e174352 to 46b9a23 Compare August 19, 2026 04:09
@drew

drew commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator Author

/ok to test 46b9a23

@elezar elezar left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Non-blocking review suggestions for clarity and maintainability. These are not approval-blocking concerns.

Comment thread crates/openshell-core/src/driver_utils.rs Outdated
Comment thread proto/compute_driver.proto Outdated
Comment thread crates/openshell-server/src/test_support.rs Outdated
Comment thread crates/openshell-server/src/lib.rs
Comment thread crates/openshell-server/src/lib.rs
Comment thread crates/openshell-server/src/cli.rs Outdated
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from 9bb944c to ae967e9 Compare August 19, 2026 18:31
@drew
drew force-pushed the refactor/2417-external-driver-parity/drew branch from ae967e9 to 01f5531 Compare August 20, 2026 05:09
@drew

drew commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator Author

/ok to test

@elezar
elezar force-pushed the refactor/2417-external-driver-parity/drew branch 2 times, most recently from fb5349b to b7b0e0c Compare August 20, 2026 09:48
Base automatically changed from refactor/2417-unify-driver-restart/drew to main August 20, 2026 10:24
drew added 6 commits August 20, 2026 12:24
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
@elezar
elezar force-pushed the refactor/2417-external-driver-parity/drew branch from b7b0e0c to f067e60 Compare August 20, 2026 10:25
@copy-pr-bot

copy-pr-bot Bot commented Aug 20, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@elezar

elezar commented Aug 20, 2026

Copy link
Copy Markdown
Member

/ok-to-test f067e60

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

Labels

test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants