@ -94,6 +94,8 @@ Resultados esperados después del refactor: disminución drástica de duplicados
- Lote 6.0-6.2 completados: DB Locator mínimo, conexión en bootstrap con setDb y ruta única de DB (centralización y reexport en web); sin cambios funcionales; tests y typecheck limpios; commits: 9222242, 6196dba, 2669d42.
- Lote 6.3 completado: adopción piloto con fallback en ResponseQueue y TaskService; añadido smoke test de fallback (tests/unit/locator.fallback.test.ts); tests y typecheck limpios; commit relevante: 77ad9d7.
- Lote 6.4 completado: adopción progresiva de servicios al locator (fallback parámetro → .dbInstance → getDb()) en CommandService, RemindersService, MaintenanceService, AdminService y fachada de GroupSync; tests y typecheck limpios; commits: cd83455, f786ba8.
- Lote 6.5 completado: limpieza de .dbInstance, añadido resetDb/clearDb en locator, migración de tests al locator; nota: ~8 tests frágiles en paralelo; en CI ejecutar la suite en un solo worker.
- Estado: Lote 6 completado.
## Estado actual (2025-11-10)
@ -106,7 +108,7 @@ Resultados esperados después del refactor: disminución drástica de duplicados
- Lote 4 — ICS central y rutas homogéneas: Completado.
- Lote 5.5 — Refactor de servicios grandes (god classes): Completado.
- Lote 6 — DB Locator / DI ligera: En curso (PRs 6.0, 6.1, 6.2, 6.3 y 6.4 completados).
- Lote 6 — DB Locator / DI ligera: Completado (PRs 6.0–6.5).
- Lote 7 — Cobertura en módulos flojos: Pendiente.
## Fase 2 — Plan de refactor por lotes (PRs pequeñas y seguras)
@ -363,11 +365,11 @@ Cada lote incluye objetivo, cambios, métricas y comprobaciones. Mantener tests
- bunx tsc -p tsconfig.core.json --noEmit
- bun test --coverage
PR 6.5 — Limpieza opcional (cuando no queden usos de .dbInstance)
- Archivos a modificar:
- Eliminar propiedades estáticas dbInstance de servicios ya migrados.
- Actualizar tests que aún dependan de ellas.
- Nota: no es obligatorio para completar el lote; puede posponerse a una fase de limpieza.
PR 6.5 — Limpieza final — Completado
- Hecho:
- Eliminadas propiedades estáticas dbInstance de servicios migrados a locator.
- Añadidos resetDb/clearDb en src/db/locator.ts para tests.
- Migrados tests a setDb(...) y resetDb()/clearDb(); se observa flakiness en ejecución paralela en ~8 tests. Recomendación: ejecutar la suite en un solo worker en CI.