Files
affaan-m--everything-claude…/docs/es/commands/go-build.md
T
wehub-resource-sync d48cda4081
CI / Test (ubuntu-latest, Node 18.x, bun) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, npm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, pnpm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, yarn) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 20.x, bun) (push) Failing after 17m13s
CI / Test (ubuntu-latest, Node 20.x, npm) (push) Failing after 18m42s
CI / Test (ubuntu-latest, Node 20.x, pnpm) (push) Failing after 15m0s
CI / Test (ubuntu-latest, Node 20.x, yarn) (push) Failing after 49m44s
CI / Test (ubuntu-latest, Node 22.x, bun) (push) Failing after 51m55s
CI / Test (ubuntu-latest, Node 22.x, pnpm) (push) Failing after 21m57s
CI / Test (ubuntu-latest, Node 22.x, npm) (push) Failing after 37m39s
CI / Test (ubuntu-latest, Node 22.x, yarn) (push) Failing after 34m7s
CI / Validate Components (push) Failing after 37m15s
CI / Python Tests (push) Failing after 10m1s
CI / Security Scan (push) Failing after 10m1s
CI / Lint (push) Failing after 17m12s
CI / Coverage (push) Failing after 20m19s
CI / Test (macos-latest, Node 18.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, yarn) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 11:55:55 +08:00

167 lines
4.1 KiB
Markdown

---
description: Corregir errores de build de Go, advertencias de go vet y problemas del linter de forma incremental. Invoca al agente go-build-resolver para correcciones mínimas y quirúrgicas.
---
# Go Build y Corrección
Este comando invoca al agente **go-build-resolver** para corregir incrementalmente errores de build de Go con cambios mínimos.
## Qué Hace Este Comando
1. **Ejecutar Diagnósticos**: Ejecutar `go build`, `go vet`, `staticcheck`
2. **Parsear Errores**: Agrupar por archivo y ordenar por severidad
3. **Corregir Incrementalmente**: Un error a la vez
4. **Verificar Cada Corrección**: Re-ejecutar el build después de cada cambio
5. **Reportar Resumen**: Mostrar qué se corrigió y qué queda pendiente
## Cuándo Usar
Usar `/go-build` cuando:
- `go build ./...` falla con errores
- `go vet ./...` reporta problemas
- `golangci-lint run` muestra advertencias
- Las dependencias de módulos están rotas
- Después de hacer pull de cambios que rompen el build
## Comandos de Diagnóstico Ejecutados
```bash
# Verificación de build principal
go build ./...
# Análisis estático
go vet ./...
# Linting extendido (si está disponible)
staticcheck ./...
golangci-lint run
# Problemas de módulos
go mod verify
go mod tidy -v
```
## Ejemplo de Sesión
```text
Usuario: /go-build
Agente:
# Resolución de Build de Go
## Diagnósticos Iniciales
$ go build ./...
internal/service/user.go:25:15: undefined: UserRepository
internal/handler/api.go:42:9: cannot use x (type string) as type int
internal/handler/api.go:58:2: missing return at end of function
Errores encontrados: 3
## Corrección 1: Identificador Indefinido
Archivo: internal/service/user.go:25
Error: undefined: UserRepository
Causa: Import faltante
// Import añadido
import "project/internal/repository"
// Cambiado
var repo UserRepository
// A
var repo repository.UserRepository
$ go build ./...
# 2 errores restantes
## Corrección 2: Incompatibilidad de Tipos
Archivo: internal/handler/api.go:42
Error: cannot use x (type string) as type int
// Cambiado
count := params.Get("count")
// A
countStr := params.Get("count")
count, _ := strconv.Atoi(countStr)
$ go build ./...
# 1 error restante
## Corrección 3: Return Faltante
Archivo: internal/handler/api.go:58
Error: missing return at end of function
func GetUser(id string) (*User, error) {
if id == "" {
return nil, ErrInvalidID
}
user := findUser(id)
// Return añadido
return user, nil
}
$ go build ./...
# ¡Build exitoso!
## Verificación Final
$ go vet ./...
# Sin problemas
$ go test ./...
ok project/internal/service 0.015s
ok project/internal/handler 0.023s
## Resumen
| Métrica | Cantidad |
|---------|---------|
| Errores de build corregidos | 3 |
| Advertencias de vet corregidas | 0 |
| Archivos modificados | 2 |
| Problemas restantes | 0 |
Estado del Build: ÉXITO
```
## Errores Comunes Corregidos
| Error | Corrección Típica |
|-------|-----------------|
| `undefined: X` | Añadir import o corregir typo |
| `cannot use X as Y` | Conversión de tipo o corregir asignación |
| `missing return` | Añadir sentencia return |
| `X does not implement Y` | Añadir método faltante |
| `import cycle` | Reestructurar paquetes |
| `declared but not used` | Eliminar o usar la variable |
| `cannot find package` | `go get` o `go mod tidy` |
## Estrategia de Corrección
1. **Errores de build primero** - El código debe compilar
2. **Advertencias de vet segundo** - Corregir construcciones sospechosas
3. **Advertencias del linter tercero** - Estilo y mejores prácticas
4. **Una corrección a la vez** - Verificar cada cambio
5. **Cambios mínimos** - No refactorizar, solo corregir
## Condiciones de Parada
El agente se detendrá e informará si:
- El mismo error persiste después de 3 intentos
- La corrección introduce más errores
- Requiere cambios arquitectónicos
- Faltan dependencias externas
## Comandos Relacionados
- `/go-test` - Ejecutar pruebas después de que el build tenga éxito
- `/go-review` - Revisar la calidad del código
## Relacionado
- Agente: `agents/go-build-resolver.md`
- Skill: `skills/golang-patterns/`