Repository navigation
Conversation
Signed-off-by: Mike Hepburn <[email protected]>
|
Thank you for your interest in contributing to OpenShell, @eformat. This project uses a vouch system for first-time contributors. Before submitting a pull request, you need to be vouched by a maintainer. To get vouched:
See CONTRIBUTING.md for details. |
|
All contributors have signed the DCO ✍️ ✅ |
Contributor
Author
|
I have read the DCO document and I hereby sign the DCO. |
5 of 6 tasks
TaylorMutch
pushed a commit
to ericcurtin/OpenShell
that referenced
this pull request
Nov 10, 2026
…#5321) * feat(compute)!: configure provisioning and bootstrap timeouts Continue Mike Hepburn's configuration contribution from NVIDIA#4575 (de949b7), preserving its attribution and original DCO provenance. Adapt it to current session admission, registered and shared backends, bound configuration input, and use the configured budget for the initial routed connection. Add focused timeout and configuration regressions. These adaptations are Shiju's work and are not represented as endorsed by the original contributor. BREAKING CHANGE: External Rust configuration struct literals must supply the new timeout fields. PreparedBackend discovery implementors and callers of public supervisor/runtime policy-discovery methods must accept or pass the timeout argument. Target the next qualified minor release, not a patch release or backport. Existing TOML defaults and normal reconnect limits are retained. Co-authored-by: Mike Hepburn <[email protected]> Signed-off-by: Mike Hepburn <[email protected]> Signed-off-by: Shiju <[email protected]> * fix(compute): correct configurable startup window diagnostics Signed-off-by: Shiju <[email protected]> * fix(compute): use seconds for operator startup timeouts Signed-off-by: Shiju <[email protected]> * docs(gateway): relocate startup timeout guidance Signed-off-by: Shiju <[email protected]> --------- Signed-off-by: Mike Hepburn <[email protected]> Signed-off-by: Shiju <[email protected]> Co-authored-by: Mike Hepburn <[email protected]>
jgarciao
pushed a commit
to jgarciao/OpenShell
that referenced
this pull request
Nov 11, 2026
…#5321) * feat(compute)!: configure provisioning and bootstrap timeouts Continue Mike Hepburn's configuration contribution from NVIDIA#4575 (de949b7), preserving its attribution and original DCO provenance. Adapt it to current session admission, registered and shared backends, bound configuration input, and use the configured budget for the initial routed connection. Add focused timeout and configuration regressions. These adaptations are Shiju's work and are not represented as endorsed by the original contributor. BREAKING CHANGE: External Rust configuration struct literals must supply the new timeout fields. PreparedBackend discovery implementors and callers of public supervisor/runtime policy-discovery methods must accept or pass the timeout argument. Target the next qualified minor release, not a patch release or backport. Existing TOML defaults and normal reconnect limits are retained. Co-authored-by: Mike Hepburn <[email protected]> Signed-off-by: Mike Hepburn <[email protected]> Signed-off-by: Shiju <[email protected]> * fix(compute): correct configurable startup window diagnostics Signed-off-by: Shiju <[email protected]> * fix(compute): use seconds for operator startup timeouts Signed-off-by: Shiju <[email protected]> * docs(gateway): relocate startup timeout guidance Signed-off-by: Shiju <[email protected]> --------- Signed-off-by: Mike Hepburn <[email protected]> Signed-off-by: Shiju <[email protected]> Co-authored-by: Mike Hepburn <[email protected]>
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.
Summary
Three provisioning/bootstrap deadlines are hard-coded to 5 minutes and have no configuration escape hatch, which makes sandboxes unusable on slow VM-backed isolation runtimes (CoCo/peer-pods, Kata) where pod-VM provisioning and
attestation take longer than the windows allow.
This PR exposes all three durations as configuration with current-behavior defaults, so operators can size them per deployment without code changes.
Related Issue
Closes #4364
Changes
provisioning_repair_window_mssetting ([openshell.gateway]TOML, orOPENSHELL_PROVISIONING_REPAIR_WINDOW_MS), validated to 1000–86400000 ms, threaded through the provisioning deadline state machine in place of the hard-codedREPAIR_WINDOW_MSconstant.runtime_bootstrap_grace_msdriver setting ([openshell.drivers.kubernetes]TOML, orOPENSHELL_RUNTIME_BOOTSTRAP_GRACE_MS) with a gateway environment override, replacing the hard-codedSANDBOX_RUNTIME_BOOTSTRAP_GRACEconstant.--attach-request-timeout-ms/OPENSHELL_ATTACH_REQUEST_TIMEOUT_MSsupervisor argument, threaded through the sandbox backend client and applied to both attachment and image-policy discovery, replacing the hard-codedATTACH_REQUEST_TIMEOUTconstant.sandbox_attach_request_timeout_msK8s driver setting copies the timeout into supervisor pod environments (OPENSHELL_ATTACH_REQUEST_TIMEOUT_MS), so one gateway setting reaches every supervisor pod without a custom supervisor image.docs/how-it-works/gateways/configuration.mdx.Testing
Details:
mise run cipasses (lint incl. clippy/rustfmt/helm/proto/markdown/license, compile checks, Rust/Python/TypeScript/Go tests, cargo-deny policy).cargo check --workspace --all-targetsandcargo clippy --workspace --all-targets -- -D warningsclean.provisioning_repair_window_ms; window-parameterized provisioning deadline transitions; driver config defaults and TOML parsing forruntime_bootstrap_grace_ms/sandbox_attach_request_timeout_ms; supervisor pod environment passthrough applied only when configured; attach-request-timeout default and override behavior.kata-remote) is not automatable in this PR's test lane; the configuration defaults preserve today's behavior exactly and cluster-side verification was performed against equivalent prebuilt images.Checklist
docs/how-it-works/gateways/configuration.mdx; no RFC-level design changes)