Files
analiticaNucleo/RESTORATION_GUIDE.md
josedario87 226d807d76
All checks were successful
build-and-deploy / build (push) Successful in 7s
build-and-deploy / deploy (push) Successful in 2s
docs: add restoration guide for data analysis features
Add comprehensive documentation for restoring data analysis pages
that were put in maintenance mode during database migration.

Includes:
- Commit reference (608b4db) with original logic
- Commands to restore each file from git history
- Step-by-step restoration process
- Notes about Supabase to new data source migration
- File-by-file breakdown of removed functionality
2025-10-13 14:24:01 -06:00

191 lines
7.0 KiB
Markdown

# Guía de Restauración de Funcionalidades de Análisis de Datos
Este documento contiene información crítica para restaurar las funcionalidades de análisis de datos que fueron temporalmente deshabilitadas durante la migración a la nueva arquitectura de autenticación.
## Estado Actual
Las páginas de análisis de datos están en **modo mantenimiento**. Los usuarios pueden ver las páginas en la UI con un mensaje informativo, pero la lógica de negocio y conexión a datos han sido removidas.
## Commit con la Lógica Original
**Commit:** `608b4dbe267f4284d22fbea172ce4bce68a977ae`
**Fecha:** Mon Oct 13 13:37:52 2025 -0600
**Mensaje:** Remove all database dependencies and simplify application
### Archivos que contienen la lógica original:
```bash
# Para ver el código completo de un archivo antes de la eliminación:
git show 608b4db^:nuxt4-app/app/pages/explorer.vue
git show 608b4db^:nuxt4-app/app/pages/metadatos.vue
git show 608b4db^:nuxt4-app/app/pages/rawExplorer.vue
git show 608b4db^:nuxt4-app/app/pages/panorama.vue
git show 608b4db^:nuxt4-app/app/pages/comparativa-cosechas.vue
git show 608b4db^:nuxt4-app/app/pages/informe-ingresos.vue
# Para ver los endpoints del servidor:
git show 608b4db^:nuxt4-app/server/api/data/index.get.ts
git show 608b4db^:nuxt4-app/server/api/data/[table]/index.get.ts
git show 608b4db^:nuxt4-app/server/api/data/[table]/[...segment].get.ts
git show 608b4db^:nuxt4-app/server/api/metadata/index.get.ts
git show 608b4db^:nuxt4-app/server/api/metadata/[table]/index.get.ts
git show 608b4db^:nuxt4-app/server/api/metadata/[table]/[id].get.ts
```
## Páginas Afectadas
### 1. Explorador de Datos (`/explorer`)
- **Archivo actual:** `nuxt4-app/app/pages/explorer.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Exploración interactiva de tablas de datos con filtros y búsqueda
- **Líneas de código originales:** 378 líneas
### 2. Metadatos (`/metadatos`)
- **Archivo actual:** `nuxt4-app/app/pages/metadatos.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Visualización de estructura de tablas y metadatos
- **Líneas de código originales:** 171 líneas
### 3. Explorador de Datos Raw (`/rawExplorer`)
- **Archivo actual:** `nuxt4-app/app/pages/rawExplorer.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Exploración de datos en formato raw sin procesamiento
- **Líneas de código originales:** 795 líneas
### 4. Panorama Facturador (`/panorama`)
- **Archivo actual:** `nuxt4-app/app/pages/panorama.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Dashboard de métricas de facturación
- **Líneas de código originales:** 359 líneas
### 5. Comparativa de Cosechas (`/comparativa-cosechas`)
- **Archivo actual:** `nuxt4-app/app/pages/comparativa-cosechas.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Análisis comparativo entre diferentes cosechas
- **Líneas de código originales:** 530 líneas
### 6. Informe de Ingresos (`/informe-ingresos`)
- **Archivo actual:** `nuxt4-app/app/pages/informe-ingresos.vue`
- **Estado:** Modo mantenimiento
- **Funcionalidad original:** Reportes detallados de ingresos
- **Líneas de código originales:** 1,181 líneas
## Componentes y Configuración Eliminados
### Dependencias Removidas
```json
{
"@supabase/supabase-js": "^2.48.0"
}
```
### Configuración de Supabase Removida
- Variables de entorno: `SUPABASE_URL`, `SUPABASE_SERVICE_ROLE_KEY`
- Configuración en `nuxt.config.ts`: runtimeConfig.supabase
- Cache de Supabase en service worker
### Endpoints del Servidor Eliminados
```
/server/api/data/
├── index.get.ts (9 líneas)
├── [table]/
│ ├── index.get.ts (30 líneas)
│ └── [...segment].get.ts (22 líneas)
└── /server/api/metadata/
├── index.get.ts (5 líneas)
├── [table]/
│ ├── index.get.ts (15 líneas)
│ └── [id].get.ts (12 líneas)
```
**Total de líneas eliminadas:** 3,649 líneas
## Proceso de Restauración Recomendado
### Fase 1: Recuperar el código original
```bash
# 1. Crear una rama para la restauración
git checkout -b feature/restore-data-features
# 2. Restaurar un archivo específico
git checkout 608b4db^ -- nuxt4-app/app/pages/explorer.vue
# 3. O restaurar todos los archivos de una vez
git checkout 608b4db^ -- nuxt4-app/app/pages/explorer.vue
git checkout 608b4db^ -- nuxt4-app/app/pages/metadatos.vue
git checkout 608b4db^ -- nuxt4-app/app/pages/rawExplorer.vue
git checkout 608b4db^ -- nuxt4-app/app/pages/panorama.vue
git checkout 608b4db^ -- nuxt4-app/app/pages/comparativa-cosechas.vue
git checkout 608b4db^ -- nuxt4-app/app/pages/informe-ingresos.vue
# 4. Restaurar endpoints del servidor
git checkout 608b4db^ -- nuxt4-app/server/api/data/
git checkout 608b4db^ -- nuxt4-app/server/api/metadata/
```
### Fase 2: Actualizar la fuente de datos
El código original usaba Supabase como fuente de datos. Necesitarás:
1. **Reemplazar las llamadas a Supabase** con tu nueva fuente de datos
2. **Actualizar los endpoints del servidor** para conectar con la nueva base de datos
3. **Adaptar las queries** al nuevo esquema de datos si es diferente
4. **Probar cada página individualmente** antes de sacarla de mantenimiento
### Fase 3: Remover el modo mantenimiento
Una vez que una página esté funcionando:
1. La lógica restaurada ya no usará `<MaintenanceMode />`
2. Remover el badge de "Mantenimiento" del sidebar en `AppSidebar.vue`:
```typescript
// Cambiar de:
{
label: 'Explorador de datos',
icon: 'i-lucide-table',
to: '/explorer',
badge: { label: 'Mantenimiento', color: 'amber' }
}
// A:
{
label: 'Explorador de datos',
icon: 'i-lucide-table',
to: '/explorer'
}
```
## Notas Importantes
- El componente `MaintenanceMode.vue` debe mantenerse en el código aunque se restauren las funcionalidades, puede ser útil para futuras situaciones similares
- Los archivos actuales en modo mantenimiento son solo 15-16 líneas cada uno, muy fáciles de reemplazar
- La autenticación con Authentik ya está funcionando correctamente, no necesita modificarse
- Los endpoints de auth (`/api/auth/status` y `/api/auth/check-group`) siguen funcionando y no fueron afectados
## Comandos Útiles
```bash
# Ver el diff completo de lo que se eliminó
git diff 608b4db^ 608b4db
# Ver el contenido de un archivo específico
git show 608b4db^:nuxt4-app/app/pages/explorer.vue > /tmp/explorer-original.vue
# Listar todos los archivos cambiados en ese commit
git show 608b4db --stat
# Ver el historial completo de un archivo
git log --follow -- nuxt4-app/app/pages/explorer.vue
```
## Historial de Commits Relevantes
- `2cf2242` - Add maintenance mode to data analysis pages
- `608b4db` - Remove all database dependencies and simplify application ⭐ **ESTE ES EL COMMIT IMPORTANTE**
- `1baa4de` - Remove legacy authentication and PostgreSQL configuration
- `4a3624b` - Add SessionStatusButton to navbar
## Contacto
Si tienes dudas sobre la restauración, revisa este documento y el commit `608b4db` para entender el estado anterior del código.