Skip to content

docs: define beta support matrix#2148

Draft
drew wants to merge 17 commits into
mainfrom
drew/support-matrix
Draft

docs: define beta support matrix#2148
drew wants to merge 17 commits into
mainfrom
drew/support-matrix

Conversation

@drew

@drew drew commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

Define the forward-looking OpenShell compatibility matrix for the beta milestone. This draft establishes the intended support contract and includes explicit TBD values where minimum versions are not yet finalized.

The initial minimum versions are deliberately provisional. They are reasonable starting points rather than fully validated support boundaries, and we will refine them as compatibility and release test infrastructure comes online.

Related Issue

None.

Changes

  • Reorganize the support matrix around platforms, clients, compute drivers, supervisor kernel requirements, Kubernetes distributions, and SDKs.
  • Document beta and stable API compatibility, deprecation, and breaking-change policies.
  • Reference established Kubernetes, Google AIP, Protobuf, and Buf compatibility guidance.

Testing

  • mise run pre-commit passes
  • Unit tests added/updated (documentation-only change)
  • E2E tests added/updated (not applicable)

Checklist

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

Signed-off-by: Drew Newberry <anewberry@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Jul 6, 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.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown

drew added 12 commits July 6, 2026 09:22
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>
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>
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
Comment thread docs/reference/support-matrix.mdx Outdated
drew added 4 commits July 6, 2026 12:16
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>

| Release phase | Compatibility policy |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Beta | Patch releases are backward compatible. A minor release may contain a breaking API change only after the affected API is deprecated in the preceding minor release. The release includes migration guidance and coordinated SDK updates. |

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.

Suggested change
| Beta | Patch releases are backward compatible. A minor release may contain a breaking API change only after the affected API is deprecated in the preceding minor release. The release includes migration guidance and coordinated SDK updates. |
| Beta | Patch releases are backward compatible. A minor release may contain a breaking API change only after the affected API is deprecated in a preceding minor release. The release includes migration guidance and coordinated SDK updates. |

the the -> a change makes this a bit more flexible w.r.t. how long we can leave deprecated APIs active.

| Release phase | Compatibility policy |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Beta | Patch releases are backward compatible. A minor release may contain a breaking API change only after the affected API is deprecated in the preceding minor release. The release includes migration guidance and coordinated SDK updates. |
| Stable | Minor and patch releases are backward compatible within an API major version. Breaking changes use a new versioned Protobuf package and API major version. The previous stable API remains supported for at least 12 months or two minor releases after its replacement, whichever is longer. |

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.

Could you comment on where the specific time window came from?

The gateway can manage sandboxes through several compute drivers.
| Driver | Supported hosts | Minimum version | Requirements |
| ---------- | --------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------- |
| Docker | macOS, Linux, Windows | 28.0.4 or later | Docker Engine or Docker Desktop. |

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.

Did we need to distinguish between "Windows" and "WSL"?

| Kubernetes | Supported through the [OpenShell Helm chart](https://github.com/NVIDIA/OpenShell/blob/main/deploy/helm/openshell/README.md). | Requires a Kubernetes cluster supplied by the operator. |
| MicroVM | Supported for VM-backed sandboxes. | Uses the VM compute driver and libkrun-based runtime. |
OpenShell supports NVIDIA GPU-backed sandboxes across compute drivers when the
host or cluster exposes compatible devices. Any LTS CUDA release is supported,

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.

Suggested change
host or cluster exposes compatible devices. Any LTS CUDA release is supported,
host or cluster exposes compatible devices through a supported mechanism. Any current CUDA driver is supported,

I don't want to get into the details here, but basically, we require that the host is configured with the GPU Driver AND the NVIDIA Container Toolkit or in the case of Kubernets, the GPU Device Plugin.

| Docker | Linux; Windows through WSL2 | NVIDIA CDI | Docker CDI is enabled and NVIDIA devices are visible. Default and counted GPU requests are supported. WSL2 may expose all GPUs as one selectable device. |
| Podman | Linux; Windows through WSL2 | NVIDIA CDI | NVIDIA CDI devices are visible to Podman. Default and counted GPU requests are supported. WSL2 may expose all GPUs as one selectable device. |
| MicroVM | Linux | QEMU/VFIO PCI passthrough | The host provides IOMMU and VFIO support, root privileges, and a compatible sandbox image. Each sandbox supports one GPU. |
| Kubernetes | Linux GPU nodes | `nvidia.com/gpu` | The NVIDIA device plugin or GPU Operator exposes allocatable GPU capacity, and the sandbox image includes the required user-space libraries. |

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.

Suggested change
| Kubernetes | Linux GPU nodes | `nvidia.com/gpu` | The NVIDIA device plugin or GPU Operator exposes allocatable GPU capacity, and the sandbox image includes the required user-space libraries. |
| Kubernetes | Linux GPU nodes | `nvidia.com/gpu` extended resources | The NVIDIA GPU Device Plugin (e.g. installed by the GPU Operator) exposes allocatable GPU capacity, and the sandbox image includes the required user-space libraries. |

## Software Prerequisites
| Compute driver | Supported environment | Device interface | Requirements and limits |
| -------------- | --------------------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Docker | Linux; Windows through WSL2 | NVIDIA CDI | Docker CDI is enabled and NVIDIA devices are visible. Default and counted GPU requests are supported. WSL2 may expose all GPUs as one selectable device. |

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.

Suggested change
| Docker | Linux; Windows through WSL2 | NVIDIA CDI | Docker CDI is enabled and NVIDIA devices are visible. Default and counted GPU requests are supported. WSL2 may expose all GPUs as one selectable device. |
| Docker | Linux; Windows through WSL2 | NVIDIA CDI | Docker is CDI-enabled and NVIDIA devices are visible. Default and counted GPU requests are supported. WSL2 may expose all GPUs as one selectable device. |

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.

3 participants