Skip to content

Releases: duca-club/duca-sentinel

v3.0.0

Choose a tag to compare

@dec1belPP dec1belPP released this 11 May 04:34
v3.0.0

Welcome to DUCA Sentinel v3.0.0!

This is a major release. The bot is rebuilt around CommandKit v1 with a new app layout, scheduled news digest and alert tasks backed by @commandkit/tasks and SQLite, runtime feature flags from Supabase, and a refreshed environment + runtime story (Node 24+, pnpm, Biome).

Note

If you are upgrading from v2.x, treat this as a re-deploy: update dependencies, rebuild with the new codebase, replace removed environmental variables, and provision any new Supabase tables.

Known limitations / operational notes

  • Scheduled tasks use a local SQLite store at ./tasks.db (see commandkit.config.ts). Plan backups or persistence if you run multiple replicas or ephemeral disks.
  • News alerts use a fixed cron timezone (Asia/Kolkata) in code to match RSS timestamp behavior. Digests use NEWS_TIMEZONE (default Australia/Sydney). See src/app/tasks/news-alerts.ts and src/app/tasks/news-digest.ts.

Highlights

  • CommandKit v1 toolchain: pnpm run buildcommandkit build, pnpm startcommandkit start, pnpm run devcommandkit dev.

  • News pipeline v2: scheduled digest (top unseen articles) and keyword alerts, with dedupe/claim logic and posting helpers under src/lib/news/.

    Example Alert:

    image
  • Supabase-backed feature flags: global provider in src/app.ts using SupabaseFlagProvider and the feature_flags table.

  • Stricter configuration model: required DISCORD_TOKEN, MEMBER_ROLE_ID, NEWS_CHANNEL_ID, SUPABASE_URL, and SUPABASE_SECRET_KEY. Optional cron/keyword tuning documented in the README.

Breaking Changes (migration from v2.x)

  • Package manager & Node: use pnpm and Node.js 24+ per README.
  • Build/run scripts: no longer tsc + tsx as the primary workflow. Use CommandKit’s build / dev / start.
  • Environment variables: v2’s optional Supabase / guild / dev-role style setup is not carried forward as-is. You must align with src/lib/envConfig.ts and the README table (notably SUPABASE_SECRET_KEY instead of anon-only flows, and required NEWS_CHANNEL_ID).
  • Project layout: commands/events live under src/app/ with CommandKit conventions. Tasks live in src/app/tasks/.
  • Lint/format: Biome (pnpm run biome) replaces the older Prettier-centric setup.

What's Changed

🚀 Features

  • CommandKit v1 application structure with cache + tasks plugins (commandkit.config.ts).
  • Scheduled news digest task (src/app/tasks/news-digest.ts) with cron + timezone from env defaults.
  • Scheduled news alerts task (src/app/tasks/news-alerts.ts) with configurable keywords and hourly-style default scheduling.
  • Supabase-driven feature flags (src/providers/supabaseFlagProvider.ts, wired in src/app.ts).

🌟 Enhancements

  • Dependency refresh across discord.js, commandkit, and @supabase/supabase-js (see package.json).
  • Command caching + rate limiting.

⚠️ Breaking

  • Major runtime and configuration changes as summarized above. Review .env.example against your current deployment secrets and role IDs.

🔧 Maintenance

  • Tooling migration to Biome and TypeScript 6.x dev stack (package.json).

Full Changelog: v2.2.2...v3.0.0

v2.2.2

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 21:11
v2.2.2

Welcome to DUCA Sentinel v2.2.2!

This patch release improves the /verify command UX by making verification confirmation non-ephemeral, ensuring successful verification feedback is visible where intended.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

What's Changed

🐛 Bug Fixes

🔧 Maintenance

Full Changelog: v2.2.1...v2.2.2

v2.2.1

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 21:08
v2.2.1
8472b80

Welcome to DUCA Sentinel v2.2.1!

This patch release fixes duplicate article posting in the automatic Hacker News feed pipeline.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

What's Changed

🐛 Bug Fixes

  • fix(utils): fixed the auto news posting from The Hacker News RSS feed from repeating the same articles by @thelocalfrogman in 4b2e9af

Full Changelog: v2.2.0...v2.2.1

v2.2.0

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 21:05
v2.2.0
ca2ac0f

Welcome to DUCA Sentinel v2.2.0!

This release introduces automated cybersecurity news posting from The Hacker News into a dedicated Discord channel, including critical-news handling and setup documentation.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

Highlights

  • Automatic Hacker News posting to a dedicated channel
  • Critical-article detection and posting behavior
  • Environment-variable support and docs for news channel configuration

What's Changed

🚀 Features

  • feat(utils): add automatic news posting from The Hacker News into dedicated channel by @thelocalfrogman in 98482c4

🐛 Bug Fixes

📚 Documentation

New Contributors

Full Changelog: v2.1.0...v2.2.0

v2.1.0

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 13:10
v2.1.0

Welcome to DUCA Sentinel v2.1.0!

This release makes Supabase integration optional, allowing deployments to run with reduced dependencies while gracefully disabling database-backed features when credentials are not provided.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

Highlights

  • Optional Supabase integration support
  • Graceful fallback behavior in /verify and /calendar
  • Safer member cache handling when Supabase is unavailable
  • Updated environment documentation for optional Supabase setup

What's Changed

🚀 Features

🌟 Enhancements

  • refactor(utils): handle missing Supabase in memberCache by @dec1belPP in 080fdd0
  • refactor(commands): gracefully handle missing Supabase in verify and calendar by @dec1belPP in 6b8f716

🐛 Bug Fixes

📚 Documentation

  • docs(env): update environment variable docs for optional Supabase by @dec1belPP in 8feb217

Full Changelog: v2.0.1...v2.1.0

v2.0.1

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 13:07
v2.0.1

Welcome to DUCA Sentinel v2.0.1!

This is a focused hotfix release that corrects command references and emoji IDs after the TypeScript migration.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

What's Changed

🐛 Bug Fixes

Full Changelog: v2.0.0...v2.0.1

v2.0.0

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 13:05
v2.0.0
dbf2911

Welcome to DUCA Sentinel v2.0.0!

This release modernizes the codebase with a TypeScript migration and project-wide cleanup. It also includes documentation and CI updates to support the new structure.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

Highlights

  • TypeScript migration across the project
  • CI and pipeline updates for the refactored codebase
  • Emoji and project configuration refresh
  • Documentation refresh for the updated setup

What's Changed

🚀 Features

🌟 Enhancements

📚 Documentation

Full Changelog: v1.0.0...v2.0.0

v1.0.0

Choose a tag to compare

@dec1belPP dec1belPP released this 16 Apr 12:55
v1.0.0
6a85a32

Welcome to DUCA Sentinel v1.0.0!

This is the first public release of DUCA Sentinel. It establishes the core bot setup, command foundations, and server-specific configuration updates.

Note

This release is being published retroactively as part of our first formal release rollout.
The changes in this tag reflects earlier work that was shipped informally at the time. We are publishing historical notes now for completeness and version tracking.

What's Changed

🚀 Features

🐛 Bug fixes

📚 Documentation

Full Changelog: https://github.com/duca-club/duca-sentinel/commits/v1.0.0