feat(F-165): completed feature

This commit is contained in:
chattie
2026-08-22 18:15:58 +02:00
parent 9152b3a65e
commit 29c2a4495c
11 changed files with 71 additions and 35 deletions

View File

@@ -6805,6 +6805,38 @@
"security": false,
"qa": false
}
},
{
"id": "F-165",
"type": "fix",
"title": "Use brand logo in collapsed sidebar",
"description": "Replace collapsed sidebar leaf emoji with logo-main.png while preserving icon-only dimensions and accessibility.",
"priority": "high",
"risk": "low",
"status": "done",
"created_at": "2026-08-22",
"gates": {
"reviewer": true,
"security": true,
"qa": true,
"close": true
},
"completed_at": "2026-08-22T16:15:58Z"
},
{
"id": "F-166",
"type": "fix",
"title": "Remove duplicate VAT rate in storefront price",
"description": "Product frontend price repeats IVA 10% in inclusive and breakdown labels; show the VAT rate only once without losing gross/net meaning.",
"priority": "med",
"risk": "low",
"status": "pending",
"created_at": "2026-08-22",
"gates": {
"reviewer": false,
"security": false,
"qa": false
}
}
]
}

View File

@@ -102,7 +102,11 @@ function Sidebar({ role, email, collapsed, mobileOpen, onCloseMobile, onLogout }
alt="mercadodevida"
className={`mx-auto h-9 w-auto object-contain ${collapsed ? 'lg:hidden' : ''}`}
/>
<span className={`hidden h-9 items-center justify-center text-2xl ${collapsed ? 'lg:flex' : ''}`} aria-hidden="true">🌿</span>
<img
src="/images/logo-main.png"
alt="mercadodevida"
className={`mx-auto hidden h-9 w-9 object-contain ${collapsed ? 'lg:block' : ''}`}
/>
<div className="absolute right-2 top-4 lg:hidden">
<SidebarToggle expanded={mobileOpen} onToggle={onCloseMobile} mode="mobile" />
</div>

View File

@@ -0,0 +1,3 @@
# F-165 — Diseño
Reutilizar `/images/logo-main.png` para ambos estados. El logo expanded se oculta solo en desktop collapsed; una segunda instancia cuadrada `h-9 w-9 object-contain` aparece únicamente en ese estado. No se introduce asset nuevo.

View File

@@ -0,0 +1,3 @@
# F-165
El sidebar colapsado usa el logo oficial `logo-main.png`; no usa emoji.

View File

@@ -0,0 +1,3 @@
# F-165 — Implementer
Sustituido emoji por segunda instancia de `/images/logo-main.png` en desktop collapsed (`h-9 w-9 object-contain`). Build admin y TypeScript PASS; no queda emoji en layout.

View File

@@ -0,0 +1 @@
{"feature_id":"F-165","agent":"leader","stage":"close","verdict":"APPROVED","checks":[{"item":"all gates/build","ok":true}],"issues":[]}

View File

@@ -0,0 +1 @@
{"feature_id":"F-165","agent":"qa","stage":"qa_gate","verdict":"APPROVED","checks":[{"item":"emoji removed","ok":true},{"item":"collapsed logo dimensions","ok":true},{"item":"build","ok":true}],"issues":[]}

View File

@@ -0,0 +1 @@
{"feature_id":"F-165","agent":"reviewer","stage":"review_gate","verdict":"APPROVED","checks":[{"item":"brand asset reused","ok":true},{"item":"build","ok":true}],"issues":[]}

View File

@@ -0,0 +1 @@
{"feature_id":"F-165","agent":"security","stage":"security_gate","verdict":"APPROVED","checks":[{"item":"local static asset only","ok":true}],"issues":[]}

View File

@@ -1,16 +1,3 @@
# Feature activa: F-161Complete admin order detail information
# F-165Use brand logo in collapsed sidebar
## Diagnóstico
El pedido existente se creó con `user_id` de `backoffice_users` porque Checkout usa `combinedAuth`, que prioriza `backoffice_session` si ambos cookies existen. Por eso el JOIN a `identity_users` no encuentra email, perfil ni dirección. La UI además oculta por completo Cliente, Direcciones y Pago cuando faltan datos.
## Solución
- Checkout debe usar exclusivamente el autenticador de identidad/customer.
- El detalle obtiene nombre/teléfono desde `users_profiles` como fallback.
- Las tarjetas Cliente, Envío, Facturación y Pago siempre aparecen, mostrando estado explícito cuando un dato no fue registrado.
- Reparar la asociación del pedido local afectado con el cliente correcto.
## Aceptación
- El pedido muestra email, nombre, teléfono y dirección de envío.
- No aparece el falso aviso «El cliente no tiene email asociado».
- Pago/facturación ausentes se muestran como «No registrado», no desaparecen.
- Futuros checkouts no usan sesiones backoffice.
Sustituir el emoji del sidebar colapsado por `/images/logo-main.png`, con dimensiones icon-only y `alt="mercadodevida"`. Mantener el logo completo en expanded/mobile.

View File

@@ -1,68 +1,68 @@
{
"feature_id": "F-161",
"feature_id": "F-165",
"stage": "close",
"agent": "leader",
"action": "Close complete order detail fix",
"action": "Close collapsed logo fix",
"state": "running",
"next_agent": "leader",
"waiting_for": "Seleccionar una feature pending y actualizar este estado",
"updated_at": "2026-08-22T16:13:24Z",
"updated_at": "2026-08-22T16:15:43Z",
"timeline": [
{
"ts": "2026-08-22T16:05:41Z",
"ts": "2026-08-22T16:13:46Z",
"agent": "leader",
"stage": "intake",
"state": "running",
"message": "Audit order detail customer, shipping and payment data"
"message": "Replace collapsed emoji with brand logo"
},
{
"ts": "2026-08-22T16:07:57Z",
"ts": "2026-08-22T16:13:57Z",
"agent": "architect",
"stage": "design",
"state": "running",
"message": "Design customer-only checkout auth and complete detail fallbacks"
"message": "Specify collapsed brand mark"
},
{
"ts": "2026-08-22T16:08:21Z",
"ts": "2026-08-22T16:14:08Z",
"agent": "implementer",
"stage": "build",
"state": "running",
"message": "Fix checkout ownership and order detail read model"
"message": "Render logo-main in collapsed sidebar"
},
{
"ts": "2026-08-22T16:12:38Z",
"ts": "2026-08-22T16:14:37Z",
"agent": "reviewer",
"stage": "review_gate",
"state": "running",
"message": "Review order ownership and detail completeness"
"message": "Review collapsed brand logo"
},
{
"ts": "2026-08-22T16:12:50Z",
"ts": "2026-08-22T16:14:54Z",
"agent": "security",
"stage": "security_gate",
"state": "running",
"message": "Verify customer ownership isolation"
"message": "Check static asset change"
},
{
"ts": "2026-08-22T16:13:04Z",
"ts": "2026-08-22T16:15:02Z",
"agent": "qa",
"stage": "qa_gate",
"state": "running",
"message": "Validate order customer/address/payment sections"
"message": "Validate collapsed logo acceptance"
},
{
"ts": "2026-08-22T16:13:13Z",
"ts": "2026-08-22T16:15:31Z",
"agent": "documenter",
"stage": "document",
"state": "running",
"message": "Document complete order detail"
"message": "Document collapsed logo"
},
{
"ts": "2026-08-22T16:13:24Z",
"ts": "2026-08-22T16:15:43Z",
"agent": "leader",
"stage": "close",
"state": "running",
"message": "Close complete order detail fix"
"message": "Close collapsed logo fix"
}
]
}