From c423590292e836621d9a1bba09edccc646e892ab Mon Sep 17 00:00:00 2001 From: Bea Date: Tue, 10 Mar 2026 23:23:23 +0000 Subject: [PATCH 1/3] Look up thread IDs if channels cannot be found --- scripts/backfill.js | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/scripts/backfill.js b/scripts/backfill.js index 941e803..7135ec2 100644 --- a/scripts/backfill.js +++ b/scripts/backfill.js @@ -51,10 +51,24 @@ const preparedInsert = backfill.prepare("INSERT INTO backfill (channel_id, messa async function event(event) { if (event.t !== "GUILD_CREATE") return - const channel = event.d.channels.find(c => c.id === channelID) - if (!channel) return + let channel = event.d.channels.find(c => c.id === channelID) || (event.d.threads || []).find(c => c.id === channelID) const guild_id = event.d.id + if (!channel) { + // May be an archived thread not present in GUILD_CREATE data - try fetching via API + try { + const fetched = await discord.snow.channel.getChannel(channelID) + if (!fetched.guild_id || fetched.guild_id !== guild_id) return + fetched.guild_id = guild_id + discord.channels.set(fetched.id, fetched) + channel = fetched + } catch (e) { + return + } + } + + if (!channel) return + try { await createRoom.syncRoom(channelID) let last = backfill.prepare("SELECT cast(max(message_id) as TEXT) FROM backfill WHERE channel_id = ?").pluck().get(channelID) || "0" From a01a325146c4e97706e2c233a80e63043881c388 Mon Sep 17 00:00:00 2001 From: Bea Date: Tue, 24 Mar 2026 18:19:15 +0000 Subject: [PATCH 2/3] chore: editorconfig matching existing code format styles An editor config has been written that matches existing indentation and formatting used by this project, which should extend the courtesy of intended tab use to other editors like NeoVim which are often conigured to adhere to `.editorconfig` by default. As part of this change, the official EditorConfig extension has been added to VSCode recommendations, which should additionally enable Code-like editors to additionally adhere to the rules of other files like json and markdown which are the only types that deviate from Cadence's global default. --- .editorconfig | 16 ++++++++++++++++ .vscode/extensions.json | 5 +++++ 2 files changed, 21 insertions(+) create mode 100644 .editorconfig create mode 100644 .vscode/extensions.json diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..8920fb1 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,16 @@ +root = true + +[*] +indent_style = tab +tab_width = 3 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.json] +indent_style = space +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..fd5bdfe --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,5 @@ +{ + "recommendations": [ + "editorconfig.editorconfig" + ] +} From 4625544e34e26e2ab6d3fe9a03a63cf39eb2aa21 Mon Sep 17 00:00:00 2001 From: Bea Date: Tue, 24 Mar 2026 19:00:41 +0000 Subject: [PATCH 3/3] chore: add global prettier ignore file As prettier is not configured for this project, and the style doesn't meet prettier's opinionated defaults, it's worth dropping this blanket ignore until such a time (if ever) a prettier config is produced that matches the styleguide of this project. --- .prettierignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..72e8ffc --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +*