Files
soroban-abacus-flashcards/apps/web
Thomas Hallock 5a8779969c feat: add visual warnings to page selector buttons
Implemented proactive duplicate risk warnings directly in the page selector
UI to guide users toward valid configurations before they encounter issues.

**Features:**
- Color-coded page buttons based on duplicate risk
  - Green/brand: Safe (< 50% of space)
  - Yellow: Caution (50-80% of space)
  - Red: Danger (> 80% of space)
- Warning indicator dots on risky page counts
- Radix UI tooltips on hover explaining the risk
- Live problem space calculation based on current config

**Visual Indicators:**
- Border colors change to yellow/red for risky page counts
- Background tints match risk level when selected
- Small dot in top-right corner for at-risk buttons
- Hover shows detailed tooltip with:
  - Total problems requested vs available
  - Duplicate risk level
  - Actionable recommendations

**Implementation:**
- OrientationPanel.tsx: Added problem space validation logic
- Passes digitRange, pAnyStart, operator, mode from form state
- Uses estimateUniqueProblemSpace() for real-time calculation
- Tooltip messages formatted with recommendations
- Skips validation for mastery+mixed mode (consistent with banner)

**Example:**
1-digit 100% regrouping with 15 problems/page:
- Page 1: Green (15 of 45 available)
- Page 2: Yellow warning (30 of 45)
- Page 3: Red danger (45 of 45 - duplicates inevitable)

Tooltip on page 3: "🚫 Too many duplicates: 45 problems requested, only
~45 unique available. Consider: • Reduce to 1 pages • Increase digit range
• Lower regrouping %"

**Next:** Problem space indicator in config panel showing live estimate

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 09:36:19 -06:00
..
2025-11-11 11:44:40 -06:00
2025-11-11 11:44:40 -06:00

Test deployment - Mon Nov 3 16:31:57 CST 2025