feat(e2e/go): E2E tests for the Go SDK
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 48/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- go
- Lĩnh vực
- testing-qa
Hướng nghiên cứu
Bắt đầu bằng cách xem xét sdk/go/openshell/v1/integration_test.go hiện có và PR nháp được liên kết trong issue, sau đó kiểm tra các quy ước của module e2e/go được đề xuất. Công việc hoàn tất khi các bài kiểm thử E2E có build tag bao phủ CRUD của sandbox và workspace, các assertion về placeholder của provider, đồng thời các lệnh mise được ghi trong tài liệu chạy thành công cùng với mise run pre-commit.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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 runentry 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: https://github.com/jiripetrlik/OpenShell/pull/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-commitpasses; 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
- I've reviewed existing issues and the architecture docs
- This is a design proposal, not a "please build this" request
- Ngôn ngữ chính
- Rust
- Star
- 8.7k
- Fork
- 1.3k
- Merge trung bình
- 2 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 297
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của NVIDIA/OpenShell
-
area:docs
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
-
state:triage-needed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
area:cli state:validated
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
state:triage-needed
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
area:build spike state:review-ready state:stale
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 68/100
Tất cả issue của NVIDIA/OpenShell
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
state:needs triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
zed-industries/zed#64680 · 2 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
RustPython/RustPython#8802 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
TheLarkInn/aipm#2390 ·