EU-Utility/plugins/integration_tests/service_fallback
LemonNexus c7f2a62759 feat: Classy Dashboard UI with modern glassmorphism design
NEW: core/classy_dashboard.py
- Elegant, sidebar-free main interface
- Dashboard tab with widget grid layout (perfect for second monitor)
- Glassmorphism card design with subtle transparency
- Smooth animations and hover effects
- Clean tab bar: Dashboard | Plugins | Widgets | Settings
- System Status, Quick Actions, and Recent Activity widgets
- Premium dark theme with refined orange accents

Features:
- Dashboard tab for static widget placement (second monitor use)
- Elegant header with minimize/close controls
- Smooth tab transitions
- Glass cards with hover effects
- Status indicators with color coding
- Quick action buttons

INTEGRATION:
- Updated core/main.py to use classy dashboard
- Removed sidebar dependency
- Dashboard auto-shows on startup
- Toggle with Ctrl+Shift+U

Design goals:
- Classy, premium feel
- Professional for second monitor use
- No sidebar clutter
- Widget-focused layout
- Smooth, modern aesthetics
2026-02-15 18:34:49 +00:00
..
README.md feat: Classy Dashboard UI with modern glassmorphism design 2026-02-15 18:34:49 +00:00
plugin.json feat: Classy Dashboard UI with modern glassmorphism design 2026-02-15 18:34:49 +00:00
plugin.py feat: Classy Dashboard UI with modern glassmorphism design 2026-02-15 18:34:49 +00:00

README.md

Service Fallback & Graceful Degradation Tests

Tests EU-Utility's ability to handle service unavailability gracefully.

Test Categories

Network Failures

  • DNS resolution failures
  • Connection refused
  • Network unreachable
  • Service timeouts

Missing Dependencies

  • OCR engines not installed
  • requests library missing
  • paho-mqtt not available
  • Optional libraries

API Errors

  • Rate limiting (429)
  • Authentication failures (401/403)
  • Server errors (500/503)
  • Invalid responses

Timeout Handling

  • Request timeouts
  • Slow responses
  • Hanging connections
  • Retry logic

Expected Graceful Degradation

When Network Fails

  • Show cached data if available
  • Display clear error message
  • Retry with exponential backoff
  • Never block UI indefinitely

When Dependencies Missing

  • Disable affected features
  • Show informative messages
  • Provide alternatives
  • Continue with reduced functionality

When API Errors

  • Handle specific error codes
  • Implement appropriate retry logic
  • Show user-friendly messages
  • Log for debugging

Recovery Mechanisms

  1. Automatic Retry: Exponential backoff for transient failures
  2. Cached Data: Use stale cache when fresh data unavailable
  3. Feature Degradation: Disable features that depend on unavailable services
  4. User Notification: Clear messages about service status
  5. Reconnection: Detect when service returns and resume normal operation