# ESTADO DEL PROYECTO — Datos País sobre el Cuidado ## Documento de continuidad — 25 junio 2026 > Director (Product Owner): Marcos · Claude (Projects) = arquitecto/copiloto · Claude Code = implementación > Metodología: Maria Mersan · Contacto Fundación: Valeria Arce --- ## 1. Versionado y ramas - **Producción:** 2.1.0 (formulario lineal) — los 3 surveys en `draft` - **Desarrollo:** 3.0.0 (wizard + dashboard nuevo) en `main`, NO desplegado aún - **Preservación:** `v2.1.0-stable` + tag `v2.1.0` - SemVer + CHANGELOG + tags. ADRs en `docs/adr/`. ⚠️ Los 3 surveys están en `draft` a propósito (el frontend v2 desplegado no entiende seed v3). Se reactivan a `live` al desplegar v3 completo. --- ## 2. Sprint 4 — Wizard v3 — Formulario COMPLETO, falta release | Etapa | Estado | |---|---| | 4.0 Preservación v2 | ✅ | | 4A instance_id | ✅ prod | | 4B esquema declarativo + seed v3 | ✅ prod | | 4C motor de flujo (lib/form-engine.ts, puro) | ✅ | | 4D wizard renderer (layout estable) | ✅ | | 4E instancias (emergente del motor) | ✅ | | 4G submit + validación server-side (RPC transaccional) | ✅ verificado vs Postgres real | | 4F autocomplete barrios (UX) | ⏳ pendiente | | 4I validación e2e + tag v3.0.0 + desplegar + reactivar surveys | ⏳ pendiente | El formulario v3 funciona end-to-end: motor, wizard, instancias, submit con validación server-side (RPC `rpc_submit_response`, único camino de escritura, verificado). --- ## 3. Dashboard v3 — DECISIÓN MAYOR: rediseño de "tres miradas" **Decisión:** NO migrar las RPCs v2 (referencian códigos inexistentes en v3). En su lugar, dashboard nuevo de tres miradas, fundamentado en marcos reales (OIT 5R, CEPAL, PNCUPA Paraguay). ### Estado - **Mirada Empresa:** ✅ RPCs implementadas y VERIFICADAS contra 50 respuestas reales. E1-E4 exactos, estrella "Talento en riesgo" con umbral parametrizable, E9 segmentación con k≥5. Migraciones `20260625000001` (fix helper) + `20260625000002` (11 RPCs). Commiteado. Widgets del frontend: PENDIENTE (etapa siguiente). - **Mirada País y Mirada Humana:** propuesta + mockup listos, implementación DIFERIDA a sprint de dashboard post-deadline. ### Documentos (en docs/dashboard/) - `PROPUESTA_DASHBOARD_v3.md` — las 3 miradas, ~30 métricas, marcos citados honestamente - `dashboard_tres_miradas_mockup.html` — mockup funcional 3 pestañas - `SPEC_MIRADA_EMPRESA.md` — contrato técnico de las 10 métricas + estrella ### Decisiones del dashboard - CUIDADOR_ACTIVO incluye "hijo menor sin discapacidad" (criterio UNFPA, validado por Maria). Definido en helper `_dash_es_cuidador`. - Mirada Empresa NO expone datos sensibles (3.x, 4.2, 4.3). Solo 4.1 existencia, 6.x, 7.x, 9.x, 2.6, 2.7. - Métrica por persona vs por instancia: presentar ambas rotuladas; k≥5 sobre count(DISTINCT response_id). - 2 gaps de datos marcados [REQUIERE PREGUNTA]: horas cuidado no remunerado (País), escolarización niñez (Humana). Para el sprint de dashboard. --- ## 4. Deuda técnica y seguridad | ID | Descripción | Prioridad | |---|---|---| | TECH-DEBT-006 | Backup remoto S3 | Antes de datos reales | | TECH-DEBT-009 | Rotar secrets post-CVE | Antes de datos reales | | TECH-DEBT-010 | E9 lee modalidad por JOIN a answers (2.7) en vez de qi_modalidad. Promover si se usa seguido | Baja | | SEC-002 | Sprint compliance (audit log, hashing, cifrado en reposo) | Sprint dedicado | | SEC-003 | Agujero TRUNCATE evade ADR-003 | Antes de datos reales | | SEC-004 | RPC validable por bypass REST (coherencia de flujo en Server Action) | Sprint futuro | | BACKLOG-002 | Fase 2: motor genérico | Post-deadline | --- ## 5. Infraestructura - Next.js 15.3.8 · Supabase self-hosted · Dokploy v0.29.4 · VPS inq-mart-2 (172.20.5.11) - App: economia-cuidado.inqualityhq.com · API: db.inqualityhq.com - Repos Gitea: git.inquality.com.py/marcos/motor-de-encuestas - Para sembrar datos de prueba: `seed_prueba_50.sql` (en docs/dashboard/), 50 respuestas deterministas vía RPC. Usa question_id (UUIDs), NO question_code. Incluye su limpieza. --- ## 6. Próximos pasos 1. **Widgets de Mirada Empresa** — el frontend del dashboard que consume las RPCs ya verificadas. La spec (SPEC_MIRADA_EMPRESA.md) define shapes de retorno; el mockup define el aspecto. 2. **4F autocomplete barrios** — subir `geo_paraguay_full.json` (8152 barrios) a public/data/. 3. **4I release** — validación e2e, tag v3.0.0, desplegar v3, reactivar surveys a live. 4. **Sprint de dashboard (post-deadline):** Miradas País y Humana, preguntas faltantes (bienestar, horas no remuneradas, escolarización), decisión qi_modalidad. Orden sugerido para go-live: widgets Mirada Empresa → 4F → 4I. --- ## 7. Contexto comercial - 2 clientes inminentes en ~10-20 días (deadline v3). Mirada Empresa es la que le habla al cliente que paga. - InQuality y Fundación Solidaridad en joint venture. --- ## 8. Prompt para nueva sesión ``` Sos el arquitecto/copiloto técnico de "Datos País sobre el Cuidado", motor de formularios soberano (Paraguay). Yo soy el product owner. Sprint 4: wizard v3 (ADR-005, esquema declarativo). Estado completo: docs/estado/ESTADO_PROYECTO_JUNIO_2026.md. Formulario v3: COMPLETO y verificado (motor, wizard, submit con validación server-side). Dashboard: rediseño de "tres miradas". Mirada Empresa = RPCs implementadas y verificadas contra datos reales; faltan sus widgets. País/Humana diferidas a sprint posterior. Pendiente go-live: widgets Mirada Empresa → 4F (barrios) → 4I (release). Los 3 surveys en draft (v3 no desplegado aún). Próximo paso: [COMPLETAR] ```