Skip to content

chore(sdk/go): deprecate the in-tree Go SDK and drop its CI gate - #5245

Merged
elezar merged 1 commit into
NVIDIA:mainfrom
rhuss:chore/5031-deprecate-go-sdk/rhuss
Nov 4, 2026
Merged

elezar merged 1 commit into
NVIDIA:mainfrom
rhuss:chore/5031-deprecate-go-sdk/rhuss

Conversation

@rhuss

@rhuss rhuss commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Summary

The Go SDK moved to ai-openshell/sdk-go. This marks the in-tree module deprecated, drops its CI gate so proto changes no longer need regenerated Go bindings, and fails PRs that add or change files under sdk/go/ while the directory still exists.

Related Issue

Closes #5241 (part of #5031)

Changes

  • sdk/go/go.mod: // Deprecated: this module moved to github.com/ai-openshell/sdk-go. From the next sdk/go/vX.Y.Z tag on, go get and pkg.go.dev show it.
  • sdk/go/README.md: replaced with a moved notice and the import rewrite for consumers.
  • Branch Checks: removed the go job (mise run go:ci); tasks/ci.toml: removed go:ci from the ci aggregate. tasks/go.toml stays until the directory is removed.
  • Branch Checks: new Go SDK Freeze job. It fails when a PR adds or modifies files under sdk/go/, with a message pointing to sdk-go. Deleted files and the two notice files above are allowed, so the removal PR passes. It runs on mirror pushes only; merge queue runs skip it.
  • AGENTS.md: the Go SDK section now points to sdk-go and the freeze.
  • Deferred to the removal PR (chore(sdk/go): remove the in-tree Go SDK after the final deprecated tag #5242): the CodeQL Go matrix entry and sdk/go path (codeql.yml, codeql-config.yml), sdk-go-tag.yml, and the tag-sdk-go job in release-publish.yml (its needs list and expected-jobs check included). CodeQL keeps building sdk/go until then, and the tag job creates the final deprecated sdk/go/vX.Y.Z.

Release Notes

The Go SDK is now developed in ai-openshell/sdk-go with module path github.com/ai-openshell/sdk-go. The github.com/NVIDIA/OpenShell/sdk/go module is deprecated.

Testing

  • actionlint and zizmor --min-severity medium pass on branch-checks.yml
  • mise run markdown:lint passes
  • go mod edit -json and go list -m parse sdk/go/go.mod with the deprecation comment
  • Freeze guard logic checked locally against this branch (pass), a hand-written sdk/go edit (fail), deleting sdk/go/ (pass), and refactor(sdk)!: unify wait_ready and make it succeed only on Ready #5226's head (fail on sandbox_client.go and its test)
  • Unit tests added/updated (not applicable)
  • E2E tests added/updated (not applicable)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)

The Go SDK moved to github.com/ai-openshell/sdk-go (NVIDIA#5031). Mark the
old module deprecated so pkg.go.dev and go get point users there, and
replace the README with a moved notice and migration steps.

Drop the go job from Branch Checks and go:ci from the ci aggregate, so
proto changes no longer need regenerated Go bindings in this repository.
Add a Go SDK Freeze job that fails when a PR adds or changes files
under sdk/go. Deletions (the removal PR) and the README and go.mod
notices are allowed.

The directory itself is removed in a follow-up once the final
deprecated sdk/go tag exists.

Signed-off-by: Roland Huß <rhuss@redhat.com>
@rhuss
rhuss requested review from a team, derekwaynecarr, mrunalp and sjenning as code owners November 4, 2026 10:43
@copy-pr-bot

copy-pr-bot Bot commented Nov 4, 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 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.

Approving. The deprecation, CI-gate removal and freeze job look right, and the freeze is enforced through the OpenShell / Branch Checks gate on PRs. All comments are non-blocking.

Not anchored: the CodeQL Go matrix entry (codeql.yml, codeql-config.yml) and sdk-go-tag.yml still reference sdk/go. Deferring them to the removal PR is fine; please note that in the PR description or on #5031 so it isn't lost.

Comment thread .github/workflows/branch-checks.yml Resolved
Comment thread sdk/go/README.md Resolved
@SDAChess SDAChess added the area:sdk:go Go SDK label Nov 4, 2026
@SDAChess

SDAChess commented Nov 4, 2026

Copy link
Copy Markdown
Member

/ok-to-test 6250fa2

@SDAChess SDAChess added area:build Related to CI/CD and builds and removed area:sdk:go Go SDK labels Nov 4, 2026

@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.

LGTM.

@elezar
elezar enabled auto-merge November 4, 2026 12:45
@elezar
elezar added this pull request to the merge queue Nov 4, 2026
Merged via the queue into NVIDIA:main with commit 7cfa14f Nov 4, 2026
120 of 124 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:build Related to CI/CD and builds

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(sdk/go): deprecate the in-tree Go SDK and stop requiring Go bindings in core PRs

3 participants