01 / Producto web · Educación clínica
Diagnostique
Un juego diario de razonamiento clínico en portugués. Pistas progresivas, hasta seis intentos y un archivo de casos anteriores.

Decisión 01
Revelar una pista también es una decisión de API.
La interfaz en React y TypeScript refleja los intentos. El backend en Fastify determina qué información puede recibir la sesión en cada paso.
La respuesta inicial incluye las pistas reveladas y el número total de pistas. La respuesta correcta y la explicación quedan fuera de ese estado.
Qué comprueba el test
El test de serialización compara las pistas devueltas con el subconjunto revelado y comprueba que no se incluyan la respuesta, la explicación ni una pista futura. Es evidencia del contrato en el código, no una métrica de uso.

Decisión 02
El historial conserva su referencia.
Las definiciones del contenido tienen revisiones en SQLite. Cada publicación referencia una de ellas y conserva el contexto en el que comenzó una sesión.
Los tests comprueban que una edición crea una revisión nueva sin sustituir la definición histórica y que las publicaciones anteriores conservan su referencia.
La relación que se conserva
Los tests cubren tanto la definición histórica como el vínculo entre publicación y revisión. La captura del archivo da contexto al historial; la implementación y los tests aportan la evidencia de consistencia.
Decisión y coste. Conservar revisiones mantiene la consistencia, pero exige distinguir definición, revisión y publicación. Actualizar el contenido deja de ser una simple sustitución del registro anterior.
Abrir Diagnostique · Se abre en otra pestañaCódigo privado
Casos ficticios con fines educativos.