Skip to content
Back to skills

Fix

ASecurity

Corrige un bug sin pasar por spec, plan y tareas - test que falla, causa raíz, arreglo mínimo y review ligera - dejando una ficha en docs/changes/. Con --hotfix, para un incidente en producción, además libera con la misma aprobación humana. Úsala con /fix o /fix --hotfix, o cuando el usuario pida arreglar un error, un fallo o un comportamiento que no cumple lo especificado.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
devopsgovuegit

Security analysis

A100/100

Scanned November 11, 2026

npx -y skills add Luisander2651/AI-DD-Setup --skill fix --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fix?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Fix
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/luisander2651-fix/badge)](https://www.skillsdirectory.com/skills/luisander2651-fix)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: fix
description: Corrige un bug sin pasar por spec, plan y tareas - test que falla, causa raíz, arreglo mínimo y review ligera - dejando una ficha en docs/changes/. Con --hotfix, para un incidente en producción, además libera con la misma aprobación humana. Úsala con /fix o /fix --hotfix, o cuando el usuario pida arreglar un error, un fallo o un comportamiento que no cumple lo especificado.
---

# /fix — Corregir un bug

Carril ligero para lo que **ya debería funcionar**: el comportamiento correcto está en una spec, o
es un defecto evidente (excepción, caída, dato corrupto, error de cálculo). No sirve para añadir ni
cambiar comportamiento: eso es `/specify`.

> Antes de actuar, lee `../../shared/contract.md` → "Carriles" y el procedimiento común
> `../../shared/lanes.md` (relativos a este archivo). Si algo aquí los contradice, prevalece el
> contrato.

## Uso

```
/fix <descripción del bug>            # ficha nueva
/fix --hotfix <descripción>           # incidente en producción: arreglo + release inmediato
/fix --continue [<ficha>]             # retoma una ficha abierta
/fix --retro <commit|rango>           # ficha retroactiva de un arreglo ya hecho (lanes.md §5)
```

## Reglas

- **Test primero, siempre.** Ningún arreglo sin un test que falle antes por la razón del bug y
  pase después. Si el bug no se puede reproducir con un test automático (solo en un dispositivo,
  solo en producción), la reproducción manual se escribe paso a paso en "Reproducción" y se
  confirma con el usuario; aun así, añade el test más cercano posible (unidad del cálculo, parser).
- **Causa raíz antes que arreglo.** Un arreglo que solo esconde el síntoma (un `try` que traga el
  error, un `if` para el caso exacto del reporte) no es arreglo: se rechaza en la review.
- **Arreglo mínimo.** Nada de refactor "de paso": eso es `/refactor` aparte.
- **Escala** cuando `../../shared/lanes.md` §3 lo dice.

---

## Paso 0 — Arranque

`../../shared/lanes.md` §1 con carril `fix` (`hotfix` con `--hotfix`, ver Paso 5). En el triaje,
busca qué spec define el comportamiento esperado:
- Lo define una spec → `relates: [NNN]` y `covers` con los criterios que hoy no se cumplen.
- No lo define ninguna, pero es un defecto evidente → `relates: []`; regístralo en "Decisiones"
  como `implícita` (fuente: el síntoma) o pregunta si dudas.
- No lo define ninguna y hay que **decidir** cómo debería ser → no es un fix: escala (§3, motivo 1).
- El reporte contradice una spec (el usuario quiere otra cosa de lo especificado) → `contradicción`:
  la resuelve el usuario y, si cambia lo especificado, es `/specify` con `extends`.

## Paso 1 — Reproducción

1. Escribe el test en el lugar y con las convenciones de los tests vecinos.
2. Ejecútalo y confirma que **falla por la razón del bug** (no por un import o un dato de prueba
   mal puesto). Copia la línea relevante de la salida a "Reproducción".
3. Si el test pasa, el bug no es lo que se pensaba: vuelve al reporte o pide más datos. No sigas
   con un test que no reproduce nada.

## Paso 2 — Causa raíz

Lee el código implicado, la historia del archivo (`git log -p` del tramo) y, si hace falta, añade
trazas temporales que retirarás. Escribe en "Causa raíz" **por qué** pasa, no solo dónde. Si la
causa está en otro módulo o es de diseño (el plan de la spec lo decidió así), dilo: puede que el
arreglo correcto ya no quepa en el carril.

## Paso 3 — Arreglo

El cambio mínimo que ataca la causa. Después: el test nuevo en verde, los del módulo en verde, y
`lane-check` sobre el diff (`../../shared/lanes.md` §3). Describe el cambio en "Cambio".

## Paso 4 — Cierre

`../../shared/lanes.md` §4. Encargo de la review ligera:
- Revierte **solo el código** del arreglo (no el test) en una copia o con `git stash` del código,
  ejecuta el test y confirma que falla; restaura y confirma que pasa.
- ¿La causa raíz explica el síntoma? ¿El arreglo ataca la causa o tapa el síntoma?
- ¿Hay otros sitios con el mismo defecto (mismo patrón copiado)? Si los hay, son de esta ficha
  (pregunta) o fichas nuevas.
- ¿Nada de `../../shared/lanes.md` §3 en el diff?

## Paso 5 — Hotfix (`--hotfix`)

Para un incidente en producción. Lo acelerado es que no espera a otras specs ni pasa por
`/analyze`; **nada** de las reglas de producción se relaja.

1. Lee `docs/deployment.md` → "Hotfix". Si falta, detente y pide completarla (rama, si hay
   staging, cómo vuelve a la rama principal); no improvises el procedimiento.
2. Crea la rama desde el tag que está en producción, según esa sección.
3. Pasos 0–4 con `lane: hotfix`. Si el arreglo escala, no hay hotfix: propón mitigar
   (`/release --rollback`, desactivar el flag) y llevar el arreglo por el flujo completo.
4. `/release --changes <ficha>` con todas sus reglas: puerta de seguridad, versión patch,
   aprobación humana escrita para producción, verificación post-deploy.
5. Integra la rama del hotfix en la principal según `docs/deployment.md` y confirma que el test
   nuevo sigue ahí.

## Paso 6 — Informe

Una línea por punto: el bug y su causa, el test que lo prueba, el resultado de la review, el
estado de la ficha y cómo se libera.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in devops →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.