Fase 3b (ultima) de ADR 0006 Etapa 2: los conteos de categoria/marca/edad del sidebar de /catalog dejan de ser un snapshot client-side fijo. Ahora se refetchean en vivo contra /api/search en cada cambio de filtro (query debounced 300ms), tres llamadas paralelas -- una por dimension, cada una omitiendo su propio filtro para preservar el patron Amazon de "cuantos resultados habria si eligiera este otro valor". - catalog-client.tsx: useMemo client-side originales pasan a ser fallback (mock/shopify sin searchWithFacets, o cuando la categoria activa es un grupo raiz sintetico que Meilisearch no puede filtrar). - ProductFilters gana `limit` opcional; /api/search y el provider medusa lo reenvian -- las llamadas de solo-conteo piden limit=0 para no rehidratar precios de productos que no se van a mostrar.
ARI Shopping Headless Storefront v4.1
Actualización enfocada en UX, interactividad y rendimiento sobre Next.js 15.5.10.
Correcciones principales
- Encabezado blanco premium con acentos cyan, violeta, fucsia y navegación negra.
- Imágenes promocionales sin
opacity,mix-blendni filtros de color. - Menú principal funcional mediante Drawer accesible de Radix UI.
- Cuenta y favoritos funcionales.
- Carrusel con flechas, teclado, scroll suave y
scroll-snap. - Zoom real de producto entre 100% y 300%, rueda, botones, doble clic y arrastre.
- Thumbnails WebP dedicados para tarjetas, búsqueda, carrito y favoritos.
- Recursos originales recomprimidos y caché HTTP para
/images. next/imageen modounoptimizedporque los recursos ya vienen procesados; evita latencia del optimizador durante la primera visita.- Menos componentes animados con JavaScript; las tarjetas usan transiciones CSS.
content-visibilitypara contenido fuera de pantalla.- Pantalla
loading.tsxpara transiciones de ruta.
Validación
npm ci
npm run typecheck
npm run build
Flujo
Gitea → Gitea Actions → Registry → actualización de frontend.yaml → Argo CD → Kubernetes.