Problem: Bot froze after only 1 hour of runtime with API timeouts,
despite having 4-hour auto-reconnect protection for Drift SDK memory leak.
Investigation showed:
- Singleton pattern working correctly (reusing same instance)
- Hundreds of accountUnsubscribe errors (WebSocket leak)
- Container froze at ~1 hour, not 4 hours
Root Cause: Drift SDK's memory leak is MORE SEVERE than expected.
Even with single instance, subscriptions accumulate faster than anticipated.
4-hour interval too long - system hits memory/connection limits before cleanup.
Solution: Reduce auto-reconnect interval to 2 hours (more aggressive).
This ensures cleanup happens before critical thresholds reached.
Code change (lib/drift/client.ts):
- reconnectIntervalMs: 4 hours → 2 hours
- Updated log messages to reflect new interval
Impact: System now self-heals every 2 hours instead of 4,
preventing the freeze that occurred tonight at 1-hour mark.
Related: Common Pitfall #1 (Drift SDK memory leak)