25 lines
1.3 KiB
Markdown
25 lines
1.3 KiB
Markdown
# F-158 — Implementer
|
|
|
|
## Implementación
|
|
- El cliente POS usa exclusivamente `/api`, nunca `localhost:3000` desde el navegador.
|
|
- El proxy Next usa `POS_BACKEND_URL` server-only con fallback `127.0.0.1:3000`.
|
|
- El proxy reenvía sesión, terminal y Content-Type; propaga `Set-Cookie` del login.
|
|
- La vinculación guarda `pos_terminal_id` como cookie HttpOnly durante un año y el proxy la traduce a `x-terminal-id`.
|
|
- Middleware reconoce la cookie real `mdv_session` además de nombres legacy.
|
|
- Añadida pantalla de vinculación inicial de 8 caracteres y estados de error/reintento.
|
|
- Corregidos errores TypeScript previos del esqueleto POS (`NextLayout`, tipos de config/customer/catch).
|
|
- `allowedDevOrigins` permite `192.168.18.93` y `localhost`.
|
|
|
|
## Evidencia
|
|
- `cd project/apps/pos && npm run build`: PASS, 4 rutas + middleware.
|
|
- `cd project/apps/pos && npx tsc --noEmit`: PASS.
|
|
- `cd project && node_modules/.bin/tsc --noEmit`: PASS.
|
|
- Login proxy: HTTP 200 + cookie `mdv_session`.
|
|
- Bind proxy: HTTP 200 + cookie `pos_terminal_id`.
|
|
- Config proxy autenticado/vinculado: HTTP 200 con store, terminal y métodos de pago.
|
|
- Servicios persistentes: 3000, 3004 y 3006 escuchando.
|
|
- `./scripts/verify.sh`: PASS.
|
|
|
|
## Configuración local
|
|
Se creó `TPV Principal` para la tienda por defecto. Código de vinculación: `B794401C`.
|