Validaciones manuales¶
Parte manual de cada puerta del plan de implementación. Las ejecuta el experto de dominio / QA; el resultado se registra en el PR que cierra la fase.
F0 — Andamiaje¶
- Abrir la URL del deploy de Pages: el esqueleto carga.
GET /api/healthresponde con la lista de radares de la D1 real y sulast_seen_at.- Abrir un PR trivial: aparece el preview deployment con URL propia.
F1 — Contrato + DAL¶
- Con
DAL=fixture, la app arranca sin red (solo assets locales) y las rutas API devuelven las fixtures. - Con
DAL=live, las mismas rutas devuelven datos de la D1 del demo. - Editar a mano una fixture (renombrar una columna) → el contract test falla con mensaje claro.
F2 — Mapa + raster (la validación crítica)¶
- Abrir N0B del volumen más reciente de cada radar del demo.
- Abrir el mismo COG en QGIS con la misma paleta cargada (archivo QML generado desde el catálogo de paletas del viewer).
- Comparar lado a lado: geolocalización (costa, fronteras), extensión del producto, colores por rango de valores, tratamiento de nodata (0) y range folded (1).
- Mover el cursor sobre zonas de eco conocidas: el valor físico mostrado coincide con el pixel identificado en QGIS (± redondeo de nivel).
- Repetir en corto para los otros 6 productos raster (EET, DVL, DAA, DU3, DTA, N0G — atención al range folded en N0G).
- Cotejo cualitativo con el viewer legado: la semántica de paleta/leyenda de reflectividad se corresponde con la esperada por el experto (no hay comparación píxel a píxel — radares y productos distintos).
F3 — Selección + timeline + animación¶
- Copiar la URL de una vista (radar+producto+frame+overlays) y pegarla en otro navegador/incógnito: vista idéntica.
- Animar 20 frames de N0B: sin stutter perceptible en el hardware de referencia del equipo.
- Elegir un día con huecos de datos (o simularlo con fixtures): los huecos se ven marcados en el timeline, no rompen la animación.
- Verificar que el date picker no ofrece fechas fuera de la ventana de 72 h.
- Radar sin datos recientes (si lo hay): el semáforo de frescura lo señala.
F4 — Fenómenos + VWP¶
- Con un episodio convectivo real capturado como fixture: las celdas aparecen en las posiciones esperadas, con tracks pasado/pronóstico orientados según el movimiento conocido.
- La tabla de celdas ordena por VIL y sus valores coinciden con el tabular NST crudo (cotejo manual de 2–3 celdas).
- Charts de tendencia de una celda seguida ≥ 4 volúmenes: la serie es continua y coherente (sin saltos por confusión de
cell_id). - Markers de meso/TVS/granizo con atributos legibles en el popup.
- VWP: barbas y tabla contra el tabular crudo del producto NVW del mismo volumen (dirección/velocidad por altura, 2–3 niveles cotejados a mano).
F5 — Mosaico + i18n + pulido¶
- Mosaico con los 3 radares del demo: los solapes entre radares se ven razonables (sin costuras violentas), la animación mantiene fluidez.
- Cambiar
es↔endesde la URL y desde el selector: todo el chrome cambia; ningún string queda en el idioma anterior. - Recorrido con teclado por los controles principales; contraste de la leyenda sobre ambos temas.
- Abrir en un móvil real: layout usable, controles alcanzables.
F6 — Validación E2E (M5)¶
- Semana de operación: el experto usa el viewer contra el pipeline vivo a diario; se registra cada incidencia; cero bloqueantes al cierre.
- Al menos un episodio convectivo real observado en vivo con storm + VWP correctos.
- Deploy desde cero en un proyecto Pages limpio siguiendo solo la documentación: funciona sin pasos no documentados.
- Revisión de consumo del tier gratuito (lecturas D1, requests) tras la semana de uso: dentro de presupuesto.