Skip to content

chore(release): promote dev to main - #1558

Merged
JOY (JOY) merged 1 commit into
mainfrom
dev
Oct 31, 2026
Merged

JOY (JOY) merged 1 commit into
mainfrom
dev

Conversation

@JOY

@JOY JOY (JOY) commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

Promote dev to main.

Merge with a merge commit, never squash (Docs/Resources/RELEASE.md).


📌 TL;DR

This PR implements a conditional rendering logic for persona presets and custom weight sliders in the "Deals" and "Versus" views, ensuring these controls are only displayed when at least one product has a valid score for the corresponding criteria. This prevents users from selecting personas that would produce identical rankings to the default, improving UI clarity and accessibility.

🎯 Type of Change

  • 🚀 New feature
  • 🐛 Bugfix
  • 🧹 Refactor
  • ⚡ Performance
  • 📚 Documentation
  • ⚙️ CI / Configuration

🔍 Changes Walkthrough

File Summary of Changes
apps/web/src/components/compare/VersusInteractiveScoreboard.tsx Added versusAvailablePersonas helper to filter presets based on shared scored criteria. Updated the component to conditionally render persona pills and weight sliders only when canWeigh is true, falling back to default weights otherwise.
apps/web/src/components/deals/DealFinderWorkspace.tsx Added availableDealPersonas helper to determine which personas are relevant based on product scores in the current category. Updated the UI to hide the persona pill group entirely if only the default persona is available, and to fall back to default ranking if the selected persona is unavailable.
apps/web/src/server/rate/__tests__/core-rate-architecture.test.ts Added unit tests verifying that availableDealPersonas and versusAvailablePersonas correctly filter personas based on the presence of criterion scores.
apps/web/e2e/pill-group-state.spec.ts Updated E2E tests to assert that persona controls are absent when no products have criterion scores, replacing previous tests that expected them to be present.
apps/web/e2e/light-theme-controls.spec.ts Removed accessibility contrast checks for the custom-weights button, as the control is no longer rendered in the test scenario (no scored criteria).
apps/web/e2e/deals-paging.spec.ts Updated the paging reset test to use the budget slider (keyboard interaction) instead of a persona button, since persona buttons may no longer be present.

📊 Architectural Flow

flowchart TD
    A[Product Data] --> B{Has Criterion Scores?}
    B -- No --> C[availablePersonas = ['default']]
    B -- Yes --> D[Filter Personas by Scored Criteria]
    
    C --> E[UI: Hide Persona Pills & Sliders]
    D --> F[UI: Show Available Persona Pills]
    
    E --> G[Ranking: Use Default Weights]
    F --> H{User Selects Persona?}
    H -- Yes --> I[Ranking: Use Selected Persona Weights]
    H -- No/Invalid --> G
Loading

…on (#1557)

* fix(web): versus and deals offer a persona only with a scored criterion

#1556: with no criterion scores yet, every persona on versus and
deals ranked exactly like the default while still being offered, and the
verdict named the persona's weights.
- Versus shows a use-case preset only when both models have a real score
  for the criterion it weighs most; with no criterion scored on both
  sides, the presets and the custom weights are not shown, and the
  sliders list only the criteria both sides have.
- Deals shows a persona only when some product in the category has a
  real score for its criterion; with only the default left the pills are
  hidden and the ranking uses the default.
- Scoring already skipped null criteria (#1143); no new text.

Closes #1556

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Code review skipped — your organization has no extra usage available to pay for this review.

If your organization's extra usage balance is empty, an organization admin can add extra usage credits at claude.ai/admin-settings/usage. If its monthly spend limit was reached, an admin can raise it on the same page. If neither applies, contact Anthropic support.

Once extra usage is available, someone with write access to this repository can comment @claude review on this pull request to trigger a review.

@vercel

vercel Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
rate Ready Ready Preview Oct 31, 2026 8:13pm UTC

Request Review

@coderabbitai

coderabbitai Bot commented Oct 31, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ec3d170e-f5ba-4940-acbd-042a7d6d6111

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

dos[bot]
dos Bot approved these changes Oct 31, 2026

@dos dos Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⏱️ Code Review completed (6 eligible files · 24,244 chars · 3 model call(s) · 1 PR unit(s))

Whole diff with bounded context at base 781e4a0 / head e97b94c.

✅ CLEAN_PASS: Complete diff reviewed

Context investigation was bounded to the explicitly requested snapshot paths.

@JOY
JOY (JOY) merged commit eefb800 into main Oct 31, 2026
22 checks passed

This branch was successfully deployed

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

Labels

area:frontend Frontend / Next.js / UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant