# ESTADO DEL PROYECTO — Datos País sobre el Cuidado ## Documento de continuidad — 11 junio 2026 > Director: Marcos · Metodología: Maria Mersan · Contacto Fundación: Valeria Arce --- ## 1. URLs operativas | Recurso | URL | |---|---| | Formulario Demo | https://economia-cuidado.inqualityhq.com/?s=30000000-0000-0000-0000-000000000001 | | Formulario InQuality | https://economia-cuidado.inqualityhq.com/?s=30000000-0000-0000-0000-000000000002 | | Formulario Fundación Solidaridad | https://economia-cuidado.inqualityhq.com/?s=30000000-0000-0000-0000-000000000003 | | Dashboard — Todos | https://economia-cuidado.inqualityhq.com/dashboard?survey_id=00000000-0000-0000-0000-000000000000 | | Dashboard — InQuality | https://economia-cuidado.inqualityhq.com/dashboard?survey_id=30000000-0000-0000-0000-000000000002 | | Dashboard — Fundación Solidaridad | https://economia-cuidado.inqualityhq.com/dashboard?survey_id=30000000-0000-0000-0000-000000000003 | | Dashboard — Demo | https://economia-cuidado.inqualityhq.com/dashboard?survey_id=30000000-0000-0000-0000-000000000001 | | Control de respuestas | https://economia-cuidado.inqualityhq.com/admin/responses | --- ## 2. Infraestructura — OPERATIVA ✅ - **App:** Next.js 15.3.8 (CVE-2025-66478 resuelto ✅) - **DB:** Supabase self-hosted en Dokploy v0.29.4 - **VPS:** inq-mart-2, IP VPN: 172.20.5.11 - **Repos:** - App: `git.inquality.com.py/marcos/motor-de-encuestas` (rama main) - Supabase stack: `git.inquality.com.py/marcos/supabase-motor-fomularios` (rama master) - **API Supabase:** https://db.inqualityhq.com (Kong + SSL) - **Backups:** `/var/backups/supabase-prod/`, cron 3AM, GFS (3 días diarios + domingos 14 días) - **Studio:** solo vía SSH tunnel → `ssh -L 3001:localhost:3001 administrator@172.20.5.11` --- ## 3. Instrumento — v2.1 ACTIVO - **44 preguntas**, 8 secciones - **Salto triple:** 1.1=No AND 1.6=No AND 1.13=No → salta a 6.4 (validado con datos reales ✅) - **Nueva pregunta 6.6:** voluntariado en redes de apoyo (Sí/No/Tal vez) - **2.4 eliminada**, **2.1 → multiple_choice** - "Prefiero no decir" eliminado de todas las preguntas - Hint "Podés marcar más de una opción" en todas las multiple_choice - "Tecnología asistiva" en 1.3 y 1.10 --- ## 4. DB — estado actual | Tabla | Filas | |---|---| | organizations | 3 (Empresa Demo, InQuality, Fundación Solidaridad) | | surveys | 3 (una por organización) | | questions | 132 (44 × 3 surveys) | | responses | 15 (8 InQuality + 7 Demo — todas de prueba) | | answers | ~500 (estimado) | --- ## 5. Dashboard — multitenante operativo ✅ - Selector de empresa en el header: Todos / InQuality / Fundación Solidaridad / Demo - "Todos" usa UUID especial `00000000-0000-0000-0000-000000000000` → pool agregado - Implementado via flag en `_dash_responses` (migración `20260611000001`) - Validado visualmente con n=15: KPIs, heatmap departamental, perfil población ✅ --- ## 6. Vista de control /admin/responses - Tabla plana: una fila por answer, agrupada por submission - Colapsar/expandir por submission (Client Component island) - Excluye: `text_long`, `is_sensitive=true` (TECH-DEBT-008 — sin auth) - Sin columna "Tipo" --- ## 7. Método — Sprint 2 cerrado ✅ - `method/PATTERNS.md` y `method/ANTI_PATTERNS.md` creados en el repo - C.8 promovido a estable con casos reales del proyecto - AP.10 y AP.11 documentados con casos reales --- ## 8. Deuda técnica abierta | ID | Descripción | Bloqueante | |---|---|---| | TECH-DEBT-006 | Backup remoto S3 | SÍ — antes del primer dato real | | TECH-DEBT-007 | auth.jwt() deprecado en GoTrue v2.189+ | No (piloto) | | TECH-DEBT-008 | /admin/responses sin auth | No (URL no publicada) | | TECH-DEBT-009 | Rotar secrets Supabase post-CVE-2025-66478 | SÍ — antes del primer dato real | --- ## 9. Pendientes próxima sesión 1. TECH-DEBT-006 — backup remoto S3 2. TECH-DEBT-009 — rotar secrets Supabase 3. RE Index — confirmar mapeo G1/G2/G4/G5 → códigos seed con Marcos 4. Informe descargable — prometido en deck comercial 5. Onboarding empresas reales — cuando validación esté lista --- ## 10. Decisiones tomadas — no reabrir 1. Supabase en Dokploy siempre via modo Git 2. POSTGRES_PASSWORD siempre con `openssl rand -hex` 3. kong.yml: una sola entrada por bloque keyauth_credentials 4. SMTP_PORT=587 siempre explícito aunque SMTP esté desactivado 5. GOTRUE_EXTERNAL_ANONYMOUS_USERS_ENABLED=false siempre explícito 6. LUA_AUTH_EXPR con prefijo "Bearer " en kong-entrypoint.sh 7. NEXT_PUBLIC_SUPABASE_URL via Build Argument en Dokploy 8. App conecta a https://db.inqualityhq.com 9. /admin/responses no muestra is_sensitive=true sin auth (TECH-DEBT-008) 10. brand_config.org_name alimenta el nombre de empresa en el formulario 11. Organizaciones separadas para cada encuesta 12. conditional_rules referencian códigos de pregunta, no UUIDs 13. UUID cero `00000000-...` es el flag p_all del dashboard 14. Next.js pinneado a versión exacta `15.3.8` (sin caret) --- ## 11. Contexto comercial - 2 empresas comprometidas para piloto (InQuality y Fundación Solidaridad en espacio de pruebas) - Cronograma: JUN inicio · JUL-AGO relevamiento · SEP análisis · OCT informe + evento - Meta: 20 empresas pioneras - Precios: Gs. 4.5M (≤50) · 7.5M (≤200) · 12M (≤400) - GAPs deck vs producto: RE Index no implementado, informe descargable no existe - Contacto Fundación: Valeria Arce — ddff@fundacionsolidaridad.org.py · +595 991 854333 --- ## 12. Prompt para nueva sesión Pegá al inicio de la nueva conversación: --- Sos el copiloto técnico del proyecto "Datos País sobre el Cuidado" — plataforma soberana de encuestas sobre economía del cuidado en Paraguay. Tenemos múltiples sesiones de trabajo. Stack: Next.js 15.3.8 + Supabase self-hosted + Dokploy v0.29.4. URL: https://economia-cuidado.inqualityhq.com Repos en Gitea: git.inquality.com.py/marcos/ El estado completo está en `docs/estado/ESTADO_PROYECTO_JUNIO_2026.md` en el repo. Los prompts de etapas pasadas están en `sprints/`. Las reglas no negociables están en `CLAUDE.md`. Próximos pasos: [COMPLETAR CON LO QUE VAS A HACER]