~/VibeHandbook
PDF gratis

Capítulo 15 · 03

Comprobación de tipos y linting: errores gratis detectados

Dos herramientas detectan categorías enteras de errores con casi ningún esfuerzo por tu parte:

  • La comprobación de tipos (TypeScript, mypy, etc.) detecta "pasaste una cadena de texto donde se esperaba un número" y "este valor podría ser undefined." A la IA le encanta olvidar casos límite que los tipos hacen imposibles.
  • El linting (ESLint, Ruff, etc.) detecta variables sin usar, código inalcanzable y desviaciones de estilo. Mantiene un código base tocado por IA sin que poco a poco se convierta en un desastre.

Configura esto pronto y dile a la IA que lo obedezca: "Ejecuta el comprobador de tipos y el linter, y arregla todo lo que reporten antes de dar esto por terminado." Trata una comprobación de tipos limpia como parte de la definición de "terminado."

Sin embargo, vigila las salidas fáciles y perezosas. Cuando el comprobador de tipos se queja, la solución genuinamente correcta es manejar el caso que encontró — el valor undefined, el tipo incorrecto. La solución rápida es silenciar la queja con // @ts-ignore, any, o un comentario # type: ignore, y la IA recurre a esto constantemente porque hace desaparecer el texto rojo. También hace que la comprobación sea inútil justo donde intentaba ayudar. Si ves aparecer un comentario de supresión en un diff, trátalo como una pregunta, no como una solución: "¿Por qué es necesario esto? Arregla el tipo subyacente en lugar de ignorarlo."

¿Lo quieres sin conexión?

Descarga el libro entero en PDF o EPUB — gratis.