#455 HIGH: 9 singleton race conditions without locking
Description
EditMultiple singletons in engine/ lack thread-safe initialization:
1. AbsurdClient (absurd_client.py:1460-1473)
2. AppExecutor (apps/executor.py:943-958)
3. DatabaseCodeLoader (apps/code_loader.py:540-555)
4. AppToolBridge (apps/tool_bridge.py:340-355)
5. DeadLetterService (services/dead_letter_service.py:387-392)
6. HeartbeatService (services/heartbeat_service.py:237-242)
7. StorageService (services/storage_service.py:699-702)
8. S3StorageProvider (storage/s3_provider.py:428-431)
9. ClientKeyManager (security/rbac_manager.py:396-402)
Fix: Add double-check locking with threading.Lock() like tools/registry.py pattern.
Comments
Loading comments...
Context
Loading context...
Audit History
View AllLoading audit history...