Changelog - Version 5.7.14 (2026-06-28)
Version Information
- Updated version from 5.7.13 to 5.7.14
- Fix: the bot now reads its Specter chat credentials from the website database instead of relying only on the environment, so chat messages keep sending after a token rotation
Bug Fixes
- Specter chat token is now sourced from the database
- The
botofthespecteraccount posts chat messages through the Twitch Helix “Send Chat Message” API, which needs a valid access token and client ID. Previously the stable bot only ever read these from its local environment configuration. When those credentials were rotated centrally, the running bot kept using its stale environment copy and chat messages silently stopped sending until the bot was restarted. - Fix: the bot now pulls the Specter chat credentials from the central
websitedatabase (the same source the beta bot already uses), refreshing at most once a minute. If the database row is missing or the lookup fails for any reason, it transparently falls back to the existing environment values, so behaviour is never worse than before.
- The
Technical Details
- Added
get_website_twitch_app_credentials()tobot.py, which reads thebot_chat_tokenrow from thewebsitedatabase, caches the result for 60 seconds (WEBSITE_TWITCH_CREDS_CACHE_TTL), and falls back to theTWITCH_OAUTH_API_TOKEN/TWITCH_OAUTH_API_CLIENT_IDenvironment variables on any error. send_chat_message()now obtains itsAuthorizationbearer token andClient-Idfrom this helper rather than directly from the environment globals, with an env fallback and a guard that aborts the send if no credentials are available. This change is scoped to the Specter chat path only; the beta and v6 bots already had this behaviour.
Thank you for your feedback and support!
As always, your feedback is appreciated. Please report any issues, bugs, or suggestions in the #ticket-info channel on our Discord server. You can also submit feedback and bug reports directly on our support website: https://support.botofthespecter.com/