Skip to content

feat: batch 1014 — logos argentinos con control de calidad - #37

Draft
ferminrp wants to merge 16 commits into
mainfrom
cursor/add-100-logos-4655
Draft

ferminrp wants to merge 16 commits into
mainfrom
cursor/add-100-logos-4655

Conversation

@ferminrp

@ferminrp ferminrp commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Resumen

Segunda pasada de calidad del batch PR #37: logos hosteados normalizados, checker visual más estricto, hojas de contacto regeneradas y captura mobile con marcas nuevas del batch.

Checker (check:logos)

  • Métricas de recorte: área mínima (~20% en marcas cuadradas), lado corto en wordmarks, lado largo ≥25%, opacidad y contraste.
  • Detección invisible en fondo claro: composición sobre blanco + evaluateInvisibleOnLightBackground (luminancia alta, dHash vs original).
  • Fixtures obligatorios: must-fail-accord-salud.png, must-fail-trapiche-white.png.
  • Normalización al hostear: normalize-tile-logo.ts (~68% del lado largo) vía scripts/refresh-hosted-logos.mts.

Cambios de catálogo (batch id ≥ 452)

  • 99 entidades en el batch (se quitó un slot problemático).
  • Reemplazos por logos débiles: Openpay → Mobbex, Prüne → Kosiuko, La Martina → Awada, Premier → SOS Salud, Open Sports → New Balance, Accord → Prevención Salud, Natura → Natura Cosméticos, etc.
  • Trapiche: wordmark blanco sobre tile bordó opaco (visible en hojas light).
  • Fuera del batch: Stella Artois → Heineken (logo hosteado); FinanzasArgy normalizado.

Artefactos

  • artifacts/loguitos/contact-sheet-light-01..03.png, contact-sheet-dark-01..03.png
  • grid-mobile-batch-section.png (390px, anclado en PlusPagos / Mobbex)
  • pr37-final-brands.json

Verificación

  • pnpm test:logos — 12/12
  • LOGO_CHECK_SKIP_REDIRECT=1 pnpm check:logos — 398 entidades OK (CI corre redirect completo)

Dudas visuales

  • ENARGAS y RENAPER en hoja light 2: wordmarks/sellos aún pequeños o pálidos; revisar en UI si hace falta otro activo oficial.
Open in Web Open in Cursor 

Note

Medium Risk
User-facing logo URLs and the download API behavior change broadly; CI and check scripts depend on external fetches and sharp processing, so regressions could affect many entity pages at once.

Reviewed by Cursor Bugbot for commit c49b377. Bugbot is set up for automated code reviews on this repo. Configure here.

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
@vercel

vercel Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
logos-ar Ready Ready Preview Oct 17, 2026 6:14am UTC

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Autofix Details

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: Telco copy lists missing Personal
    • Updated telecomunicaciones seoTopEntities and seoIntro to name Telecentro instead of Personal, matching the category entity list.

You can send follow-ups to the cloud agent here.

Comment thread lib/logos-data.ts Outdated
cursoragent and others added 3 commits October 17, 2026 00:39
Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
- Checker de logos (lib/logo-quality) con script pnpm check:logos y tests
- Workflow GitHub Actions logo-quality.yml en PRs que tocan datos de logos
- Overrides automáticos (data/logo-overrides.json) y PNGs en public/logos/
- Limpieza de dominios/categorías: sanatorios, bancos salientes, telecom, prepagas
- UI y API usan getEntityLogoUrl con fallback Google + overrides

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
@cursor cursor Bot changed the title feat: add 100 Argentine brand logos (GSC batch 1014) feat: batch 1014 — logos argentinos con control de calidad Oct 17, 2026

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 8 potential issues.

Autofix Details

Bugbot Autofix prepared fixes for all 8 issues found in the latest run.

  • ✅ Fixed: Shared domains mix distinct brands
    • Restored unique domains for AXION, Uilo Bank, Buenbit, Pampa Energía, and ANMAT so each entity resolves its own logo and download target.
  • ✅ Fixed: Downloads fail for hosted logos
    • The download route now resolves root-relative logo URLs against the request origin and sets response types from the fetched image format.
  • ✅ Fixed: ANMAT uses generic government domain
    • ANMAT’s catalog domain was changed to www.anmat.gob.ar so it no longer shares the Argentina.gob.ar override.
  • ✅ Fixed: Changan page removed despite demand
    • Re-added the Changan entity (id 358, changan.com.ar) to the automotrices category so /logo/changan is generated again.
  • ✅ Fixed: Copied logo URLs are not usable
    • Entity detail copy/Sheets actions use absolute catalog URLs and label the source via getEntityLogoSource instead of entity.logoUrl.
  • ✅ Fixed: BYD override is not an image
    • Updated the www.byd.com override to the site’s favicon.ico asset instead of an HTML landing page.
  • ✅ Fixed: Override URLs contain encoded ampersands
    • Decoded & to & in the bitkey.world and www.iveco.com override query strings.
  • ✅ Fixed: Generic-icon check uses a dummy hash
    • Replaced the placeholder digest with Google’s generic favicon SHA-256 and reject HTML/non-image logo responses in quality checks.

You can send follow-ups to the cloud agent here.

