25 lines
2.3 KiB
JSON
25 lines
2.3 KiB
JSON
{
|
|
"feature_id": "F-059",
|
|
"agent": "reviewer",
|
|
"verdict": "APPROVED",
|
|
"summary": "Two coherent changes. Backend now resizes with sharp fit:'inside' and a 1.4 height ratio, producing non-square thumbnails that fit inside a bounded box. Every frontend product image container was switched from aspect-square + object-cover to aspect-[5/7] + max-h-* + object-contain. No more `object-cover` or `aspect-square` references in product image contexts.",
|
|
"evidence": [
|
|
"git diff project/apps/admin/src/app/api/upload/route.ts — MAX_HEIGHT_RATIO constant + fit:'inside' resize",
|
|
"git diff project/apps/admin/src/app/uploads/[...path]/route.ts — same resize change",
|
|
"git diff project/frontend/src/app/uploads/[...path]/route.ts — same resize change",
|
|
"git diff project/storefront/src/app/uploads/[...path]/route.ts — same resize change",
|
|
"git diff project/frontend/src/app/products/page.tsx — aspect-[5/7] max-h-72 + object-contain",
|
|
"git diff project/frontend/src/app/products/[slug]/page.tsx — aspect-[5/7] max-h-[500px] + object-contain",
|
|
"git diff project/frontend/src/app/brands/[slug]/page.tsx, search/page.tsx, categories/[slug]/page.tsx, components/home/FeaturedProducts.tsx — same pattern applied to all card grids",
|
|
"git diff project/frontend/src/components/checkout/CheckoutClient.tsx, components/cart/CartPageContent.tsx, components/layout/Header.tsx — small thumbnails now use object-contain and /uploads/40/",
|
|
"git diff project/apps/admin/src/app/(dashboard)/products/page.tsx — w-10 h-14 wrapper with object-contain",
|
|
"git diff project/apps/admin/src/features/products/components/sections/ImagesSection.tsx — aspect-[5/7] max-h-72 wrapper, object-contain, served from /uploads/200/",
|
|
"git diff project/storefront/src/app/productos/[slug]/page.tsx, components/product-card.tsx — object-contain + bounded container",
|
|
"grep -rn 'object-cover|aspect-square' project/{apps/admin,frontend,storefront}/src — zero hits",
|
|
"curl /products HTML — only aspect-[5/7] and object-contain present",
|
|
"Live uploads verified: 600x800 -> 40x53 and 200x267; 400x1600 -> 14x56 and 70x280; 800x400 -> 40x20 and 200x100; 800x800 -> 40x40 and 200x200",
|
|
"npm run typecheck / test / build — green for backend and all 3 Next apps",
|
|
"./scripts/verify.sh — exit 0"
|
|
],
|
|
"timestamp": "2026-08-19T14:10:00Z"
|
|
} |