- Remove caching from check_project_count_limit, check_agent_count_limit, and check_agent_run_limit
to ensure real-time counts and prevent stale data issues after deletions
- Merge duplicate backend/core/utils.py into core_utils.py to eliminate code duplication
- Update import in agent_json.py to use consolidated utils file
- All limit checking functions now query database directly for accurate counts
Fixes project limit exceeded errors that persisted after project deletion due to cached counts.
- Added consistent EventSource cleanup helper function
- Fixed missing cleanup in error handlers that could cause memory leaks
- Added safety timeout (30min) to prevent indefinite connections
- Exported cleanup function for external use during app teardown
- Improved error logging and connection state tracking
Fixes the critical memory leak where EventSource connections weren't
properly closed in all error scenarios, particularly in the catch
blocks of the onerror handler.
- Replace direct 'supabase' commands with 'npx supabase' for better dependency management
- Update error messages to reflect Node.js/npm requirements instead of CLI installation
- Improves user experience by removing need for separate Supabase CLI installation
- Users only need Node.js/npm which they likely already have for frontend development
Fixes issue where setup would fail for users without globally installed Supabase CLI
- Replace direct 'supabase' commands with 'npx supabase' for better dependency management
- Update error messages to reflect Node.js/npm requirements instead of CLI installation
- Improves user experience by removing need for separate Supabase CLI installation
- Users only need Node.js/npm which they likely already have for frontend development
Fixes issue where setup would fail for users without globally installed Supabase CLI