forked from wrenn/wrenn
- Replace btoa/atob with TextEncoder/TextDecoder for binary-safe base64 encoding — fixes crash on multi-byte UTF-8 input (emoji, CJK, accents) - Auto-reconnect on abnormal WebSocket close while session is live - Cap concurrent sessions at 8 with disabled "+" button at limit - Guard all ws.send() calls with try/catch via wsSend() wrapper - Clean up input flush timer on session close and component destroy - Close all sessions when capsule stops running (isRunning → false) - Clean up orphaned display entry if DOM container fails to render