CI hiện tại chỉ chạy gofmt và go test, chưa chạy go vet hoặc staticcheck dù đây là baseline kiểm tra chất lượng hợp lý cho một repo Go nhỏ.
Problem
PR có thể merge dù còn các vấn đề tĩnh mà go vet hoặc staticcheck có thể phát hiện.
CI hiện chưa phản ánh đầy đủ mức validate mong muốn cho code Go trong repo.
Proposed scope
Cập nhật workflow CI để chạy thêm go vet ./... trên pull request.
Cập nhật workflow CI để chạy thêm staticcheck ./... trên pull request.
Pin version của staticcheck trong CI để tránh vỡ build do thay đổi ngoài ý muốn từ tool.
Giữ thay đổi ở mức tối thiểu, tập trung vào một baseline lint/check thực dụng.
Acceptance criteria
CI fail nếu go vet ./... trả về lỗi.
CI fail nếu staticcheck ./... trả về lỗi.
CI vẫn tiếp tục chạy gofmt và go test như hiện tại.
Không thêm golangci-lint trong issue này.
## Summary
CI hiện tại chỉ chạy `gofmt` và `go test`, chưa chạy `go vet` hoặc `staticcheck` dù đây là baseline kiểm tra chất lượng hợp lý cho một repo Go nhỏ.
## Problem
- PR có thể merge dù còn các vấn đề tĩnh mà `go vet` hoặc `staticcheck` có thể phát hiện.
- CI hiện chưa phản ánh đầy đủ mức validate mong muốn cho code Go trong repo.
## Proposed scope
- Cập nhật workflow CI để chạy thêm `go vet ./...` trên pull request.
- Cập nhật workflow CI để chạy thêm `staticcheck ./...` trên pull request.
- Pin version của `staticcheck` trong CI để tránh vỡ build do thay đổi ngoài ý muốn từ tool.
- Giữ thay đổi ở mức tối thiểu, tập trung vào một baseline lint/check thực dụng.
## Acceptance criteria
- CI fail nếu `go vet ./...` trả về lỗi.
- CI fail nếu `staticcheck ./...` trả về lỗi.
- CI vẫn tiếp tục chạy `gofmt` và `go test` như hiện tại.
- Không thêm `golangci-lint` trong issue này.
Summary: Thêm go vet ./... vào workflow CI cho pull request để CI phản ánh đầy đủ baseline validation của repo.
Scope:
Cập nhật workflow CI hiện tại để chạy thêm go vet ./....
Giữ nguyên các bước kiểm tra hiện có là gofmt và go test.
Chỉ thay đổi ở mức tối thiểu trong pipeline CI.
Out of scope:
Không thêm golangci-lint, staticcheck, hoặc công cụ lint mới khác.
Không refactor mã ứng dụng chỉ để “làm đẹp” CI.
Không thay đổi phạm vi trigger của workflow ngoài nhu cầu cần thiết cho PR validation.
Acceptance criteria:
Pull request CI chạy go vet ./... cùng với các bước kiểm tra hiện có.
CI fail khi go vet ./... trả về lỗi.
go test ./... và gofmt -l . vẫn tiếp tục được enforce như hiện tại.
## Final Requirements
**Summary:** Thêm `go vet ./...` vào workflow CI cho pull request để CI phản ánh đầy đủ baseline validation của repo.
**Scope:**
- Cập nhật workflow CI hiện tại để chạy thêm `go vet ./...`.
- Giữ nguyên các bước kiểm tra hiện có là `gofmt` và `go test`.
- Chỉ thay đổi ở mức tối thiểu trong pipeline CI.
**Out of scope:**
- Không thêm `golangci-lint`, `staticcheck`, hoặc công cụ lint mới khác.
- Không refactor mã ứng dụng chỉ để “làm đẹp” CI.
- Không thay đổi phạm vi trigger của workflow ngoài nhu cầu cần thiết cho PR validation.
**Acceptance criteria:**
- Pull request CI chạy `go vet ./...` cùng với các bước kiểm tra hiện có.
- CI fail khi `go vet ./...` trả về lỗi.
- `go test ./...` và `gofmt -l .` vẫn tiếp tục được enforce như hiện tại.
codex
changed title from Add go vet to CI validation pipeline to Add go vet and staticcheck to CI validation pipeline2026-04-28 06:45:21 +07:00
This comment supersedes the previous Final Requirements on this issue.
Summary: Thêm go vet ./... và staticcheck ./... vào workflow CI cho pull request để thiết lập baseline kiểm tra chất lượng Go thực dụng cho repo.
Scope:
Cập nhật workflow CI hiện tại để chạy thêm go vet ./....
Cập nhật workflow CI hiện tại để chạy thêm staticcheck ./....
Pin version của staticcheck trong CI để tránh nhiễu do upgrade ngoài ý muốn.
Giữ nguyên các bước kiểm tra hiện có là gofmt và go test.
Giữ thay đổi ở mức tối thiểu trong pipeline CI.
Out of scope:
Không thêm golangci-lint trong issue này.
Không thêm các style linter hoặc lint framework khác.
Không refactor mã ứng dụng chỉ để “làm đẹp” kết quả lint.
Không thay đổi phạm vi trigger của workflow ngoài nhu cầu cần thiết cho PR validation.
Acceptance criteria:
Pull request CI chạy go vet ./... cùng với các bước kiểm tra hiện có.
Pull request CI chạy staticcheck ./... với version được pin rõ trong workflow.
CI fail khi go vet ./... hoặc staticcheck ./... trả về lỗi.
go test ./... và gofmt -l . vẫn tiếp tục được enforce như hiện tại.
## Final Requirements
This comment supersedes the previous Final Requirements on this issue.
**Summary:** Thêm `go vet ./...` và `staticcheck ./...` vào workflow CI cho pull request để thiết lập baseline kiểm tra chất lượng Go thực dụng cho repo.
**Scope:**
- Cập nhật workflow CI hiện tại để chạy thêm `go vet ./...`.
- Cập nhật workflow CI hiện tại để chạy thêm `staticcheck ./...`.
- Pin version của `staticcheck` trong CI để tránh nhiễu do upgrade ngoài ý muốn.
- Giữ nguyên các bước kiểm tra hiện có là `gofmt` và `go test`.
- Giữ thay đổi ở mức tối thiểu trong pipeline CI.
**Out of scope:**
- Không thêm `golangci-lint` trong issue này.
- Không thêm các style linter hoặc lint framework khác.
- Không refactor mã ứng dụng chỉ để “làm đẹp” kết quả lint.
- Không thay đổi phạm vi trigger của workflow ngoài nhu cầu cần thiết cho PR validation.
**Acceptance criteria:**
- Pull request CI chạy `go vet ./...` cùng với các bước kiểm tra hiện có.
- Pull request CI chạy `staticcheck ./...` với version được pin rõ trong workflow.
- CI fail khi `go vet ./...` hoặc `staticcheck ./...` trả về lỗi.
- `go test ./...` và `gofmt -l .` vẫn tiếp tục được enforce như hiện tại.
Added a new vet job in CI to run go vet ./... on pull requests.
Added a new staticcheck job in CI.
Pinned staticcheck installation to honnef.co/go/tools/cmd/staticcheck@2025.1.1.
Kept existing fmt (gofmt -l .) and test (go test ./...) jobs unchanged.
Local verification
gofmt -l .
go test ./...
go vet ./...
go install honnef.co/go/tools/cmd/staticcheck@2025.1.1
$(go env GOPATH)/bin/staticcheck ./...
All commands completed successfully.
Opening PR next with Fixes #18.
## Implementation Update
### Summary
- Added a new `vet` job in CI to run `go vet ./...` on pull requests.
- Added a new `staticcheck` job in CI.
- Pinned staticcheck installation to `honnef.co/go/tools/cmd/staticcheck@2025.1.1`.
- Kept existing `fmt` (`gofmt -l .`) and `test` (`go test ./...`) jobs unchanged.
### Local verification
- `gofmt -l .`
- `go test ./...`
- `go vet ./...`
- `go install honnef.co/go/tools/cmd/staticcheck@2025.1.1`
- `$(go env GOPATH)/bin/staticcheck ./...`
All commands completed successfully.
Opening PR next with `Fixes #18`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
CI hiện tại chỉ chạy
gofmtvàgo test, chưa chạygo vethoặcstaticcheckdù đây là baseline kiểm tra chất lượng hợp lý cho một repo Go nhỏ.Problem
go vethoặcstaticcheckcó thể phát hiện.Proposed scope
go vet ./...trên pull request.staticcheck ./...trên pull request.staticchecktrong CI để tránh vỡ build do thay đổi ngoài ý muốn từ tool.Acceptance criteria
go vet ./...trả về lỗi.staticcheck ./...trả về lỗi.gofmtvàgo testnhư hiện tại.golangci-linttrong issue này.Final Requirements
Summary: Thêm
go vet ./...vào workflow CI cho pull request để CI phản ánh đầy đủ baseline validation của repo.Scope:
go vet ./....gofmtvàgo test.Out of scope:
golangci-lint,staticcheck, hoặc công cụ lint mới khác.Acceptance criteria:
go vet ./...cùng với các bước kiểm tra hiện có.go vet ./...trả về lỗi.go test ./...vàgofmt -l .vẫn tiếp tục được enforce như hiện tại.Add go vet to CI validation pipelineto Add go vet and staticcheck to CI validation pipelineFinal Requirements
This comment supersedes the previous Final Requirements on this issue.
Summary: Thêm
go vet ./...vàstaticcheck ./...vào workflow CI cho pull request để thiết lập baseline kiểm tra chất lượng Go thực dụng cho repo.Scope:
go vet ./....staticcheck ./....staticchecktrong CI để tránh nhiễu do upgrade ngoài ý muốn.gofmtvàgo test.Out of scope:
golangci-linttrong issue này.Acceptance criteria:
go vet ./...cùng với các bước kiểm tra hiện có.staticcheck ./...với version được pin rõ trong workflow.go vet ./...hoặcstaticcheck ./...trả về lỗi.go test ./...vàgofmt -l .vẫn tiếp tục được enforce như hiện tại.Implementation Update
Summary
vetjob in CI to rungo vet ./...on pull requests.staticcheckjob in CI.honnef.co/go/tools/cmd/staticcheck@2025.1.1.fmt(gofmt -l .) andtest(go test ./...) jobs unchanged.Local verification
gofmt -l .go test ./...go vet ./...go install honnef.co/go/tools/cmd/staticcheck@2025.1.1$(go env GOPATH)/bin/staticcheck ./...All commands completed successfully.
Opening PR next with
Fixes #18.