Upgrade the remote external OpenShell target to v0.0.115
- Dominant language
- TypeScript
- Stars
- 22.5k
- Forks
- 3.1k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 715
Description
Parent: #9872
Epic: #9816
Related: #9802
Dependency: #10368
## Outcome
The remote external OpenShell target uses OpenShell gateway and `@nvidia/openshell-sdk` v0.0.115 for future authenticated, read-only operations.
This upgrade applies only to the remote external-target contract. It must not change NemoClaw's host-side OpenShell release or local externally-supervised gateway behavior.
## Scope
- Pin the remote external target to OpenShell gateway v0.0.115.
- Pin `@nvidia/openshell-sdk` to exact version `0.0.115` from GitHub Packages.
- Complete a semantic dependency review from v0.0.106 to v0.0.115.
- Verify the package source, lockfile identity, integrity value, license, runtime dependencies, and supported Node.js version.
- Use the official TypeScript SDK. Use its generated raw client only when a curated SDK method does not meet the accepted read-only contract.
- Verify that v0.0.115 provides the renewable OIDC token-provider interface required by later authenticated work.
- Call public gateway health before requesting an authentication token.
- Require the gateway to report exact version `0.0.115`.
- Stop on a health or release mismatch before requesting a token or starting an authenticated call.
- Return redacted TLS, transport, release, authentication, and authorization failures.
- Add the SDK transport and a production #9872 caller in the same capability slice. Do not add an unused SDK client or a second OpenShell interface.
## Security boundaries
- #10368 owns reviewed GitHub Packages access. A package token may reach only the trusted dependency-installation step.
- This issue does not authorize credential-content reads or authenticated calls until #9872 records the complete machine-authentication contract.
- The later authentication contract must define issuer, audience, scope, renewal, revocation, workspace authorization, credential access, lifetime, and removal.
- SDK errors, causes, paths, arguments, and credential values must not reach logs, plans, receipts, or retained artifacts.
- A remote target must not enter the local gateway-management path or use ambient OpenShell CLI state.
## Acceptance
- [ ] The remote external-target release and SDK package resolve to exact version `0.0.115`.
- [ ] The lockfile records the reviewed GitHub Packages source and integrity value.
- [ ] The dependency review identifies API, authentication, error, runtime-dependency, license, and supply-chain changes from v0.0.106.
- [ ] A valid explicit HTTPS target checks public health and exact release through the official SDK.
- [ ] A missing, unhealthy, or mismatched release stops before the OIDC token provider or any authenticated SDK operation is used.
- [ ] Tests prove that failures contain no CA path, authentication path, credential value, SDK cause, or ambient configuration value.
- [ ] Tests prove zero OpenShell CLI, Docker, Podman, local gateway lifecycle, sandbox mutation, provider mutation, and policy mutation calls.
- [ ] Tests prove that the host-side OpenShell pin and local externally-supervised behavior remain unchanged.
- [ ] Source and package-contract tests execute the production caller and reject a substituted SDK package, mutable version range, wrong package source, or wrong integrity value.
## Out of scope
- Changing the host-side OpenShell release cohort.
- Installing, upgrading, restarting, or removing an OpenShell gateway.
- Sandbox, provider, policy, inference, or agent lifecycle mutation.
- Kubernetes or Helm packaging.
- Multi-tenancy, high availability, and production support.
- Selecting authentication issuer, audience, scope, or workspace permissions in this issue.
## Delivery order
1. Accept this remote-target v0.0.115 decision.
2. Complete the semantic dependency review and exact package pin.
3. Add public health and exact-release verification with one production #9872 caller.
4. Start authenticated read-only workspace operations only after #9872 accepts the complete authentication contract.
Contributor guide
Assessment
This issue has not been assessed yet.