CommunityProgramación y desarrollogithub.com

Diagnóstico de errores

Encuentra las causas raíz de errores difíciles, pruebas inestables y regresiones de rendimiento con un bucle de reproducción ajustado. Úsalo cuando un error resista una solución rápida o no se reproduzca. No para errores obvios.

¿Qué es Diagnóstico de errores?

Esta habilidad está diseñada para desarrolladores e ingenieros de software que necesitan diagnosticar errores complejos, pruebas inestables (flaky tests) o regresiones de rendimiento que no se resuelven fácilmente. Proporciona un bucle de trabajo sistemático de seis pasos que guía al usuario desde la reproducción del síntoma hasta la verificación de la corrección. La habilidad es compatible con cualquier plataforma de desarrollo, ya que se basa en principios generales de depuración, no en herramientas específicas. Es útil porque evita conjeturas innecesarias y promueve un enfoque basado en evidencia: primero se crea una señal de aprobación/fallo rápida y específica, se minimiza el caso de prueba, se formulan hipótesis falsables y se realizan pruebas controladas (cambiando una variable a la vez). Además, incluye reglas claras para evitar la sobrecorrección, como detenerse tras dos intentos fallidos y usar instrumentación temporal etiquetada. En regresiones de rendimiento, recomienda medir una línea base y usar profiling o bisección en lugar de solo registros. Finalmente, exige que la corrección se acompañe de una prueba de regresión en el sistema adecuado, y que se limpie toda la instrumentación temporal. La habilidad presume la existencia de un archivo de referencia `references/feedback-loop.md` para casos donde no se pueda crear un reproductor ajustado.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Statusnone420/agent-skills/tree/HEAD/adapters/claude/plugins/agent-skills/skills/diagnosing-bugs

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace Diagnóstico de errores?

Construye una señal de aprobación/fallo rápida y específica antes de formar una teoría sólida. Oculta secretos de comandos, salidas, trazas y artefactos guardados.

Bucle

  1. Reproducir. Escribe un comando que alcance el síntoma exacto del usuario y pueda fallar debido a este error. Si no existe un reproductor ajustado, consulta references/feedback-loop.md.
  2. Minimizar. Elimina entradas, pasos, invocaciones y configuración uno a la vez. Conserva solo lo que el fallo necesita.
  3. Hipótesis. Escribe 3-5 causas ordenadas y falsables. Para cada una, nombra la observación que la confirmaría o la rechazaría.
  4. Probar. Cambia una variable a la vez. Prefiere un depurador o instrumentación centrada en los límites. Etiqueta los registros temporales con un prefijo único [DEBUG-...].
  5. Fijar la corrección. Convierte la reproducción real más pequeña en una prueba de regresión fallida en el seam público correcto. Aplica la corrección más pequeña. Vuelve a ejecutar la prueba y la reproducción original.
  6. Limpiar. Elimina la instrumentación y los andamiajes temporales. Reporta la causa, la evidencia, la corrección y cualquier brecha de cobertura restante.

Reglas

  • Después de dos intentos de corrección fallidos, detente. Revisa la hipótesis o el diseño antes de probar otro parche. No acumules conjeturas.
  • Para una regresión de rendimiento, mide una línea base y perfila o biseca antes de cambiar el código. Los registros por sí solos no constituyen un diagnóstico de rendimiento.
  • Si no existe un seam de prueba correcto, dilo. Después de la corrección, usa $codebase-design para juzgar si el seam faltante necesita trabajo estructural.
  • Reclama éxito solo cuando el síntoma original haya desaparecido y la comprobación de regresión pase.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Skills relacionados