# 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`.
