51 lines
1.7 KiB
Markdown
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)
|