Comment thread lib/logos-data.ts
Comment thread lib/logos-data.ts Outdated
Comment thread lib/logos-data.ts
Comment thread app/api/logo-download/route.ts
Comment thread components/entity-detail.tsx
Comment thread data/logo-overrides.json Outdated
Comment thread data/logo-overrides.json Outdated
Comment thread lib/logo-quality/constants.ts
Restore distinct entity domains, fix hosted logo download/copy URLs,
correct override URLs, and tighten logo quality validation.
Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread app/api/logo-download/route.ts
Comment thread app/api/logo-download/route.ts
Convert non-PNG logo sources to PNG via sharp when format=png is requested.
Use embedMimeType with an image/* guard for SVG raster wrappers so
application/octet-stream upstream headers do not break data URIs.

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread app/api/logo-download/route.ts
Comment thread app/api/logo-download/route.ts
Extract embedded images from ICO containers before PNG conversion since
sharp cannot decode ICO directly, with passthrough fallback on failure.
Move sharp from devDependencies to dependencies for the API route runtime.

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread app/api/logo-download/route.ts
Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
- Amplía el batch (id ≥ 452) a 100 marcas argentinas con checker OK
- Buenbit consolidado en Nexo (aliases); Kevingston fuera; Toyota AR + hosted
- Hostea logos para CONICET, Rapsodia, redirects (Grido, Noblex, TGS)
- Scripts de contact sheet y captura mobile para artefactos Fermin

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread lib/logos-data.ts Outdated
Comment thread lib/logos-data.ts
},
{ id: 480, name: "Payway", domain: "www.payway.com.ar" },
{ id: 481, name: "Pagos360", domain: "pagos360.com" },
{ id: 578, name: "Cabify", domain: "cabify.com" },

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cabify listed under fintechs

Medium Severity

Cabify is added to fintechs, so it shows up beside wallets and payment apps. Cabify is a ride-hailing brand, which makes the fintech hub and related-logo list misleading.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit d7591f7. Configure here.

Comment thread lib/logos-data.ts
{ id: 585, name: "Vital", domain: "vital.com.ar" },
{ id: 586, name: "Cencosud", domain: "cencosud.com" },
{ id: 596, name: "Cetrogar", domain: "www.cetrogar.com.ar" },
{ id: 598, name: "Andreani", domain: "www.andreani.com" },

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Andreani listed under retail

Low Severity

Andreani is added to retail with supermarket and electronics chains. Andreani is a courier/logistics company, so the retail hub and related logos will present it as a store brand.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit d7591f7. Configure here.

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
cursoragent and others added 2 commits October 17, 2026 05:05
- Hostea logos oficiales/Wikimedia para ~30 marcas del batch con problemas
- Checker: dHash (casi-duplicados en batch), vacíos/bajo contraste y heurística foto
- Samsung pasa a Tecnologías; ANMAT usa anmat.gob.ar y logo propio
- Contact sheets claro/oscuro; captura mobile en /categoria/fintechs

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>
Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread lib/logo-quality/visual-analysis.ts
- Strengthen visual checks: trimmed area, min side, light-background invisibility (dHash + luminance), Accord/Trapiche fixtures
- Add normalize-tile-logo (68% max dimension) and refresh-hosted-logos for batch PNGs
- Swap weak batch brands (Mobbex, Kosiuko, Awada, Prevención/SOS/New Balance/Natura Cosméticos, etc.)
- Trapiche burgundy tile; replace Stella with hosted Heineken; normalize FinanzasArgy
- Regenerate contact sheets (99 batch brands) and mobile capture; dataset 398 entities

Co-authored-by: Fermin Rodriguez Penelas <frodriguezpenelas@gmail.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.

There are 4 total unresolved issues (including 2 from previous reviews).

Fix All in Cursor

Reviewed by Cursor Bugbot for commit c49b377. Configure here.

Comment thread lib/logos-data.ts
{ id: 312, name: "Heineken", domain: "heineken.com.ar" },
{ id: 313, name: "Stella Artois", domain: "stellartois.com" },
{ id: 312, name: "Heineken", domain: "www.heineken.com" },
{ id: 313, name: "Heineken", domain: "www.heineken.com" },

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate Heineken replaces Stella Artois

High Severity

Replacing Stella Artois with a second Heineken on www.heineken.com duplicates an existing catalog entity instead of hosting the original Heineken logo. The alimentos category lists Heineken twice, /logo/heineken-313 is a twin page, and the prior Stella slug disappears without a redirect.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit c49b377. Configure here.

const issues: Array<{ code: VisualIssueCode; message: string }> = []
if (original && hammingDistance(original.dHash, analysis.dHash) > 4) {
return issues
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Light-background check skips white logos

Medium Severity

evaluateInvisibleOnLightBackground returns immediately when the flattened-on-white dHash differs from the original. A white-on-transparent wordmark becomes a blank white tile after flatten, so the hashes diverge and the invisibility rules never run. Production check:logos always passes the original analysis, so the new guard misses the Accord/Trapiche case it was added to catch.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit c49b377. Configure here.

This branch was successfully deployed

1 active deployment
Preview — c49b3775 Deployed Oct 17, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants