feat(compare): replace pair card grid with per-model GPU matrix#397
feat(compare): replace pair card grid with per-model GPU matrix#397Oseltamivir wants to merge 2 commits into
Conversation
Each model's index card now renders an N×N GPU matrix. Headers and cells are tinted by vendor — NVIDIA green, AMD red, cross-vendor cells split on the 135° diagonal — so users can scan vendor combos at a glance instead of reading three separate "NVIDIA vs NVIDIA / AMD vs AMD / cross" sections. Diagonal cells are inert; cells without benchmark data render as faint outlines. Applies to both /compare and /compare-per-dollar indices. Drops the ComparePairCardLink component (no remaining callers).
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 044a049. Configure here.
| style={{ | ||
| background: `linear-gradient(135deg, ${AMD_BG_STRONG} 0%, ${AMD_BG_STRONG} 50%, ${NVIDIA_BG_STRONG} 50%, ${NVIDIA_BG_STRONG} 100%)`, | ||
| borderColor: 'rgba(160, 160, 160, 0.35)', | ||
| }} |
There was a problem hiding this comment.
Legend cross-vendor gradient is reversed from matrix cells
Medium Severity
The CompareMatrixLegend cross-vendor swatch hardcodes AMD (red) on the top-left and NVIDIA (green) on the bottom-right of its 135° gradient. However, compareGpus sorts NVIDIA GPUs first (rank 0) and AMD second (rank 1), so in the upper-right triangle of the matrix — the most prominent cross-vendor region — PairCell renders NVIDIA (green) on the top-left and AMD (red) on the bottom-right, which is the exact opposite gradient orientation from the legend. The legend only matches the lower-left triangle cells.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 044a049. Configure here.
Empty colored rectangles felt visually weird. Each pair cell now shows the two GPU short labels (NVL72 suffix dropped to fit) stacked with a small "vs" separator, each tinted in its vendor's brand color. The cell's vendor-tint background still carries the same×same / cross-vendor signal; the in-cell labels add information density and make the matrix readable without retracing the axes when scrolled.


Summary
/compareand/compare-per-dollarnow renders an N×N GPU matrix instead of three separate vendor-bucketed card grids.#76b900), AMD red (#ed1c24). Cross-vendor cells split on the 135° diagonal with each vendor's tint on its half.—); cells without benchmark data render as faint outlines so it's easy to see what isn't covered yet.ComparePairCardLinkcomponent.Test plan
pnpm typecheck && pnpm lint && pnpm fmtcleanpnpm test:unit— 1946 / 1946 passingcurl /compareand/compare-per-dollarreturn 200; GPU labels and per-cell colors render; cell links resolve to the canonical comparison slugsNote
Low Risk
Presentation-only change to compare navigation; availability filtering and destination URLs are unchanged.
Overview
On
/compareand/compare-per-dollar, each model section no longer uses three vendor-bucketed card grids. Comparable pairs are flattened frombucketComparePairsByVendorand shown in a sharedComparePairMatrix: an N×N grid of GPUs with vendor-tinted headers, diagonal placeholders, faint cells where no benchmark pair exists, and clickable cells linking to the same comparison slugs as before. ACompareMatrixLegendwas added to the top intro card on both index pages.ComparePairCardLinkwas removed; navigation and analytics now live in the matrix (compare_index_matrix_clickedinstead ofcompare_index_pair_clicked). Duplicate per-pagegroupPairsByVendorForModelhelpers were deleted in favor of the matrix component.Reviewed by Cursor Bugbot for commit 25f3834. Bugbot is set up for automated code reviews on this repo. Configure here.