Skip to content

v1.2 Update (Don't Merge!!) - #124

Merged
doodles172 merged 17 commits into
mainfrom
v1.2
Jul 28, 2026
Merged

v1.2 Update (Don't Merge!!)#124
doodles172 merged 17 commits into
mainfrom
v1.2

Conversation

@doodles172

Copy link
Copy Markdown
Member

This will be merged later today when v1.2 gets announced in the Discord Server.

Copilot AI review requested due to automatic review settings July 28, 2026 17:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR appears to bundle the v1.2 update work: rebranding references (Duck Organization → Vantern / questbot), plus multiple new bot features (giveaways, sticky messages, auto-publish) and sharding-aware schedulers to reduce cross-shard duplication.

Changes:

  • Rebrand links/package names and update docs/metadata across the repo (README, workflows, Docker, funding, dashboard footer, package names).
  • Add new bot features: giveaways (DB + command + button handler + scheduler), sticky messages (DB + listener + command), and announcement auto-publishing (settings + listener + module).
  • Refactor schedulers/data fetchers to be shard-aware using a shared sharded polling utility.

Reviewed changes

Copilot reviewed 49 out of 52 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
README.md Rebrand references/links and update contributing info.
packages/database/prisma/schema.prisma Add Giveaway + Channel models; extend Server relations.
package.json Update workspace scripts to new package scope.
Dockerfile Update pnpm filters/build targets to new package names.
biome.json Allow new global const names for caches/sharding.
apps/dash/app/routes/auth/auth.tsx Update “Powered by” link/text to Vantern.
apps/bot/src/util/sharding.ts Introduce shard helpers + shared sharded poller used by schedulers.
apps/bot/src/util/profile.ts Add shared embed/button builder for profile assets.
apps/bot/src/util/getChannel.ts Add cached-or-fetch channel helper.
apps/bot/src/listeners/sticky.ts Add listener to repost stickies on message create.
apps/bot/src/listeners/ready.ts Start giveaway scheduler; shard-scope mute fetching and purge behavior.
apps/bot/src/listeners/messageDeleteBulk.ts Clean up giveaway rows when messages are bulk-deleted.
apps/bot/src/listeners/messageDelete.ts Clean up giveaway rows when a message is deleted.
apps/bot/src/listeners/messageCreate.ts Add auto-publish support and refine blocked-word handling flow.
apps/bot/src/listeners/guildDelete.ts Purge in-memory caches on guild removal; update feedback link text.
apps/bot/src/lib/welcomeModule.ts Update settings read to new getSettings(guildId) signature.
apps/bot/src/lib/sticky.ts Implement sticky storage/caching and reposting behavior.
apps/bot/src/lib/settings.ts Add settings caching and new autoPublisher setting.
apps/bot/src/lib/reminders.ts Make due-reminder selection shard-aware via raw SQL.
apps/bot/src/lib/reminderEvent.ts Use shared sharded poller for reminders.
apps/bot/src/lib/mutes.ts Make active-mute selection shard-aware via raw SQL.
apps/bot/src/lib/logging.ts Update settings lookup + adjust truncate behavior.
apps/bot/src/lib/giveaways.ts Implement giveaway persistence + concurrency-safe enter/leave + due selection.
apps/bot/src/lib/giveawayEvent.ts Add scheduler + giveaway ending flow (message edit + winner announce).
apps/bot/src/lib/bans.ts Make expired-ban purge shard-aware via raw SQL.
apps/bot/src/lib/autoPublisher.ts Implement announcement-channel auto-crosspost with rate window.
apps/bot/src/lib/automod.ts Cache blocked words and invalidate cache on mutations.
apps/bot/src/interaction-handlers/ticket/removeTicketHandler.ts Update settings lookup signature.
apps/bot/src/interaction-handlers/ticket/createTicketHandler.ts Update settings lookup signature.
apps/bot/src/interaction-handlers/giveaway/giveawayHandler.ts Add button handler for giveaway enter/leave interactions.
apps/bot/src/commands/utility/user.ts Remove old dev-only /user command implementation.
apps/bot/src/commands/utility/setup.ts Update settings lookup signature.
apps/bot/src/commands/utility/settings.ts Add Auto Publisher settings panel + toggle; update settings lookup signature.
apps/bot/src/commands/utility/reminder/reminder.ts Block reminder creation if it contains server-blocked words.
apps/bot/src/commands/utility/profile/user.ts Add expanded /user command (pfp/banner/info) using shared profile utilities.
apps/bot/src/commands/utility/profile/pfp.ts Add dedicated /pfp command using shared profile utilities.
apps/bot/src/commands/utility/ping.ts Add dev-only /ping command including shard info.
apps/bot/src/commands/utility/help.ts Rebrand status/docs links.
apps/bot/src/commands/utility/giveaway.ts Add dev-only /giveaway command (start/end/delete).
apps/bot/src/commands/utility/fun/confess.ts Block confessions containing server-blocked words; update settings lookup signature.
apps/bot/src/commands/promotion/invite.ts Rebrand invite URL.
apps/bot/src/commands/promotion/discord.ts Rebrand discord URL.
apps/bot/src/commands/promotion/bot.ts Rebrand bot invite URL.
apps/bot/src/commands/moderation/sticky.ts Add dev-only /sticky moderation command (set/remove).
apps/bot/src/commands/moderation/nick.ts Block nicknames containing server-blocked words.
apps/bot/src/commands/moderation/automod.ts Update automod command description text.
apps/bot/package.json Rename bot package scope and update metadata.
.github/workflows/build.yaml Update Docker image tag naming in CI.
.github/FUNDING.yml Update GitHub Sponsors org handle.
.dockerignore Add git/turbo/env files to Docker ignore list.
Comments suppressed due to low confidence (1)

apps/bot/src/lib/sticky.ts:60

  • removeSticky clears the DB fields and the per-guild cache, but it never clears lastRepostAt / pendingRepost for that channel. This can retain channel IDs indefinitely even after sticky removal.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Comment thread apps/bot/src/util/sharding.ts
Comment thread apps/bot/src/lib/sticky.ts
Comment on lines +92 to +97
export class GiveawayFullError extends Error {
public constructor() {
super("This giveaway is full, it has reached it's maximum number of entries.");
this.name = 'GiveawayFullError';
}
}
Comment thread README.md
# Contributing

Quest Bot is worked on by Duck Organization but we are opensource!
Quest Bot is worked on by Vantern but we are opensource!
Copilot AI review requested due to automatic review settings July 28, 2026 21:01

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 49 out of 52 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (2)

README.md:27

  • The sentence uses "opensource" as one word and reads a bit ungrammatical. Consider using "open source" (or "open-source") and adding a comma for readability.
Quest Bot is worked on by Vantern but we are opensource!

apps/bot/src/lib/giveaways.ts:94

  • The error message uses "it's" ("it is") instead of the possessive "its", which is user-facing and should be corrected.

Copilot AI review requested due to automatic review settings July 28, 2026 21:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 49 out of 52 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

apps/bot/src/lib/giveaways.ts:94

  • Typo/grammar in the error message: "it's" should be "its" (and the sentence reads better without the comma splice).

@doodles172
doodles172 merged commit 623f6aa into main Jul 28, 2026
4 checks passed
@doodles172
doodles172 deleted the v1.2 branch July 29, 2026 02:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants