- Agregar id único (/?app=analitica), launch_handler, handle_links y url_handlers
- Unificar workflow de 2 jobs (build + deploy) a 1 solo job
- Workaround para bug de Gitea que solo ejecuta el primer job
- Agregar capture_links en manifest para mejorar experiencia PWA
- Crear archivo .well-known para asociación con inicio.nucleoriofrio.com
- Actualizar Traefik para servir recursos PWA y .well-known sin autenticación
- Crear componente MetabaseCardDisplay para mostrar detalles de queries
- Crear componente MetabaseCardsTable para listar todas las queries
- Crear página /metabase-debug con vistas de tabla, cards y queries Panorama
- Agregar API routes para cards de Metabase (GET, POST, export)
- Actualizar metabase.ts para soportar API Key authentication
- Agregar configuración de Metabase API Key en nuxt.config.ts
- Documentar todos los endpoints disponibles en METABASE_API_ENDPOINTS.md
Change Metabase URL from public domain to Docker container name
for proper internal network communication between containers.
Changes:
- Update default METABASE_URL to http://metabase:3000
- Docker DNS resolution works correctly with container names
- Maintains public domain fallback via environment variables
This fixes authentication issues when containers communicate
within the same Docker network.
Remove all client-side state management and data caching as the
application no longer needs to manage data analysis features.
Changes:
- Remove Pinia store system (app/stores/ directory)
- metadata.ts: Store for table metadata
- tableDataFactory.ts: Factory for creating table data stores
- README.md: Comprehensive store documentation
- Remove IndexedDB storage utility (app/utils/storage.ts)
- Remove Pinia dependencies from package.json
- @pinia/nuxt
- pinia
- Remove Pinia module from nuxt.config.ts
- Remove vendor-pinia chunk configuration
- Remove server services (server/services/ directory)
- table-service.ts: Supabase-dependent table operations
- query-parser.ts: Query parsing utilities
- query-runner.ts: Query execution utilities
The application now operates as a stateless authentication portal
without client-side data caching or state management.
BREAKING CHANGE: Remove all data analysis features
This commit removes all database-dependent functionality and simplifies
the application to focus on authentication and user management only.
Changes:
- Remove all /api/data and /api/metadata server endpoints
- Remove Supabase configuration from nuxt.config.ts and .env.example
- Remove @supabase/supabase-js dependency from package.json
- Delete data analysis pages: explorer, metadatos, rawExplorer, panorama,
comparativa-cosechas, informe-ingresos
- Simplify sidebar navigation to show only "Inicio"
- Update home page to focus on authentication and profile management
- Remove "Supabase" and "Solo lectura" badges from navbar
- Keep only auth-related API endpoints: /api/auth/status and /api/auth/check-group
The application now serves as an authentication-protected portal with:
- Authentik SSO integration
- User profile management
- Settings and notifications pages (coming soon)
- No database or data analysis features
- Changed ssr: false to ssr: true in nuxt.config.ts
- This is critical for useAuthentik() to read headers during server-side rendering
- Without SSR, the composable cannot access Authentik proxy headers
- User authentication state will now be properly initialized on page load
- Migrar de useAuth() a useAuthentik() para autenticación SSR
- Actualizar componentes UserMenu, AppSidebar y profile.vue
- Configurar docker-compose.yml con variables dinámicas
- Agregar Gitea Actions workflow para build y deploy automático
- Implementar hook de monitoreo de Gitea Actions
- Configurar secrets y variables para deploy seguro
- Actualizar configuración de Traefik con Authentik Forward Auth
- Agregar SUPABASE_SERVICE_ROLE_KEY al workflow de Gitea Actions
- Usar variable correcta en docker-compose.yml
- Desactivar navigateFallback en workbox para evitar error de precached-url
- Actualizar documentación con los 3 secretos necesarios
- Agregar headers CORS para manifest.webmanifest y service worker
- Configurar navigateFallback a /index.html con denylist para rutas API y Authentik
- Mapear SUPABASE_ANON_KEY a SUPABASE_SERVICE_ROLE_KEY en docker-compose
- Agregar headers Cross-Origin para PWA detrás de proxies