Fix auth persistence: web client session timeout + bot cache loss
Web client: trustDevice now defaults to true so a refresh token is always issued on login, preventing deauth after the 1-hour access token expiry. Users can still uncheck the box on shared devices. Bot: cache file path is now env-configurable (BOT_CACHE_FILE) and defaults to /app/cache/user_cache.pkl. Docker Compose mounts a named volume at /app/cache so the session cache survives container restarts. saveCache() now creates the directory if it doesn't exist. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -34,7 +34,7 @@ user_sessions = {}
|
||||
login_state = {}
|
||||
message_history = {}
|
||||
user_cache = {}
|
||||
CACHE_FILE = "/app/user_cache.pkl"
|
||||
CACHE_FILE = os.getenv("BOT_CACHE_FILE", "/app/cache/user_cache.pkl")
|
||||
|
||||
intents = discord.Intents.default()
|
||||
intents.message_content = True
|
||||
@@ -227,6 +227,7 @@ def loadCache():
|
||||
|
||||
def saveCache():
|
||||
try:
|
||||
os.makedirs(os.path.dirname(CACHE_FILE), exist_ok=True)
|
||||
with open(CACHE_FILE, "wb") as f:
|
||||
pickle.dump(user_cache, f)
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user