Guía general para revisar proyectos en Python (bots, videojuegos, APIs, sitios web, automatizaciones, IA, data, etc.).
Úsalo antes de hacer merge, publicar o entregar un proyecto.
- ¿El proyecto cumple con los requisitos funcionales definidos?
- ¿Se probaron casos normales, casos límite y escenarios de error?
- ¿El manejo de excepciones evita fallos inesperados?
- ¿El código es ejecutable sin modificaciones adicionales?
- ¿Las funciones y clases cumplen una única responsabilidad clara?
- ¿Las entradas del usuario están validadas antes de procesarse?
- ¿El código generado o asistido por IA fue revisado manualmente?
- ¿Se eliminaron dependencias, imports o bloques innecesarios sugeridos por IA?
- ¿Se evitó la sobreingeniería para resolver problemas simples?
- ¿El código cumple con los estándares y convenciones del proyecto?
- ¿Se comprende completamente la lógica implementada antes de aprobarla?
- ¿Variables, funciones y clases tienen nombres descriptivos y coherentes?
- ¿El código está organizado en módulos y estructuras lógicas?
- ¿La indentación y estructura son consistentes?
- ¿Se siguen las convenciones de estilo de Python (PEP 8)?
- ¿Existen comentarios útiles en partes complejas?
- ¿Se eliminó código muerto o comentarios innecesarios?
- ¿La lógica de negocio está separada de la interfaz o presentación?
- ¿Se evitó la duplicación de código?
- ¿Se usan constantes o configuraciones externas en lugar de valores hardcodeados?
- ¿El código es fácil de extender o modificar?
- ¿Las dependencias están correctamente abstraídas?
- ¿No se exponen claves, tokens, contraseñas o credenciales en el código?
- ¿Se usan variables de entorno para datos sensibles?
- ¿Se validan correctamente los datos de entrada?
- ¿Se previenen vulnerabilidades comunes (inyección SQL, XSS, etc.) cuando aplica?
- ¿Se eliminaron logs, prints de depuración y archivos temporales antes de publicar?
- ¿El uso de estructuras de datos es adecuado y eficiente?
- ¿Se optimizaron operaciones intensivas o consultas repetitivas?
- ¿El proyecto puede manejar múltiples usuarios o grandes volúmenes de datos?
- ¿Se evitaron cálculos innecesarios dentro de loops críticos?
- ¿El rendimiento es adecuado en pruebas reales?
- ¿Solo se usan dependencias necesarias?
- ¿Existe
requirements.txtopyproject.tomlactualizado? - ¿La configuración está separada del código fuente?
- ¿El entorno virtual está correctamente definido?
- ¿La estructura del proyecto es clara y estándar?
- ¿El README explica claramente instalación, uso y propósito?
- ¿Se incluyen ejemplos de uso si aplica (API, bot, CLI, etc.)?
- ¿El proyecto tiene licencia definida?
- ¿Está listo para compartirse como código abierto?
- ¿Se probó completamente antes de publicarlo?
✔️ Consejo: Usa este checklist antes de cada Pull Request o antes de publicar una nueva versión.