feat(frontend): página /challenges jugable (structured-answer) + fix tipado 404 #12

Merged
mane merged 1 commit from feat/challenge-frontend into main 2026-06-29 19:52:04 +00:00
Owner

PR-2: el slice de Challenge ahora se VE y se JUEGA en la UI.

  • /challenges: lista los challenges, abre uno, deja seleccionar opciones y enviar;
    muestra el verdict (score %, passed) y, por pregunta, ✓/✗ + el PORQUÉ (rationale).
    Reintentar / Volver. Requiere sesión (userId). Progreso se invalida al enviar.
  • lib/assessment: server-fns Eden listChallenges / getChallenge / submitChallenge.
  • backend: GET /:id y POST /:id/attempt usan status(404,...) en vez de devolver
    {error} inline → Eden infiere data limpio (sin esto el front no tipa). Comportamiento
    idéntico (404 con mensaje).

Verificado: build de ambas imágenes, tsc frontend y backend EXIT=0, biome limpio,
SSR 200 sin crash en /, /challenges, /feed, /knowledge, /login.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

PR-2: el slice de Challenge ahora se VE y se JUEGA en la UI. - /challenges: lista los challenges, abre uno, deja seleccionar opciones y enviar; muestra el verdict (score %, passed) y, por pregunta, ✓/✗ + el PORQUÉ (rationale). Reintentar / Volver. Requiere sesión (userId). Progreso se invalida al enviar. - lib/assessment: server-fns Eden listChallenges / getChallenge / submitChallenge. - backend: GET /:id y POST /:id/attempt usan `status(404,...)` en vez de devolver {error} inline → Eden infiere `data` limpio (sin esto el front no tipa). Comportamiento idéntico (404 con mensaje). Verificado: build de ambas imágenes, tsc frontend y backend EXIT=0, biome limpio, SSR 200 sin crash en /, /challenges, /feed, /knowledge, /login. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(frontend): página /challenges jugable (structured-answer) + fix tipado 404
Some checks failed
CI / quality (pull_request) Failing after 22s
CI / integration (pull_request) Failing after 28s
620aef7155
PR-2: el slice de Challenge ahora se VE y se JUEGA en la UI.

- /challenges: lista los challenges, abre uno, deja seleccionar opciones y enviar;
  muestra el verdict (score %, passed) y, por pregunta, ✓/✗ + el PORQUÉ (rationale).
  Reintentar / Volver. Requiere sesión (userId). Progreso se invalida al enviar.
- lib/assessment: server-fns Eden listChallenges / getChallenge / submitChallenge.
- backend: GET /:id y POST /:id/attempt usan `status(404,...)` en vez de devolver
  {error} inline → Eden infiere `data` limpio (sin esto el front no tipa). Comportamiento
  idéntico (404 con mensaje).

Verificado: build de ambas imágenes, tsc frontend y backend EXIT=0, biome limpio,
SSR 200 sin crash en /, /challenges, /feed, /knowledge, /login.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
mane merged commit 1d2895bf94 into main 2026-06-29 19:52:04 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
mane/dev-platform!12
No description provided.