- 08 Oct, 2025 7 commits
-
-
Stefy Lanza (nextime / spora ) authored
Fix timezone issue by explicitly treating SQLite timestamps as UTC before converting to Unix timestamp
-
Stefy Lanza (nextime / spora ) authored
Fix last seen timestamp parsing to handle both ISO and SQLite timestamp formats for proper timezone display
-
Stefy Lanza (nextime / spora ) authored
Fix cluster status GPU detection to use available_backends instead of gpu_info for more reliable GPU client identification
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
Show connected cluster nodes in analyze page right panel, displaying hostname, IP, GPU status, weight, and last seen time
-
Stefy Lanza (nextime / spora ) authored
Add documentations dropdown menu in navbar, moving API documentation and admin API documentation links
-
Stefy Lanza (nextime / spora ) authored
Add admin dropdown menu in navbar for admin users, moving train, cluster tokens, cluster nodes, and configurations links
-
- 07 Oct, 2025 33 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Store connected_at as UTC ISO string with Z suffix - Handle datetime objects from database as UTC timestamps - Ensure uptime calculation uses correct UTC times regardless of server timezone
-
Stefy Lanza (nextime / spora ) authored
- Store connected_at as proper UTC timestamp in database using FROM_UNIXTIME/datetime - Update web interface to handle datetime objects and timestamps correctly - Ensure uptime starts from actual connection time, not offset by timezone
-
Stefy Lanza (nextime / spora ) authored
- Fix cluster master to properly detect GPU backends from client capabilities - Extract available_backends from capabilities list instead of gpu_info - Ensure clients with GPU workers are correctly identified as GPU-enabled
-
Stefy Lanza (nextime / spora ) authored
- Fix cluster client uptime calculation to start from 0 by using explicit UTC timestamps - Fix cluster client workers not showing by populating cluster_master.clients dictionary - Ensure connected_at uses current UTC time instead of database CURRENT_TIMESTAMP
-
Stefy Lanza (nextime / spora ) authored
- Get real worker process information from cluster master instead of placeholder data - Display correct number of workers and their actual backends - Improve accuracy of cluster node statistics
-
Stefy Lanza (nextime / spora ) authored
- Update connected_at timestamp on each successful connection - Uptime now resets to 00:00:00 on reconnections as expected
-
Stefy Lanza (nextime / spora ) authored
- Extract real client IP address from websocket connection - Preserve connected_at timestamp for accurate uptime calculation - Send full GPU device info from client to master for proper VRAM reporting
-
Stefy Lanza (nextime / spora ) authored
- Handle timestamp strings in sorting function - Parse ISO timestamp strings to numeric values for proper sorting - Prevent TypeError when sorting by last_seen timestamp
-
Stefy Lanza (nextime / spora ) authored
- Add ALTER TABLE to create connected_at column in existing databases - Handle migration gracefully for databases created before schema update
-
Stefy Lanza (nextime / spora ) authored
- Move subprocess import to function scope to avoid UnboundLocalError - Ensure subprocess is available for fallback GPU detection
-
Stefy Lanza (nextime / spora ) authored
- Add connected_at timestamp to track when client first connected - Calculate uptime from connection time instead of last seen time - Update database schema and API to use proper uptime tracking
-
Stefy Lanza (nextime / spora ) authored
- Update detect_gpu_backends to collect actual VRAM for each GPU device - Store device info including VRAM in gpu_info sent to master - Use real VRAM data in cluster nodes API instead of hardcoded values - Ensure consistent VRAM reporting between master and clients
-
Stefy Lanza (nextime / spora ) authored
- Use green background color to indicate connected nodes - Remove status text column for cleaner interface - Update colspan values for table messages
-
Stefy Lanza (nextime / spora ) authored
- Store cluster client info in database for persistence - Update API to read connected clients from database - Maintain compatibility with existing web interface
-
Stefy Lanza (nextime / spora ) authored
- Use _get_client_by_websocket instead of non-existent _get_client_by_socket - Fixes client connection error during process registration
-
Stefy Lanza (nextime / spora ) authored
- Client connects to wss://host:port instead of wss://host:port/cluster - Fixes connection loop issue
-
Stefy Lanza (nextime / spora ) authored
- Client now attempts to reconnect if connection is lost - Prevents processes from being restarted on reconnection - Maintains persistent cluster node operation
-
Stefy Lanza (nextime / spora ) authored
- Correct the dict comprehension for registering processes with master - Fix duplicate entries and incorrect model assignment - Apply same fix to restart workers function
-
Stefy Lanza (nextime / spora ) authored
- Workers need a local backend to connect to even in client mode - Add backend startup and readiness check for cluster clients - Ensure proper cleanup on exit
-
Stefy Lanza (nextime / spora ) authored
- Ignore cluster.crt and cluster.key generated certificates - Remove committed certificates from repository
-
Stefy Lanza (nextime / spora ) authored
- Remove 'path' parameter from _handle_client method - Compatible with websockets 12+ which removed the path argument
-
Stefy Lanza (nextime / spora ) authored
- Modify ClusterMaster to accept host parameter - Start cluster master in vidai.py when running as master - Use --cluster-host and --cluster-port for websocket server binding - Default to 0.0.0.0:5003 for cluster master
-
Stefy Lanza (nextime / spora ) authored
- Rename 'flash' variable to 'flash_enabled' to avoid shadowing the flash() function - Resolve TypeError when saving admin configuration
-
Stefy Lanza (nextime / spora ) authored
- Remove analysis_backend and training_backend fields from /admin/config - These are now configured per worker in the cluster nodes interface - Clean up unused imports and form processing
-
Stefy Lanza (nextime / spora ) authored
- Add missing set_* function imports to admin.py config route - Resolve NameError when saving admin configuration
-
Stefy Lanza (nextime / spora ) authored
- Change container max-width to 95% for better use of screen space - Maintain centered layout for the cluster nodes table
-
Stefy Lanza (nextime / spora ) authored
- Show individual select forms for every worker in the driver modal - Update API to handle per-worker driver selection for local nodes - Maintain compatibility with existing backend switching logic
-
Stefy Lanza (nextime / spora ) authored
- Add --config <file> argument to load config from custom path - Modify config loader to use custom config file if specified - Fix cluster nodes interface to only show available GPU backends for workers - Differentiate between local and remote node driver selection
-
Stefy Lanza (nextime / spora ) authored
- Removed the 'Settings' link from the admin navigation menu - Settings page route and template still exist but are no longer accessible from navbar - Admin navbar now shows: Cluster Tokens, Cluster Nodes (no Settings)
-
Stefy Lanza (nextime / spora ) authored
- Added workers array to local node API response for modal population - Fixed table colspan values to match 13 columns - Removed debug console.log statements - Modal should now open and show worker driver selection options
-
Stefy Lanza (nextime / spora ) authored
- Fixed JavaScript template literal issue preventing button clicks from working - Changed from inline onclick with template variables to data attributes + event delegation - Added event listener for .set-driver-btn class buttons - Buttons now properly read hostname and token from data attributes - Modal should now open when clicking Set Driver buttons
-
Stefy Lanza (nextime / spora ) authored
- Removed brand-specific filtering that only allowed NVIDIA GPUs - Now detects any GPU that can actually perform CUDA or ROCm operations - Functional test determines if GPU should be included, not brand - GPUs are shown with correct system indices (Device 0, 1, etc.) - AMD GPUs that support ROCm will be shown if functional - CUDA GPUs from any vendor will be shown if functional
-
Stefy Lanza (nextime / spora ) authored
- Updated GPU VRAM detection to use torch.cuda.get_device_properties(i).total_memory / 1024**3 - Same method as used in /api/stats endpoint for consistency - Still filters out non-NVIDIA and non-functional GPUs - Now shows correct VRAM amounts (e.g., 24GB for RTX 3090 instead of hardcoded 8GB) - Fixed both worker-level and node-level GPU detection
-