2026-02-07 - 2026-08-07
Overview
9 Issues closed from 1 user
Closed
#18 LOW: No Documentation for Commands
Closed
#22 MEDIUM: Runtime Settings Not Persisted - Globals Need Migration
Closed
#4 HIGH: Voice Session Leaks - Unclosed Discord Audio Connections
Closed
#5 HIGH: No Graceful Shutdown on Bot Exit
Closed
#1 CRITICAL: Unhandled Asyncio Tasks (Fire-and-Forget Pattern)
Closed
#28 HIGH: Add Circuit Breakers for Critical Services
Closed
#12 LOW: SQL Injection Risk in Memory Queries
Closed
#8 MEDIUM: Hardcoded URLs and Configuration Values
Closed
#3 CRITICAL: File Operations Without Context Managers
43 Issues created by 1 user
Opened
#1 CRITICAL: Unhandled Asyncio Tasks (Fire-and-Forget Pattern)
Opened
#2 CRITICAL: Global State Race Conditions
Opened
#3 CRITICAL: File Operations Without Context Managers
Opened
#4 HIGH: Voice Session Leaks - Unclosed Discord Audio Connections
Opened
#5 HIGH: No Graceful Shutdown on Bot Exit
Opened
#7 HIGH: Missing Error Handling in API Calls
Opened
#8 MEDIUM: Hardcoded URLs and Configuration Values
Opened
#9 MEDIUM: No Request Validation on Web UI API
Opened
#10 MEDIUM: Inconsistent Logging Across Codebase
Opened
#11 MEDIUM: No Metrics or Observability
Opened
#12 LOW: SQL Injection Risk in Memory Queries
Opened
#13 LOW: No Input Sanitization for User Content
Opened
#14 LOW: Duplicate Code in Command Handlers
Opened
#15 LOW: Missing Type Hints
Opened
#16 LOW: No Unit Tests
Opened
#17 LOW: Inconsistent Error Messages
Opened
#18 LOW: No Documentation for Commands
Opened
#19 HIGH: Unclosed aiohttp Sessions Cause Resource Leaks
Opened
#20 CRITICAL: BOT_USER None Reference Causes Crashes
Opened
#21 MEDIUM: Magic Numbers Reduce Maintainability
Opened
#22 MEDIUM: Runtime Settings Not Persisted - Globals Need Migration
Opened
#23 LOW: Dead Code and TODO Comments Need Cleanup
Opened
#24 MEDIUM: Split api.py Into Route Modules
Opened
#25 MEDIUM: Refactor profile_picture_manager.py Into Separate Classes
Opened
#26 MEDIUM: Split bot.py Event Handlers Into Separate Modules
Opened
#27 HIGH: Add Retry Logic for External API Calls
Opened
#28 HIGH: Add Circuit Breakers for Critical Services
Opened
#29 HIGH: Add Comprehensive Input Validation
Opened
#30 MEDIUM: Add Performance Logging
Opened
#31 MEDIUM: Optimize Memory Usage
Opened
#32 HIGH: Split api.py (3,219 lines) into FastAPI domain routers
Opened
#33 HIGH: Unify the triple configuration system into a single source of truth
Opened
#34 MEDIUM: Extract system prompt to a single shared source (eliminate triple duplication)
Opened
#35 BUG: Duplicate record_action() call in autonomous.py double-counts actions
Opened
#36 MEDIUM: Remove dead/vestigial code modules
Opened
#37 MEDIUM: Add file locking for concurrent JSON persistence
Opened
#38 LOW: Move hardcoded user IDs and IP addresses to configuration
Opened
#39 LOW: Add eviction policy for conversation history to prevent memory leak
Opened
#40 MEDIUM: Fix mixed async/sync API endpoints with fire-and-forget patterns
Opened
#41 LOW: Add timeouts to subprocess.run() calls in container_manager.py
Opened
#42 LOW: Fix logger.error() misuse for non-error messages in bot.py
Opened
#43 MEDIUM: Add input validation and allowlist to /config/set API endpoint
Opened
#44 LOW: Deduplicate MOOD_EMOJIS mapping between moods.py and evil_mode.py