Files
mercadodevida/work/current.md
2026-08-20 21:34:12 +02:00

2.4 KiB

Feature actual

Backlog: 157 features (147 done, 9 pending, 1 in_progress).

Últimas features cerradas: F-080, F-081, F-082, F-083, F-084, F-085, F-086, F-087.

Incidencia actual (2026-08-20)

El enlace de producto del listado admin apunta a http://192.168.18.93:3003/productos/<slug>, pero el frontend customer usa /products/<slug>. F-089 corrige únicamente ese path.

Última incidencia resuelta (2026-08-20)

F-088 cerrada con todos los gates aprobados. El admin responde HTTP 200 en http://192.168.18.93:3004/.

Symptom reportado por el operador (2026-08-20)

http://192.168.18.93:3004/ERR_CONNECTION_REFUSED. El servicio admin del monolito no se mantiene en pie. Diagnóstico:

  • monolith.sh prod status → admin exited during startup, log: Could not find a production build in the '.next' directory.
  • apps/admin/.next/ existe pero no contiene BUILD_ID ni required-server-files.json.
  • npx tsc --noEmit en apps/adminerror TS2353 en tax-rates/page.tsx(59,33): 'appliesTo' does not exist in type 'Partial<{ name: string; ratePercent: number; active: boolean; }>'.

Root cause

F-085 añadió el handler saveTipo que llama a taxApi.update(id, { appliesTo }) y extendió la página con UI de edición inline, pero olvidó extender la firma de taxApi.update en apps/admin/src/lib/api-client.ts. Resultado: next build aborta por typecheck, no se genera BUILD_ID, next start falla y el admin no puede servir nada en :3004. El backend en pricing.routes.ts ya valida y persiste appliesTo, así que el fix es 100% frontend (type only).

Fix

Ampliar la firma Partial<{...}> de taxApi.update para aceptar appliesTo: 'general' | 'reduced' | 'super-reduced' (mismo enum que el backend). Después: npm run build en apps/admin produce BUILD_ID, monolith.sh prod mantiene el admin vivo y http://192.168.18.93:3004/ responde 200.

Pending tickets

No quedan tickets F-* pendientes. El backlog mantiene nueve tickets de otras líneas para futura selección.

Nota de intake (2026-08-20)

El operador reportó ERR_CONNECTION_REFUSED en :3004. El triage lo une a F-085 (cambio parcial sin actualizar la firma TS). Se crea F-088 para reparar la regresión sin reabrir F-085, y se ejecuta por orquestra secuencial.