Saltar a contenido

Informe informatico EPPA

Fecha: 2026-05-05 Repo canonico: larancibia/labis-eppa-software Issue de seguimiento: https://github.com/larancibia/labis-eppa-software/issues/15

Resumen ejecutivo

El repositorio canonico para el trabajo EPPA quedo identificado como labis-eppa-software. Los repositorios similares y carpetas historicas deben tratarse como fuentes o duplicados hasta cerrar el inventario, no como lineas activas de desarrollo.

El estado informatico actual combina tres frentes:

  • Validacion numerica MATLAB/Python con 19 fixtures comparables verdes y 1 caso pendiente (TC_ANT_009 shoulder_angle).
  • Paridad E2E con el video de uso, ya automatizada en Cypress para flujos principales, API, tablas, screenshots y descarga CSV.
  • Plan de UX/UI basado en el video MATLAB, con issues especificos para home, captura, vistas de analisis, herramientas manuales y export Excel.

Fuentes consolidadas

Fuentes locales principales:

  • docs/source-manifest.tsv
  • sources/drive/Presentacion-Posturografia.mp4
  • sources/gmail/cristina-oleari/19b74bc8f6591a0c/Python y Optimizacion 2025-2026.docx
  • sources/gmail/cristina-oleari/19b74bc8f6591a0c/Tablas DPC por vistas y regiones en espanol.docx
  • sources/gmail/cristina-oleari/199cac7bad9e6af3/Mia *.jpg
  • sources/gmail/cristina-oleari/199cac7bad9e6af3/Marcadores_ID_MLdic24_*.mat
  • datos/data/matlab/*
  • matlab_validation/*
  • docs/testing/video-parity-report.md
  • docs/ui-video-frames/frame-*.jpg

Issues fuente:

  • Fuentes y duplicados: #1, #14
  • MATLAB/Python: #2, #3, #4, #5, #6
  • UI/E2E: #7, #8, #9, #10, #11, #12, #13

Trabajo realizado

Validacion MATLAB/Python

Se confirmo que el proyecto ya tiene una base de validacion matematica contra MATLAB:

  • scripts/validate_matlab_fixtures.py
  • tests/test_matlab_validation.py
  • matlab_validation/scripts/*
  • python/calculations*.py

Estado observado antes de este informe:

  • 19 fixtures comparables passing.
  • 0 failures.
  • 1 skip por expected faltante: TC_ANT_009 shoulder_angle.

El objetivo de #2 es convertir esa validacion en gate estable. El objetivo de

3 es eliminar el unico skip conocido.

Correcciones y E2E ya aplicados

Commits relevantes:

  • 7e56a35 Stabilize EPPA e2e parity tests
  • e75af1f Harden EPPA parity assertions
  • ed43ebb Add EPPA video parity screenshot baseline

Evidencia observada despues de esos commits:

  • npm run test:e2e: 53 passing, 0 failing, 6 specs.
  • npm run test:e2e -- --spec cypress/e2e/06-video-parity-baseline.cy.ts: 19 passing, 18 screenshots.
  • npm run build: OK.
  • npm run typecheck: OK.
  • python3 scripts/validate_matlab_fixtures.py: 19 comparables passing, 1 skipped.
  • pytest tests/test_matlab_validation.py -q --tb=short: 31 passed, 1 skipped.

Riesgo operativo conocido: Cypress puede emitir un crash configFile/EACCES. scripts/run-e2e.sh ya contempla retry.

Estado activo de #12

El issue #12 queda como trabajo activo. Al momento de este informe existe un cambio local no commiteado en:

  • cypress/support/commands.ts

Ese cambio agrega el comando cy.assertResultValue(...) para validar valores visibles redondeados en tablas UI. No se incluye en este informe ni se revierte. Debe integrarse dentro de #12.

Valores objetivo propuestos para cerrar #12:

  • Anterior cabeza: Angulo de inclinacion cabeza, esperado -1.40.
  • Posterior cabeza: Angulo de inclinacion cabeza, esperado 0.55.
  • Posterior pelvis: Angulo de Inclinacion Pelvis, esperado 0.11.
  • Lateral derecha cabeza: Angulo de cabeza con horizontal, esperado 49.00.
  • Lateral izquierda cabeza: Angulo de cabeza con horizontal, esperado 48.65.

Pendientes tecnicos principales

M0 - Fuentes y organizacion

  • 1: completar manifiesto SHA-256 con fuente, sensibilidad y destino canonico.

  • 14: documentar repos duplicados y preparar cleanup sin ejecutar borrados.

M1 - EPPA Core

  • 2: mantener validacion MATLAB/Python como gate reproducible.

  • 3: completar TC_ANT_009 shoulder_angle.

  • 4: extraer marcadores minimos por variable desde MATLAB.

  • 5: validar DPC, rangos, signos y diagnosticos contra adjuntos de Cristina.

  • 6: armar regression pack con Mia y datos locos.

M2 - UI y E2E

  • 7: cerrar brief v0/Recraft/Figma desde video MATLAB.

  • 8: redisenar home como menu clinico operativo.

  • 9: redisenar captura con paridad MATLAB.

  • 10: unificar layout de cuatro vistas.

  • 11: cubrir herramientas manuales y tangentes laterales.

  • 12: terminar parity E2E con assertions numericas visibles.

  • 13: validar export Excel contra MATLAB.

Politica de evidencia

Cada cambio debe dejar:

  • Issue vinculado.
  • Comando ejecutado.
  • Resultado de test o razon documentada si no se pudo ejecutar.
  • Fuente clinica o MATLAB cuando cambia formula, rango, signo o diagnostico.
  • Evidencia de privacidad cuando se agregan fotos, .mat, xlsx o adjuntos.

Comandos canonicos

npm run typecheck
npm run build
PYTHON=/tmp/labis-eppa-venv311/bin/python npm run test:e2e
python3 scripts/validate_matlab_fixtures.py
/tmp/labis-eppa-venv311/bin/pytest tests/test_matlab_validation.py -q --tb=short

Riesgos

  • El expected faltante de TC_ANT_009 impide decir que no hay skips.
  • Los adjuntos DPC/normalidad pueden contener datos sensibles o formatos dificiles de versionar; versionar solo derivaciones anonimas si corresponde.
  • UI y formulas no deben desacoplarse: una mejora visual que cambia nombres, signos o redondeos debe tener test.
  • No borrar ni archivar repos duplicados sin gate humano.

Siguiente paso recomendado

Cerrar #12 primero: integrar assertResultValue, agregar assertions numericas visibles, ejecutar targeted E2E y suite completa, actualizar docs/testing/video-parity-report.md, commitear y comentar evidencia en GitHub.