Skip to content

v0.5.0 — Reaction voting

Choose a tag to compare

@10thTARDIS 10thTARDIS released this 15 Mar 23:43
· 14 commits to main since this release

Reaction voting. Emoji reactions on session_proposed messages are now translated into Quest Board availability votes in real time.

Changed

  • bot/cogs/voting.py — full implementation replacing the v0.1.0 stub:
    • on_raw_reaction_add — records availability="yes" when a user adds a slot emoji (🇦–🇪) to a session_proposed message
    • on_raw_reaction_remove — records availability="no" when a user removes a slot emoji
    • Looks up the message→session mapping via NotificationsCog.get_message_mapping (Redis-backed, 30-day TTL) to resolve emoji position to a slot_id without a Quest Board round-trip
    • Calls GET /api/bot/platform-links/discord/{user_id} before voting; on 404 sends the user a DM prompting them to run /link
    • Ignores the bot's own seed reactions, non-slot emojis, and messages with no stored mapping; logs and swallows API errors so transient failures don't surface as Discord errors