Al responder "No" en las tres, el formulario salta a 6.4 (no muestra secciones 2-5 ni 6.1-6.3) La pregunta 6.6 aparece antes del cierre Las preguntas multiple_choice muestran el hint "Podés marcar más de una opción"
7.8 KiB
ETAPA 3I2 — Revisión del instrumento v2.1 (feedback equipo médico)
1. Objetivo
Aplicar 10 cambios al instrumento "Mapeo de Cuidadores" resultado del feedback del equipo de salud. Los cambios afectan SEED_SPEC.md, seed.sql, y el código del formulario Next.js.
2. Contexto previo
- Instrumento actual: v2, 44 preguntas, 8 secciones, en
SEED_SPEC.md. - La DB tiene al menos 1 respuesta real. Algunos cambios son breaking para datos existentes (opciones renombradas, tipo cambiado) — documentar en OBSERVATIONS.md, no bloquear.
- El formulario Next.js usa un sistema de conditional_rules en el JSON de cada pregunta.
- Los 3 triggers (1.1, 1.6, 1.13) controlan bloques condicionales enteros.
3. DECISIONES YA TOMADAS — no consultar de nuevo
- Cambio 4: el salto a 6.4 ocurre cuando las TRES preguntas 1.1, 1.6, 1.13 dan "No" simultáneamente. Si al menos una da "Sí", las secciones 2-5 y 6.1-6.3 se muestran normalmente.
- Cambio 4: las secciones 2, 3, 4, 5, 6.1, 6.2, 6.3 se saltean completamente — ir directo a 6.4.
- Cambio 5: 2.1 pasa a multiple_choice. Es breaking para datos existentes — documentar, no bloquear.
- Cambio 6: 2.4 se elimina del seed. Si hay respuestas con question_id de 2.4, se pierden al re-seedear. Documentar en OBSERVATIONS.md.
- Cambio 4: pregunta 6.6 opciones: Sí · No · Tal vez.
- Cambio 3: "Tecnología asistiva" va en penúltima posición (antes de "No utilizo"/"No utiliza").
- "Prefiero no decir" se elimina de TODAS las preguntas que lo tengan.
4. Los 10 cambios — especificación exacta
Cambio 1 — Eliminar "Prefiero no decir" de todo el instrumento
Preguntas afectadas: A5, A6, 1.1, 1.5, 1.6, 1.13, 2.5, 3.1, 3.4. En cada una, eliminar la opción "Prefiero no decir" del array de opciones en seed.sql. En SEED_SPEC.md, eliminarla de la columna Opciones de cada pregunta.
⚠️ Los triggers 1.1, 1.6, 1.13 quedan con solo 2 opciones: Sí · No. La lógica condicional no cambia — solo "Sí" dispara el bloque.
Cambio 2 — Subtítulo hint en todas las preguntas multiple_choice
En el componente del formulario que renderiza preguntas de tipo multiple_choice,
agregar un subtítulo/hint debajo del prompt: "Podés marcar más de una opción".
Preguntas afectadas: 1.2, 1.3, 1.7, 1.8, 1.9, 1.10, 1.15, 2.3, 3.2, 3.3, 4.2, 6.2.
Es un cambio de UI — no afecta seed.sql ni SEED_SPEC.md.
Cambio 3 — Agregar "Tecnología asistiva" en 1.3 y 1.10
1.3 opciones actuales: Silla de ruedas · Bastón · Andador · Muletas · Prótesis · No utilizo 1.3 opciones nuevas: Silla de ruedas · Bastón · Andador · Muletas · Prótesis · Tecnología asistiva · No utilizo
1.10 opciones actuales: Silla de ruedas · Bastón · Andador · Muletas · Prótesis · No utiliza 1.10 opciones nuevas: Silla de ruedas · Bastón · Andador · Muletas · Prótesis · Tecnología asistiva · No utiliza
Cambio 4 — Salto condicional triple + nueva pregunta 6.6
4a. Lógica de salto
Cuando las tres responden "No": 1.1="No" AND 1.6="No" AND 1.13="No", las secciones 2, 3, 4, 5 completas + preguntas 6.1, 6.2, 6.3 se ocultan. El formulario salta directamente a 6.4.
Implementación sugerida: agregar una regla condicional en las preguntas de las secciones 2-5 y 6.1-6.3 que las oculte cuando se cumple esa condición triple. La forma exacta de implementarlo (conditional_rules en cada pregunta vs. lógica en el componente de sección) la decide Claude Code según la arquitectura existente del formulario.
4b. Nueva pregunta 6.6
Agregar al final de la Sección 6 (después de 6.5, antes de Sección 7):
- Code: 6.6
- Tipo: single_choice
- Pregunta: "¿Estarías dispuesto/a a ser voluntario/a en iniciativas y/o redes de apoyo a personas con discapacidad y/o cuidadores?"
- Opciones: Sí · No · Tal vez
- is_sensitive: false
- top-level (siempre visible)
Actualizar position de 7.1 para que quede después de 6.6. Actualizar el conteo total de preguntas en SEED_SPEC.md (pasa de 44 a 45, o 44 si se compensa con la eliminación de 2.4 — verificar el conteo final).
Cambio 5 — 2.1 pasa a multiple_choice
Cambiar tipo de single_choice a multiple_choice en seed.sql y SEED_SPEC.md.
Agregar nota en SEED_SPEC.md:
"⚠️ TECH-DEBT: múltiple selección sin orden de prioridad. Deuda: implementar ranking
(Principal cuidador soy yo > secundario instituto > principal pagado > secundario familiar)."
Cambio 6 — Eliminar 2.4
Eliminar la pregunta 2.4 ("¿Contás con apoyo de otras personas para el cuidado?") del seed.sql y SEED_SPEC.md. Renumerar positions de las preguntas posteriores si es necesario. Documentar en OBSERVATIONS.md: "2.4 eliminada por feedback equipo médico (similar a 2.1)."
Cambio 7 — En 3.1 eliminar "Sin gastos significativos"
El cambio 1 ya elimina "Prefiero no decir" de 3.1. Adicionalmente, eliminar "Sin gastos significativos" de las opciones de 3.1. 3.1 opciones finales: Menos de Gs. 500.000 · Gs. 500.000–1.500.000 · Gs. 1.500.000–3.000.000 · Gs. 3.000.000–6.000.000 · Más de Gs. 6.000.000
Cambio 8 — En 3.3 cambiar texto de opción
Cambiar: "Es difícil sostenerlo con mis ingresos" Por: "No puedo sostenerlo con mis ingresos" En seed.sql y SEED_SPEC.md. Documentar en OBSERVATIONS.md: "Respuestas existentes con el texto anterior quedan con valor 'Es difícil sostenerlo con mis ingresos' — breaking change en datos existentes."
Cambio 9 — En 3.4 reestructurar primera franja salarial
Opción actual: "Sueldo mínimo – Gs. 5.000.000" Reemplazar por dos opciones:
- "Sueldo mínimo"
- "Gs. 3.000.000 a 5.000.000" Las demás franjas no cambian. Documentar en OBSERVATIONS.md: "Respuestas existentes con 'Sueldo mínimo – Gs. 5.000.000' quedan con valor anterior — breaking change en datos existentes."
Cambio 10 — En 6.1 cambiar texto de última opción
Cambiar: "No, nunca se ha hablado del tema" Por: "No, no se puede hablar del tema" En seed.sql y SEED_SPEC.md. Documentar en OBSERVATIONS.md: "Breaking change en datos existentes para esta opción."
5. Archivos a modificar
| Archivo | Cambios |
|---|---|
SEED_SPEC.md |
Todos los cambios de opciones, tipos, preguntas nuevas/eliminadas |
supabase/seed.sql |
Todos los cambios — es la fuente de verdad para re-seedear |
| Componente formulario (multiple_choice) | Cambio 2: agregar hint |
| Lógica condicional del formulario | Cambio 4a: salto triple |
OBSERVATIONS.md o TECH_DEBT.md |
Documentar breaking changes y nueva deuda |
6. Entregables (DoD)
- SEED_SPEC.md actualizado con todos los cambios.
- seed.sql actualizado — re-seedeable desde cero produce el instrumento v2.1.
- Componente multiple_choice muestra hint "Podés marcar más de una opción".
- Lógica de salto 1.1+1.6+1.13 todos "No" → salta a 6.4.
- Pregunta 6.6 visible en el formulario.
- "Prefiero no decir" ausente en todas las preguntas.
- 2.4 eliminada del seed.
- Breaking changes documentados en OBSERVATIONS.md.
- Build exitoso.
git diff --name-only HEADen scope.
7. Qué reportar
Verificado:
- SEED_SPEC.md actualizado ✓
- seed.sql actualizado ✓
- Conteo final de preguntas: [N]
- Hint en multiple_choice: ✓
- Salto triple implementado: ✓ (describir cómo)
- 6.6 agregada ✓
- "Prefiero no decir" eliminado de: [lista de preguntas]
- 2.4 eliminada ✓
- Build exitoso ✓
- Diff en scope ✓
Breaking changes documentados en OBSERVATIONS.md:
- [lista]
Asumido:
- [decisiones de implementación]
8. Qué NO hacer
- ❌ No re-seedear la DB de producción — solo actualizar seed.sql. Re-seedear producción requiere aprobación explícita del director.
- ❌ No cambiar la estructura de tablas ni agregar columnas — solo opciones y lógica.
- ❌ No tocar el dashboard ni las RPCs.
- ❌ No resolver ítems de TECH_DEBT que no estén listados acá.
- ❌ No cambiar el diseño visual del formulario más allá del hint de multiple_choice.