Skip to content

Make /purge ephemeral by default and deploy commands on bot start - #1386

Merged
LunaUrsa merged 4 commits into
uatfrom
purge-ephemeral-deploy-on-start
Nov 14, 2026
Merged

LunaUrsa merged 4 commits into
uatfrom
purge-ephemeral-deploy-on-start

Conversation

@LunaUrsa

Copy link
Copy Markdown
Contributor

Summary

  • /purge: rename the private option to ephemeral (the code read ephemeral, so the reply was always public) and make the reply hidden by default. Closes /purge reads option 'ephemeral' but the option is named 'private' #1382.
  • Register slash commands on every bot start. It hashes the definitions and skips the Discord call when they match the last successful deploy, so tsc-watch restarts don't hit rate limits. A failure is logged and doesn't stop the bot; npm run tripbot:deployCommands still always deploys and exits on failure.
  • AGENTS.md: document the "ephemeral option, hidden by default" rule for commands and the deploy-on-start behavior.

Notes

  • The /purge option name and description changed, so this needs a command redeploy (the start-up deploy now does that on restart).
  • Deploy-on-start runs in every environment. entrypoint.sh already has an opt-in DEPLOY_DISCORD_COMMANDS_ON_START; with it set, Docker deploys once before start and once on start, and the second is skipped only if the hash file survived.
  • Other commands keep their opt-in ephemeral option; they aren't changed here.

Verification

  • npx vitest run src/discord/tests/utils src/discord/tests/guild/mid_guild_commands.test.ts: 620 passed, 1 expected fail.
  • npx tsc --noEmit clean; ESLint clean on the changed files except two object-curly-newline errors on a line already in mid_guild_commands.test.ts.

🤖 Generated with Claude Code

- /purge: rename the `private` option to `ephemeral` (the code read
  `ephemeral`, so replies were always public) and default to a hidden
  reply. Fixes #1382. Requires a command redeploy.
- Register slash commands on every bot start, skipping the Discord call
  when the definitions are unchanged since the last deploy. A failure is
  logged and does not stop the bot.
- AGENTS.md: document the `ephemeral`-by-default option rule and the
  deploy-on-start behavior.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@LunaUrsa
LunaUrsa requested a review from a team as a code owner November 12, 2026 03:50
github-actions Bot and others added 3 commits November 12, 2026 18:59
@LunaUrsa
LunaUrsa merged commit 1e69359 into uat Nov 14, 2026
12 checks passed
@LunaUrsa
LunaUrsa deleted the purge-ephemeral-deploy-on-start branch November 14, 2026 20:00
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.

/purge reads option 'ephemeral' but the option is named 'private'

1 participant