AI-Life-Coach-Streamlit / debug_dashboard_test.py
rdune71's picture
Implement enhanced debug panel with toggle controls and detailed status tracking
b5d5e39
import sys
from pathlib import Path
# Add project root to path
project_root = Path(__file__).parent
sys.path.append(str(project_root))
from services.hf_endpoint_monitor import hf_monitor
from core.coordinator import coordinator
from utils.config import config
import os
def test_debug_features():
"""Test the enhanced debug features"""
print("=== Debug Dashboard Feature Test ===")
print()
# Test HF Endpoint Monitor Enhanced Features
print("1. Testing HF Endpoint Monitor Enhanced Features:")
try:
# Basic status
basic_status = hf_monitor.get_status_summary()
print(f" Basic Status: {basic_status}")
# Detailed status
detailed_status = hf_monitor.get_detailed_status()
print(f" Detailed Status Keys: {list(detailed_status.keys())}")
# Performance metrics
perf_metrics = hf_monitor.get_performance_metrics()
print(f" Performance Metrics: {perf_metrics}")
print(" βœ… HF Endpoint Monitor Enhanced Features Working")
except Exception as e:
print(f" ❌ HF Endpoint Monitor Test Failed: {e}")
print()
# Test Coordinator Status Tracking
print("2. Testing Coordinator Status Tracking:")
try:
# Coordination status
coord_status = coordinator.get_coordination_status()
print(f" Coordination Status: {coord_status}")
# Recent activities (test with demo user)
recent_activities = coordinator.get_recent_activities("demo_user")
print(f" Recent Activities Keys: {list(recent_activities.keys())}")
print(" βœ… Coordinator Status Tracking Working")
except Exception as e:
print(f" ❌ Coordinator Status Tracking Test Failed: {e}")
print()
# Test Configuration Display
print("3. Testing Configuration Display:")
try:
print(f" Environment Type: {'HF Space' if config.is_hf_space else 'Local'}")
print(f" Fallback Mode: {config.use_fallback}")
print(f" HF Token Available: {bool(config.hf_token)}")
print(f" Tavily API Key: {bool(os.getenv('TAVILY_API_KEY'))}")
print(f" OpenWeather API Key: {bool(config.openweather_api_key)}")
# Feature flags
features = []
if config.use_fallback:
features.append("Fallback Mode")
if os.getenv("TAVILY_API_KEY"):
features.append("Web Search")
if config.openweather_api_key:
features.append("Weather Data")
if config.hf_token:
features.append("Deep Analysis")
print(f" Active Features: {', '.join(features) if features else 'None'}")
print(" βœ… Configuration Display Working")
except Exception as e:
print(f" ❌ Configuration Display Test Failed: {e}")
print()
print("πŸŽ‰ Debug Dashboard Feature Test Completed!")
if __name__ == "__main__":
test_debug_features()