Just got my first open source contribution merged into Hermes.๐
Traced a Discord zombie client bug through 41 hours of prod logs, wrote the fix, PR accepted.
Joined as a contributor now! Thank you @Teknium@NousResearch
@Teknium@Teknium PR is up whenever you get a chance, https://t.co/9IWe770A3R. Confirmed the root cause from prod logs, added regression tests, and verified on VPS runtime. Just needs a maintainer to approve the CI workflows to run. Hope you review it :)
@Teknium working on a PR fix cancel _bot_task explicitly on timeout and in disconnect(). confirmed in prod logs with two "Connected as" events and the same message processed into two threads 357ms apart. Is it okay if i proceed @Teknium?
@Teknium Turns out when the Discord gateway times out on connect(), the background asyncio task running client.start() is never cancelled. it eventually completes the handshake and you end up with two live Discord clients running in the same process,
@Teknium this is what hermes told me, i assure you this wasn't a problem in the previous versions. something has happened. I'll debug furthermore also and add a PR, so you can look into it:)