User Story
As a contributor working on OpenShell Go SDK I want mise run e2e:go to run E2E tests against a real
gateway. Regressions in sandbox lifecycle, exec, provider credential injection, and workspace management will be caught before they reach SDK consumers.
Problem Statement
The Go SDK (sdk/go/) is tested only by unit tests and sdk/go/openshell/v1/integration_test.go, which is only a very basic smoke E2E test. New E2E Go SDK test suite should be able to catch issues with:
- protocol schema mismatches between the Go SDK and the actual gateway build
- sandbox lifecycle can be managed by the Go SDK
- provider credentials management using the Go SDK
- workspace management
Impact / Why This Matters
The Go SDK (sdk/go/) is tested mostly by unit tests. These tests mock the transport and never talk to a real openshell-gateway. Which means that currently:
- A gateway change can silently break every Go SDK consumer
- Contributors have no
mise run entry point to test Go SDK changes end-to-end before opening PR
Proposed Design
- Separate module: E2E tests live in
e2e/go/
- No SDK changes:
sdk/go/ is untouched
Possible design can be found in draft PR: jiripetrlik#1
Acceptance Criteria
e2e/go/ is a separate Go module
- All e2e files has
//go:build e2e
- Sandbox tests cover CRUD
- Provider tests assert placeholders (not raw secrets)
- Workspace tests cover CRUD
- AGENTS.md documents the
e2e/go/ conventions
mise run pre-commit passes; commits are DCO-signed and follow Conventional Commits
Alternatives Considered
- Rely on unit tests - can be faster to test, but many possible bugs can be missed
- Put the e2e tests inside `sdk/go/ - put E2E tests to a separated directory is much more clear
Agent Investigation
No response
Checklist
User Story
As a contributor working on OpenShell Go SDK I want
mise run e2e:goto run E2E tests against a realgateway. Regressions in sandbox lifecycle, exec, provider credential injection, and workspace management will be caught before they reach SDK consumers.
Problem Statement
The Go SDK (sdk/go/) is tested only by unit tests and sdk/go/openshell/v1/integration_test.go, which is only a very basic smoke E2E test. New E2E Go SDK test suite should be able to catch issues with:
Impact / Why This Matters
The Go SDK (sdk/go/) is tested mostly by unit tests. These tests mock the transport and never talk to a real openshell-gateway. Which means that currently:
mise runentry point to test Go SDK changes end-to-end before opening PRProposed Design
e2e/go/sdk/go/is untouchedPossible design can be found in draft PR: jiripetrlik#1
Acceptance Criteria
e2e/go/is a separate Go module//go:build e2ee2e/go/conventionsmise run pre-commitpasses; commits are DCO-signed and follow Conventional CommitsAlternatives Considered
Agent Investigation
No response
Checklist