Files
mercadodevida/work/artifacts/TPV-FIXES/implementer.md
2026-08-25 06:31:00 +02:00

51 lines
1.7 KiB
Markdown

# TPV-FIXES — Implementer Report
## Cambios Realizados
### 1. Fix favicon 404 (storefront)
**Archivo:** `project/storefront/src/app/layout.tsx`
```diff
export const metadata: Metadata = {
title: 'mercadodevida',
description: '...',
alternates: { canonical: absoluteUrl('/') },
+ icons: { icon: '/favicon.ico', shortcut: '/favicon.ico' },
openGraph: { ... },
};
```
**Rationale:** El storefront tenía `public/favicon.ico` pero Next.js App Router no lo servía automáticamente. Agregar la referencia en metadata resuelve el 404.
### 2. Fix Cashier label (POS Receipt)
**Archivo:** `project/apps/pos/src/components/ReceiptModal.tsx`
```diff
- <strong>Cajero:</strong> {receipt.cashier}
+ <strong>Cajero:</strong> {receipt.cashier?.split('@')[0] ?? '—'}
```
**Rationale:** `receipt.cashier` contiene el email completo del usuario (ej: `cajero1@tienda.com`). Mostrar solo la parte antes del @ es más legible y profesional.
### 3. pos/sales 400 error
**Estado:** REQUIERE MÁS INFORMACIÓN
No hay logs específicos del error. El análisis sugiere posibles causas:
- Código de payment en mayúsculas que no pasa regex Zod
- Falta de header `x-terminal-id` en ciertas condiciones
**Recomendación:** Solicitar al reporter los detalles del request/response que falla.
## Archivos Modificados
1. `project/storefront/src/app/layout.tsx` — favicon metadata
2. `project/apps/pos/src/components/ReceiptModal.tsx` — cashier label format
## Testing Recomendado
1. Navegar storefront → verificar que favicon carga en browser tab
2. Crear venta POS → verificar receipt muestra nombre de cajero sin @
3. Para bug 400: proporcionar request/response específicos si persiste
## Complejidad: Low
## Riesgo: Low
## Impacto: UX (favicon, label legible)