docs(status): módulo 3 implementado, plan de prueba en dispositivo
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
> Estado vivo del desarrollo. **Actualizar al cerrar cada hito o sesión de trabajo.**
|
||||
> Si retomas en un chat nuevo: lee CLAUDE.md (arquitectura/convenciones), PRD-Rachita.md (requisitos) y este archivo (dónde vamos), en ese orden.
|
||||
|
||||
**Última actualización:** 2026-07-03 (sesión 2)
|
||||
**Última actualización:** 2026-07-04 (sesión 3)
|
||||
|
||||
---
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|---|---|---|
|
||||
| 1. Onboarding / Selección de avatar | ✅ **Hecho y verificado en dispositivo real** | Compose + MVVM + DataStore; mascotas 100 % Canvas |
|
||||
| 2. Dashboard de hábitos + racha | ✅ **Hecho y verificado en dispositivo real, punta a punta** | Toggle → contador → racha → XP → banner → persistencia tras force-stop |
|
||||
| 3. Monitoreo de batería (overlay <20 % + bloqueo en carga) | ⬜ Siguiente | `BatteryStatusMonitor` ya existe como base; notas en CLAUDE.md §8 |
|
||||
| 3. Monitoreo de batería (overlay <20 % + bloqueo en carga) | 🟨 **Implementado + tests; falta prueba en dispositivo** | El teléfono se desconectó antes de poder probar — plan abajo |
|
||||
|
||||
### Verificado en dispositivo (2026-07-03, Huawei HBP-LX9, Android 12)
|
||||
- Onboarding completo: título, 4 tarjetas, mascotas animadas, badge, CTA, persistencia y navegación.
|
||||
@@ -75,5 +75,22 @@
|
||||
|
||||
## Próximos pasos (en orden)
|
||||
|
||||
1. Módulo 3 — Batería: overlay <20 % con mascota cansada (estados tired/sleep en `MascotIllustrations`), Activity de bloqueo en carga con verificación real de desconexión (`BatteryStatusMonitor` ya provee el flow).
|
||||
2. Sprint 2+: backend .NET 10 + deploy PapuTec (CLAUDE.md §4), CI Gitea Actions.
|
||||
1. **Probar módulo 3 en dispositivo** (commit `9bfe43b`, APK ya compilado). Con el teléfono conectado:
|
||||
- Bloqueo de carga: abrir la app conectada por USB → el candado nocturno aparece solo.
|
||||
"Ya la desconecté" NO desbloquea (muestra "sigo conectada"); desconectar el cable sí lo quita.
|
||||
En build debug hay botón "salir (debug)" abajo.
|
||||
- Batería baja SIN esperar descarga: `adb shell dumpsys battery unplug` +
|
||||
`adb shell dumpsys battery set level 18` → overlay con mascota cansada y 18 %.
|
||||
Probar bandas: "Ahora no" → set level 14 → reaparece (15) → 9 → 4. Al final:
|
||||
`adb shell dumpsys battery reset`.
|
||||
- Al 100 % cargando: `dumpsys battery set level 100` (enchufado) → mascota despierta (CA-05).
|
||||
2. Diseño visual del bloqueo/overlay: contrastar contra el prototipo (timings §6.4 ya aplicados).
|
||||
3. Sprint 2+: backend .NET 10 + deploy PapuTec (CLAUDE.md §4), CI Gitea Actions.
|
||||
|
||||
## Detalles de implementación del módulo 3 (para retomar)
|
||||
|
||||
- `ui/battery/`: `BatteryUxViewModel` (estados None/LowBattery/Charging), `LowBatteryOverlay`, `ChargingLockScreen`; host en `MainActivity.BatteryUxHost` sobre el NavHost.
|
||||
- CA-04 es estructural: la pantalla de bloqueo se quita SOLO cuando `BatteryStatusMonitor` emite desconexión real; el botón nunca desbloquea.
|
||||
- BA-03: `LowBatteryPolicy` (dominio puro, 7 tests) — descartar en banda 20 silencia hasta caer a 15, etc. Conectar el cargador resetea el ciclo.
|
||||
- Mascota: `MascotMood.Idle/Tired/Sleep` en `MascotIllustrations.kt` (sudor menta, Z's con stagger de 3).
|
||||
- Escape de desarrollo: "salir (debug)" solo `BuildConfig.DEBUG` (el equipo de pruebas vive conectado por USB).
|
||||
|
||||
Reference in New Issue
Block a user