versión 1.2.2: horarios nocturnos unificados en dos tramos
HORARIOS pasa a 5 bloques que siguen cubriendo las 24 horas: 00:00-06:30 cada 30 minutos (antes 00:00-05:00 cada 60 s y 05:00-06:30 cada 30 min) y 18:30-24:00 cada 60 minutos (antes dos bloques iguales). El día no cambia. De madrugada un correo puede esperar hasta 30 minutos y los reintentos por SAP fuera de línea, uno por ciclo, van igual de espaciados. Se ordena el formato de la lista, test_horarios fija el primer y el último minuto de cada bloque (y que nunca se devuelva None en el día), y se actualizan docs/main.md, la guía de despliegue y el CHANGELOG. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
6030320822
commit
1d23e87b9b
7 files changed
+34
-22
No files matched your search
@@ -27,7 +27,7 @@ En PowerShell **como administrador**:
|
||||
cd C:\apps
|
||||
git clone https://unasgeorge.vaquita-hadar.ts.net/george/descarga_factura_transporte.git
|
||||
cd descarga_factura_transporte
|
||||
git checkout v1.2.1 # siempre una versión etiquetada, no main
|
||||
git checkout v1.2.2 # siempre una versión etiquetada, no main
|
||||
|
||||
py -3 -m venv venv
|
||||
venv\Scripts\python -m pip install -r requirements.txt
|
||||
@@ -66,7 +66,7 @@ Get-Service descarga_factura_transporte
|
||||
Get-Content logs\descarga_factura_transporte.log -Wait -Tail 30
|
||||
```
|
||||
|
||||
En el log, al arrancar, debe verse `🚀 Demonio iniciado … (versión 1.2.1)`, y `config_validator` anuncia el modo de notificación (`PRUEBA` o `REAL`).
|
||||
En el log, al arrancar, debe verse `🚀 Demonio iniciado … (versión 1.2.2)`, y `config_validator` anuncia el modo de notificación (`PRUEBA` o `REAL`).
|
||||
|
||||
## Operación
|
||||
|
||||
@@ -85,8 +85,8 @@ En el log, al arrancar, debe verse `🚀 Demonio iniciado … (versión 1.2.1)`,
|
||||
Siempre a una **versión etiquetada** (ver [CHANGELOG](../CHANGELOG.md)):
|
||||
|
||||
```powershell
|
||||
.\deploy\actualizar.ps1 -Version v1.2.1
|
||||
.\deploy\actualizar.ps1 -Version v1.2.0 # volver a la anterior
|
||||
.\deploy\actualizar.ps1 -Version v1.2.2
|
||||
.\deploy\actualizar.ps1 -Version v1.2.1 # volver a la anterior
|
||||
```
|
||||
|
||||
El script detiene el servicio, hace `git checkout` de la etiqueta, instala las dependencias y arranca de nuevo (aunque algo falle, vuelve a levantar lo que había). No toca el `.env` ni `emails.db`. Se niega a actuar si hay cambios locales sin guardar.
|
||||
|
||||
+4
-6
@@ -4,7 +4,7 @@
|
||||
|
||||
```
|
||||
main.py
|
||||
├── Constantes: HORARIOS (7 bloques que cubren las 24 horas)
|
||||
├── Constantes: HORARIOS (5 bloques que cubren las 24 horas)
|
||||
├── obtener_intervalo(dt) → (intervalo, modo) | None
|
||||
├── segundos_hasta_proximo_inicio(dt) → int
|
||||
├── non_negative_int(value) → int (validador argparse)
|
||||
@@ -81,15 +81,13 @@ main()
|
||||
|
||||
| Desde | Hasta | Intervalo | Modo |
|
||||
|---------|---------|-----------|----------|
|
||||
| 00:00 | 05:00 | 60s | rápido |
|
||||
| 05:00 | 06:30 | 1800s | full |
|
||||
| 00:00 | 06:30 | 1800s | full |
|
||||
| 06:30 | 13:15 | 300s | rápido |
|
||||
| 13:15 | 14:00 | 1800s | full |
|
||||
| 14:00 | 18:30 | 300s | rápido |
|
||||
| 18:30 | 21:30 | 3600s | full |
|
||||
| 21:30 | 24:00 | 3600s | full |
|
||||
| 18:30 | 24:00 | 3600s | full |
|
||||
|
||||
Los bloques cubren las 24 horas sin huecos ni solapes (lo comprueba `tests/test_horarios.py`). El modo (`rápido`/`full`) solo se registra en el log: `run_pipeline` se ejecuta igual en ambos. Antes de la versión 1.2.0 los tramos 21:30–00:00 y 05:00–06:30 no tenían bloque y el demonio dormía hasta las 06:30.
|
||||
Los bloques cubren las 24 horas sin huecos ni solapes (lo comprueba `tests/test_horarios.py`). El modo (`rápido`/`full`) solo se registra en el log: `run_pipeline` se ejecuta igual en ambos. Antes de la versión 1.2.0 los tramos 21:30–00:00 y 05:00–06:30 no tenían bloque y el demonio dormía hasta las 06:30; desde la 1.2.2 la noche son solo dos tramos (00:00–06:30 cada 30 minutos y 18:30–24:00 cada 60). De madrugada un correo puede esperar hasta 30 minutos, y los reintentos por SAP fuera de línea (uno por ciclo) van igual de espaciados.
|
||||
|
||||
## Entry point
|
||||
|
||||
|
||||
Reference in new issue
Block a user