79 lines
3.6 KiB
Markdown
79 lines
3.6 KiB
Markdown
# BACKLOG.md
|
|
|
|
> Ítems pendientes que no entran en el sprint actual. El agente NO los ejecuta
|
|
> sin aprobación del director (Nivel 3 salvo indicación contraria).
|
|
|
|
---
|
|
|
|
## Seguridad
|
|
|
|
### [SEC-001] Actualizar Next.js — CVE pendiente en 15.3.3
|
|
- **Estado:** Pendiente
|
|
- **Prioridad:** Alta
|
|
- **Contexto:** Next.js 15.3.3 tiene un CVE conocido. La versión no se actualizó
|
|
en la tarea del 2026-06-02 para no mezclar cambios con el fix de producción de
|
|
chromedriver. Actualizar en el próximo ciclo de mantenimiento.
|
|
- **Acción:** `npm install next@latest` + verificar que el build y la app sigan
|
|
funcionando antes de deployar.
|
|
- **Nota:** revisar changelog de Next.js por breaking changes antes de actualizar.
|
|
|
|
---
|
|
|
|
## Técnico / Deuda
|
|
|
|
### [TECH-001] `npm audit` reporta 2 vulnerabilidades en deps de producción
|
|
- **Estado:** Pendiente de revisión
|
|
- **Contexto:** `npm audit` señala 1 moderate + 1 critical. Evaluar con
|
|
`npm audit --json` si afectan el runtime de la app o solo herramientas de build.
|
|
- **Acción:** `npm audit fix` (o fix manual) y re-verificar build.
|
|
|
|
### [TECH-002] Mockup `formulario_mapeo.html` no encontrado en el árbol de trabajo
|
|
- **Estado:** Pendiente
|
|
- **Contexto:** El BRIEF Sprint 2 lo cita como "contrato visual". El agente diseñó
|
|
la UI basándose en SEED_SPEC.md. Requiere validación visual del director contra
|
|
el mockup original.
|
|
|
|
### [TECH-003] Auditoría a11y interactiva pendiente (foco, aria-expanded, widgets)
|
|
- **Estado:** Pendiente
|
|
- **Contexto:** La auditoría de Etapa 2A se corrió sobre el HTML SSR estático
|
|
(jsdom). La verificación de componentes interactivos (foco al abrir bloque
|
|
condicional, aria-expanded en triggers, operación solo con teclado) requiere
|
|
auditoría en browser real.
|
|
- **Acción:** Correr axe-cli con Chrome 149+ (o actualizar Chrome a 149) y
|
|
hacer test manual de navegación por teclado.
|
|
|
|
---
|
|
|
|
## Features
|
|
|
|
*(Sprint 3 y posteriores — ver ARCHITECTURE.md y BRIEF por sprint)*
|
|
|
|
### [BACKLOG-001] Consentimiento inicial editable desde admin
|
|
- **Estado:** hoy el texto del consentimiento está hardcoded en `consent-screen.tsx`.
|
|
- **Necesidad:** cuando se construya el motor de formularios (builder), el texto del
|
|
consentimiento debe ser editable por encuesta desde la administración, para reflejar
|
|
cambios en política de privacidad o ajustes específicos por tipo de relevamiento.
|
|
- **Bloquea:** implementación del builder visual.
|
|
- **Decisión cerrada:** la edición es desde admin, no desde el código.
|
|
|
|
---
|
|
|
|
### [BACKLOG-002] Fase 2 — Motor genérico de formularios
|
|
- **Estado:** Diferido post-deadline
|
|
- **Contexto:** En Sprint 4 se construye un intérprete del esquema declarativo específico
|
|
para el formulario de cuidadores (ADR-005, Fase 1). Una vez entregado ese caso, el
|
|
intérprete se extrae a un motor universal que interprete cualquier esquema definido en
|
|
`questions.conditional_rules` + campos de instanciación, sin hardcodear ningún formulario.
|
|
El formulario de cuidadores se vuelve el primer caso de prueba del motor sin reescribir
|
|
el contrato de datos.
|
|
- **Dependencia:** Fase 1 completada (Sprint 4 — wizard funcional).
|
|
- **Ver:** ADR-005 (`docs/adr/ADR-005-esquema-declarativo-formularios.md`).
|
|
|
|
- Dashboard / reportes (Sprint 3)
|
|
- Formulario de consentimiento + persistencia de respuestas (Etapa 2B)
|
|
- Builder visual de encuestas (post-validación del caso fijo)
|
|
- Integración LLM para análisis de texto libre (diferenciador)
|
|
- Modo B / controller_role dual (reservado en esquema)
|
|
- Columnas `qi_gender` / `qi_modality` en `responses` — decisión Nivel 3 abierta
|
|
(ver hallazgo en SEED_SPEC.md)
|