Contribuir
¡Las contribuciones a Strom son bienvenidas! Por favor, abre primero un issue para comentar la idea o el cambio que tienes en mente.
¿Solo quieres adaptarlo a tu hardware? Haz un fork del repositorio: todo el código es libre.
Después puedes proponer cambios así:
- Haz un fork del repositorio
- Crea una rama con tu funcionalidad
- Envía un pull request con una descripción clara de tus cambios
Entorno de desarrollo
git clone https://github.com/Bloodwing1/Strom.git
cd Strom
mise run install # crea el venv, instala Strom con las herramientas de desarrollo y configura los git hooks
Si no usas mise: crea un entorno virtual con Python 3.12.8 y ejecuta pip install -e ".[dev]".
Los comandos más útiles (todos definidos en .mise.toml):
mise run check— lint, comprobación de tipos y tests deterministas; es lo que bloquea CImise run test-integration— canarios con proveedores en vivo (requiere claves de API)mise run mutation— testing de mutación de los módulos críticos de seguridad (lento)
Los git hooks (vía husky) ejecutan el linter en cada commit y la comprobación completa en cada push; actívalos con mise run hooks. Los tests de tests/ funcionan sin acceso a red ni claves de API, así que puedes ejecutarlos localmente cuando quieras.