Skip to content

Latest commit

 

History

History
107 lines (71 loc) · 2.57 KB

File metadata and controls

107 lines (71 loc) · 2.57 KB

Guía de Contribución a ModelRouter

¡Gracias por tu interés en contribuir a ModelRouter!

Código de Conducta

Este proyecto se adhiere a un código de conducta. Al participar, se espera que mantengas un ambiente respetuoso y constructivo.

Cómo Contribuir

Reportar Bugs

  1. Verifica que el bug no haya sido reportado en Issues
  2. Abre un nuevo issue con:
    • Descripción clara del problema
    • Pasos para reproducir
    • Comportamiento esperado vs. real
    • Versiones (Python, OS, dependencias)
    • Logs relevantes (sin datos sensibles)

Proponer Features

  1. Abre un issue con etiqueta "enhancement"
  2. Describe el caso de uso
  3. Propón una solución
  4. Espera feedback antes de implementar

Pull Requests

  1. Fork el repositorio

  2. Crea una rama desde main o develop:

    git checkout -b feature/mi-feature
  3. Implementa cambios:

    • Sigue el estilo de código existente
    • Añade tests para nuevo código
    • Actualiza documentación si es necesario
  4. Ejecuta tests y lint:

    python scripts/test.py all
  5. Commit con mensajes descriptivos:

    git commit -m "feat: añade soporte para provider X"
  6. Push a tu fork:

    git push origin feature/mi-feature
  7. Abre Pull Request hacia main o develop con descripción detallada de los cambios.

Estándares de Código

Python

  • Formato: Black con line-length=88
  • Linting: Flake8
  • Type hints: Obligatorio en funciones públicas
  • Docstrings: Google style para módulos/clases/funciones

Tests

  • Coverage mínimo: 80%
  • Tests unitarios para lógica de negocio
  • Tests de integración para endpoints
  • Mocks para dependencias externas (Redis, HTTP)

Commits

Seguimos Conventional Commits:

  • feat: Nueva funcionalidad
  • fix: Corrección de bug
  • docs: Cambios en documentación
  • test: Añadir/modificar tests
  • refactor: Refactorización sin cambio de funcionalidad
  • chore: Tareas de mantenimiento

Proceso de Revisión

  1. Los mantainers revisarán tu PR
  2. Puede haber comentarios/sugerencias
  3. Actualiza tu PR según feedback
  4. Una vez aprobado, se mergeará

Configuración del Entorno de Desarrollo

Sigue los pasos detallados en Desarrollo Local para preparar tu entorno

Preguntas

Si tienes dudas, abre un issue con etiqueta "question" o únete a Discussions.


¡Gracias por contribuir!