diff --git a/main.py b/main.py index 77ee02a..fda39aa 100644 --- a/main.py +++ b/main.py @@ -308,6 +308,9 @@ def add_telemetry(body: TelemetryIn, db: Session = Depends(get_db)): # Un envío = una instalación activa ese día que cede estadística. add("__submissions__", active=1) + # Versión de la app (para ver la fragmentación): clave 'ver:'. + version = (body.app_version or "unknown").strip()[:16] + add(f"ver:{version}", active=1) for m in (body.active_modules or [])[:40]: add(m, active=1) for m, c in (body.opens_by_module or {}).items(): diff --git a/test_telemetry.py b/test_telemetry.py index 1c08729..9769a05 100644 --- a/test_telemetry.py +++ b/test_telemetry.py @@ -46,6 +46,10 @@ def test_telemetria_agrega_y_resume(): # Una subsección de Aprende con tiempo, sin ser módulo activo. assert by_module["aprende:sueno"]["seconds"] == 45 assert by_module["aprende:sueno"]["opens"] == 0 + # Versión de la app (fragmentación): el primer envío fue 2.27.0, el segundo + # sin versión → 'unknown'. + assert by_module["ver:2.27.0"]["activeInstallDays"] == 1 + assert by_module["ver:unknown"]["activeInstallDays"] == 1 # fasting: activo en 2 envíos, 0 aperturas. assert by_module["fasting"]["activeInstallDays"] == 2 assert by_module["fasting"]["opens"] == 0