diff --git a/docs/2025-11-01-plan-refactor-tecnico.md b/docs/2025-11-01-plan-refactor-tecnico.md index c32518b..6550e69 100644 --- a/docs/2025-11-01-plan-refactor-tecnico.md +++ b/docs/2025-11-01-plan-refactor-tecnico.md @@ -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 — Svelte: dividir componentes grandes: 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. ### Lote 7 — Cobertura en módulos flojos