From 1639f9b8a302634ac9d0e0765fe45a9c057f385a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 Dec 2025 00:07:25 +0900 Subject: [PATCH 1/2] chore(deps): bump node-forge from 1.3.1 to 1.3.2 (#696) Bumps [node-forge](https://github.com/digitalbazaar/forge) from 1.3.1 to 1.3.2. - [Changelog](https://github.com/digitalbazaar/forge/blob/main/CHANGELOG.md) - [Commits](https://github.com/digitalbazaar/forge/compare/v1.3.1...v1.3.2) --- updated-dependencies: - dependency-name: node-forge dependency-version: 1.3.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6553447..9c60e06 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8417,9 +8417,9 @@ node-fetch@^2.6.9, node-fetch@^2.7.0: whatwg-url "^5.0.0" node-forge@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== + version "1.3.2" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.2.tgz#d0d2659a26eef778bf84d73e7f55c08144ee7750" + integrity sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw== node-gyp-build@<4.0, node-gyp-build@^3.9.0: version "3.9.0" From 683f7f8b7ba3a691f2bd1b896d595a38babd5414 Mon Sep 17 00:00:00 2001 From: skinmaker1345 Date: Sun, 17 May 2026 20:08:45 +0900 Subject: [PATCH 2/2] feat: add bot exclusive guild --- .env.demo.local | 1 + pages/api/v2/bots/[id]/index.ts | 3 ++- utils/DiscordBot.ts | 5 ++++- utils/Query.ts | 12 ++++++++---- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.env.demo.local b/.env.demo.local index deb8fe2..f6c7d47 100644 --- a/.env.demo.local +++ b/.env.demo.local @@ -17,6 +17,7 @@ DISCORD_TOKEN=BOT_TOKEN DISCORD_CLIENT_INTENTS=32767 GUILD_ID=653083797763522580 +BOT_GUILD_ID=653083797763522580 REVIEW_GUILD_ID=906537041326637086 GITHUB_CLIENT_ID=GH_CLIENT_ID diff --git a/pages/api/v2/bots/[id]/index.ts b/pages/api/v2/bots/[id]/index.ts index b582421..225a89d 100644 --- a/pages/api/v2/bots/[id]/index.ts +++ b/pages/api/v2/bots/[id]/index.ts @@ -24,7 +24,7 @@ import { objectDiff, serialize, } from '@utils/Tools' -import { discordLog, getMainGuild, webhookClients } from '@utils/DiscordBot' +import { discordLog, getBotGuild, getMainGuild, webhookClients } from '@utils/DiscordBot' import { KoreanbotsEndPoints } from '@utils/Constants' const patchLimiter = rateLimit({ @@ -181,6 +181,7 @@ const Bots = RequestHandler() return ResponseWrapper(res, { code: 400, message: '봇 이름을 입력해주세요.' }) await remove.bot(bot.id) await getMainGuild().members.cache.get(bot.id)?.kick('봇 삭제됨.') + await getBotGuild().members.cache.get(bot.id)?.kick('봇 삭제됨.') get.user.clear(user) await discordLog( 'BOT/DELETE', diff --git a/utils/DiscordBot.ts b/utils/DiscordBot.ts index ad3252a..0198800 100644 --- a/utils/DiscordBot.ts +++ b/utils/DiscordBot.ts @@ -14,7 +14,8 @@ if (!global.kodl) { global.kodl.on('ready', async () => { console.log('Discord Client is ready') await getMainGuild().members.fetch() - console.log(`Fetched ${getMainGuild().members.cache.size} Members`) + await getBotGuild().members.fetch() + console.log(`Fetched ${getMainGuild().members.cache.size} + ${getBotGuild().members.cache.size} Members`) }) global.kodl.login(process.env.DISCORD_TOKEN ?? '') @@ -66,6 +67,8 @@ export const webhookClients = { export const getMainGuild = () => DiscordBot.guilds.cache.get(process.env.GUILD_ID ?? '') +export const getBotGuild = () => DiscordBot.guilds.cache.get(process.env.BOT_GUILD_ID ?? '') + export const discordLog = async ( type: string, issuerID: string, diff --git a/utils/Query.ts b/utils/Query.ts index ce26ab4..2ecd6e8 100644 --- a/utils/Query.ts +++ b/utils/Query.ts @@ -34,7 +34,7 @@ import { import knex from './Knex' import { Bots, Servers } from './Mongo' -import { DiscordBot, getMainGuild } from './DiscordBot' +import { DiscordBot, getBotGuild, getMainGuild } from './DiscordBot' import { sign, verify } from './Jwt' import { areArraysEqual, camoUrl, formData, getYYMMDD, serialize } from './Tools' import { AddBotSubmit, AddServerSubmit, ManageBot, ManageServer } from './Yup' @@ -87,9 +87,13 @@ async function getBot(id: string, topLevel = true): Promise { .where({ id }) .then((r) => r) } - const botMember = (await getMainGuild() - ?.members?.fetch(res.id) - .catch((e) => e)) as GuildMember + const botMember = + ((await getMainGuild() + ?.members?.fetch(res.id) + .catch((e) => null)) ?? + ((await getBotGuild() + ?.members?.fetch(res.id) + .catch((e) => null))) as GuildMember) const name = discordBot.displayName res.flags = res.flags |