front: vanilla-Solana chip on detail page#24
Conversation
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.
There was a problem hiding this comment.
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 && ( |
There was a problem hiding this comment.
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.
| {!isJito && !isTest && ( | |
| {!isJito && ( |
| 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', | ||
| }} |
There was a problem hiding this comment.
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.
Summary
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