From 25b73bd7cb585519ffe41d2235e6281bdc97fba1 Mon Sep 17 00:00:00 2001 From: Skip R Date: Thu, 11 Dec 2025 18:32:31 -0800 Subject: [PATCH] handlediscord: bail if we're in the middle of provisioning --- pkg/connector/handlediscord.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkg/connector/handlediscord.go b/pkg/connector/handlediscord.go index 7ea84f0..7aaaf9d 100644 --- a/pkg/connector/handlediscord.go +++ b/pkg/connector/handlediscord.go @@ -87,6 +87,16 @@ func (d *DiscordClient) wrapDiscordMessage(evt *discordgo.MessageCreate) Discord } func (d *DiscordClient) handleDiscordEvent(rawEvt any) { + if d.UserLogin == nil { + // Our event handlers are able to assume that a UserLogin is available. + // We respond to special events like READY outside of this function, + // by virtue of methods like Session.Open only returning control flow + // after RESUME or READY. + log := zerolog.Ctx(context.TODO()) + log.Trace().Msg("Dropping Discord event received before UserLogin creation") + return + } + defer func() { err := recover() if err != nil {