Saltar al contenido principal

Diagnóstico de errores (bug) paso a paso

Analiza un mensaje de error y el código relacionado para proponer hipótesis de causa raíz ordenadas, convirtiendo el debugging en un proceso metódico en lugar de prueba y error a ciegas.

Prompt
Actúa como ingeniero de software senior haciendo debugging en producción. Tengo el siguiente error: [PEGA EL MENSAJE DE ERROR Y STACK TRACE COMPLETO]. Este es el código relacionado: [PEGA EL CÓDIGO]. Contexto adicional: [CUÁNDO OCURRE EL ERROR, SI ES CONSISTENTE O INTERMITENTE]. Propón 3 hipótesis ordenadas de más a menos probable sobre la causa raíz, y para cada una indica: qué comprobación haría para confirmarla o descartarla, y qué comando o log específico revisaría primero.

Caso de uso

Depuración de software

Pedir hipótesis ordenadas en vez de la solución directamente es clave: los modelos de IA a veces sugieren un arreglo que enmascara el síntoma sin resolver la causa raíz. Pedir también la comprobación para cada hipótesis convierte el debugging en un proceso metódico en lugar de prueba y error.

Por qué funciona esta estructura

La técnica central de este prompt es replicar el método científico aplicado a debugging: generar varias hipótesis plausibles, ordenarlas por probabilidad, y para cada una definir un experimento concreto que la confirme o la descarte. Esto evita el patrón más común y menos eficiente de debugging, que es probar cambios al azar en el código esperando que alguno funcione, sin entender realmente qué estaba fallando.

Antes vs. después

Antes: pegar solo el mensaje de error TypeError: cannot read property of undefined y pedir arréglalo suele producir una solución genérica que añade una validación defensiva sin identificar por qué el valor llegaba undefined en primer lugar, lo que puede enmascarar un problema más profundo.

Después: con el código y contexto completo, el modelo puede proponer como hipótesis principal que una llamada asíncrona no ha terminado cuando se accede al dato, como segunda hipótesis que la API externa está devolviendo una estructura distinta a la esperada, y como tercera que existe una condición de carrera en el estado del componente, cada una con un log específico que revisar para confirmar cuál es la real.

Variaciones útiles

  • Para errores en producción con usuarios afectados: pide que priorice primero una hipótesis de mitigación rápida (rollback, feature flag) separada del análisis de causa raíz completo.
  • Para bugs recurrentes del mismo tipo: pregunta también si existe un patrón de diseño que prevendría este tipo de error en el futuro, no solo el fix puntual.
  • Para equipos que documentan post-mortems: pide que una vez confirmada la causa, genere un resumen en formato post-mortem con causa raíz, impacto y acción preventiva.

Qué IA usar

ChatGPT con capacidad de ejecución de código es especialmente útil cuando puedes aportar un caso mínimo reproducible, ya que puede probar las hipótesis directamente. Claude destaca en el razonamiento sobre bugs complejos que involucran múltiples archivos o sistemas interconectados, gracias a su capacidad de mantener mucho contexto de código a la vez.

Publicidad

Conclusión

El debugging asistido por IA funciona mejor como generador de hipótesis a validar, no como oráculo que da la respuesta correcta a la primera. Trata cada hipótesis como una pista a comprobar, no como un diagnóstico definitivo, y el proceso será mucho más rápido que probar soluciones al azar.

Preguntas frecuentes

Explora más prompts en Programación y código o revisa nuestras guías de prompt engineering.

Prompts relacionados

Usamos cookies propias y de terceros para analizar el tráfico y mostrar publicidad relevante. Puedes leer más en nuestra política de privacidad.