Files
apps-registry/workloads/ecommerce
devopsandClaude Opus 5.5 cfd9a7ec96 feat(reseñas): reseñas de productos de compradores verificados, moderadas
Backend (commerce-backend):
- Módulo product-review (tabla nueva product_review; migración generada con
  medusa db:generate, no toca tablas existentes).
- GET /store/reviews?product_id (solo aprobadas), /store/reviews/summary,
  GET /store/reviews/me y POST /store/reviews con auth de cliente: exige que
  el pedido sea del cliente, no esté cancelado y contenga el producto
  ("Compra verificada"); 1 reseña por cliente y producto; nace "pending".
- /admin/reviews (+ /:id POST status, DELETE) y página "Reseñas" en el admin
  para aprobar/rechazar/borrar.

Storefront (ecommerce):
- /cuenta/pedidos ("Mis pedidos"): historial real + diálogo "Califica tu
  compra" (radiogroup accesible, flechas de teclado).
- Ficha: sección de reseñas con "Compra verificada" y estrellas junto al
  título; tarjetas: promedio y cantidad (una llamada /api/reviews/summary).
- Accesos: "Mis pedidos y reseñas" en la cuenta y en Ayuda.

Validado en entorno descartable (Postgres/Redis/Meilisearch/Medusa propios):
E2E de API 20/20 (incluye pedido interno por draft order, cancelación y
borrado), E2E de tienda con navegador 15/15, admin "Reseñas" verificado en
build de producción. Revisado por frontend-critic (contraste de estrellas
amber-600, patrón radiogroup).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_018r19s4H8MBGegqToqw5guP
2026-09-27 07:57:20 +00:00
..
2026-07-24 06:40:21 +00:00
2026-07-31 23:27:01 -05:00

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-blend ni 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/image en modo unoptimized porque los recursos ya vienen procesados; evita latencia del optimizador durante la primera visita.
  • Menos componentes animados con JavaScript; las tarjetas usan transiciones CSS.
  • content-visibility para contenido fuera de pantalla.
  • Pantalla loading.tsx para 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.