bot: fix non-existent channels causing the bot to error
vi did:web:vt3e.cat
Sat, 27 Jun 2026 02:57:02 +0100
2 files changed,
17 insertions(+),
4 deletions(-)
M
apps/bot/src/feats/tickets/README.md
→
apps/bot/src/feats/tickets/README.md
@@ -26,3 +26,9 @@ - [x] category
- [x] prompt - [x] greeting - [x] send-prompt + +- [ ] other ticket stuff + - [ ] permissions + - [ ] add participants + - [ ] log messages + - [ ] private thread too
M
apps/bot/src/middleware/index.ts
→
apps/bot/src/middleware/index.ts
@@ -6,7 +6,8 @@ getTicketByGuild,
getTicketById, upsertGuild, } from "@stealth-developers/db"; -import { getTextChannel, upsertUser } from "@/lib"; +import { getTextChannel, logger, upsertUser } from "@/lib"; +import { Result } from "@sapphire/framework"; const base = kitten.builder();@@ -61,10 +62,16 @@ const ticket = await getTicketById(ticketId);
if (!ticket) return {}; if (!ticket.channelId) return { ticket }; - const ticketChannel = await getTextChannel(ticket.channelId, true); - if (!ticketChannel) return { ticket }; + const ticketChannelResult = await Result.fromAsync(getTextChannel(ticket.channelId, true)); + if (ticketChannelResult.isErr()) { + logger.error( + ticketChannelResult.unwrapErr(), + "Failed to get ticket channel in middleware", + ); + return { ticket }; + } - return { ticket, ticketChannel }; + return { ticket, ticketChannel: ticketChannelResult.unwrap() }; } } }