Skip to content

front: vanilla-Solana chip on detail page#24

Merged
simonmorley merged 1 commit into
mainfrom
sol-vanilla-chip
Apr 25, 2026
Merged

front: vanilla-Solana chip on detail page#24
simonmorley merged 1 commit into
mainfrom
sol-vanilla-chip

Conversation

@simonmorley
Copy link
Copy Markdown
Member

Summary

  • Renders an amber vanilla chip alongside the Software field on Solana validator detail pages when the software version doesn't contain "jito".
  • Mirrors `slasher-solana::classify_jito_version` — same rule the worker uses for the deprecated `vanilla_solana` event.
  • Deliberately one-sided: Jito is the expected baseline; only the deviation gets called out.
  • Hover tooltip explains the delegator-cost story.

Closes the Stage 1e gap from the MEV story (validator-level surface for the now-condition vanilla state, replacing the deprecated feed event).

Test plan

  • `npm run build`: zero TS errors
  • After deploy: open a known-vanilla Solana validator detail page; chip renders amber alongside the version
  • Open a Jito validator: no chip, version renders normally

Renders an amber 'vanilla' chip alongside the Software field when a
Solana validator's software version doesn't contain 'jito' — i.e.
they're running stock Agave and forfeiting MEV tip revenue that
would otherwise flow to delegators.

Mirrors slasher-solana::classify_jito_version. Deliberately one-
sided: Jito is the expected baseline, only the deviation gets a
chip. tooltip explains the cost story to delegators on hover.
@simonmorley simonmorley merged commit efd6c7f into main Apr 25, 2026
1 check passed
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a "vanilla" label for Solana validators not running Jito-Solana to highlight potential MEV revenue loss. The review feedback suggests displaying this label even for test versions to ensure economic transparency and recommends using CSS variables instead of hardcoded color values to improve maintainability and UI consistency.

pre-release
</span>
)}
{!isJito && !isTest && (
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The 'vanilla' chip is currently hidden when isTest is true. This means that vanilla validators running pre-release software (e.g., a beta version of stock Agave) will not display the warning about forfeited MEV rewards. Since the 'vanilla' status (economic impact) and 'pre-release' status (stability risk) are independent attributes, consider showing the 'vanilla' chip even for test versions to ensure delegators are fully informed of the revenue implications.

Suggested change
{!isJito && !isTest && (
{!isJito && (

Comment on lines +368 to +380
style={{
fontSize: 10,
marginLeft: 8,
padding: '2px 6px',
background: 'rgba(232, 167, 53, 0.15)',
border: '1px solid rgba(232, 167, 53, 0.30)',
borderRadius: 3,
color: '#e8a735',
fontFamily: "'JetBrains Mono', monospace",
textTransform: 'uppercase',
letterSpacing: '0.08em',
cursor: 'help',
}}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The amber color #e8a735 and its RGBA variants are hardcoded here. This same color is also used in the 'Skip Rate' logic (line 335). To improve maintainability and ensure consistency across the UI, consider using a CSS variable (e.g., var(--color-warning)) or defining a shared constant for this color value, especially since the project already leverages CSS variables for other colors.

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.

1 participant