mirror of
https://github.com/sweetwisdom/everything-claude-code-zh.git
synced 2026-03-22 14:40:14 +00:00
fix: restore missing files (package.json etc) and fix sync script logic
This commit is contained in:
87
docs/zh-TW/commands/go-review.md
Normal file
87
docs/zh-TW/commands/go-review.md
Normal file
@@ -0,0 +1,87 @@
|
||||
---
|
||||
description: Comprehensive Go code review for idiomatic patterns, concurrency safety, error handling, and security. Invokes the go-reviewer agent.
|
||||
---
|
||||
|
||||
# Go 程式碼審查
|
||||
|
||||
此指令呼叫 **go-reviewer** Agent 進行全面的 Go 特定程式碼審查。
|
||||
|
||||
## 此指令的功能
|
||||
|
||||
1. **識別 Go 變更**:透過 `git diff` 找出修改的 `.go` 檔案
|
||||
2. **執行靜態分析**:執行 `go vet`、`staticcheck` 和 `golangci-lint`
|
||||
3. **安全性掃描**:檢查 SQL 注入、命令注入、競態條件
|
||||
4. **並行審查**:分析 goroutine 安全性、channel 使用、mutex 模式
|
||||
5. **慣用 Go 檢查**:驗證程式碼遵循 Go 慣例和最佳實務
|
||||
6. **產生報告**:依嚴重性分類問題
|
||||
|
||||
## 何時使用
|
||||
|
||||
在以下情況使用 `/go-review`:
|
||||
- 撰寫或修改 Go 程式碼後
|
||||
- 提交 Go 變更前
|
||||
- 審查包含 Go 程式碼的 PR
|
||||
- 加入新的 Go 程式碼庫時
|
||||
- 學習慣用 Go 模式
|
||||
|
||||
## 審查類別
|
||||
|
||||
### 關鍵(必須修復)
|
||||
- SQL/命令注入弱點
|
||||
- 沒有同步的競態條件
|
||||
- Goroutine 洩漏
|
||||
- 寫死的憑證
|
||||
- 不安全的指標使用
|
||||
- 關鍵路徑中忽略錯誤
|
||||
|
||||
### 高(應該修復)
|
||||
- 缺少帶上下文的錯誤包裝
|
||||
- 用 Panic 取代 Error 回傳
|
||||
- Context 未傳遞
|
||||
- 無緩衝 channel 導致死鎖
|
||||
- 介面未滿足錯誤
|
||||
- 缺少 mutex 保護
|
||||
|
||||
### 中(考慮)
|
||||
- 非慣用程式碼模式
|
||||
- 匯出項目缺少 godoc 註解
|
||||
- 低效的字串串接
|
||||
- Slice 未預分配
|
||||
- 未使用表格驅動測試
|
||||
|
||||
## 執行的自動化檢查
|
||||
|
||||
```bash
|
||||
# 靜態分析
|
||||
go vet ./...
|
||||
|
||||
# 進階檢查(如果已安裝)
|
||||
staticcheck ./...
|
||||
golangci-lint run
|
||||
|
||||
# 競態偵測
|
||||
go build -race ./...
|
||||
|
||||
# 安全性弱點
|
||||
govulncheck ./...
|
||||
```
|
||||
|
||||
## 批准標準
|
||||
|
||||
| 狀態 | 條件 |
|
||||
|------|------|
|
||||
| ✅ 批准 | 沒有關鍵或高優先問題 |
|
||||
| ⚠️ 警告 | 只有中優先問題(謹慎合併)|
|
||||
| ❌ 阻擋 | 發現關鍵或高優先問題 |
|
||||
|
||||
## 與其他指令的整合
|
||||
|
||||
- 先使用 `/go-test` 確保測試通過
|
||||
- 如果發生建置錯誤,使用 `/go-build`
|
||||
- 提交前使用 `/go-review`
|
||||
- 對非 Go 特定問題使用 `/code-review`
|
||||
|
||||
## 相關
|
||||
|
||||
- Agent:`agents/go-reviewer.md`
|
||||
- 技能:`skills/golang-patterns/`、`skills/golang-testing/`
|
||||
Reference in New Issue
Block a user