• 3.0.0 59d6d4c999

    3.0.0
    All checks were successful
    push / validate (push) Successful in 17s
    Stable

    michael released this 2026-07-06 00:30:59 +02:00 | 12 commits to main since this release

    Sentinel 3.0.0

    Sentinel 3.0.0 marks a fundamental architectural shift. What was once a single-server bot driven by a flat config file is now a fully fledged, multi-guild moderation platform — with per-server persistent state, a Discord-native admin experience, and a guided first-run setup flow.


    Highlights

    • One process, many servers. A single Sentinel instance now safeguards any number of Discord guilds simultaneously, each with its own configuration, runtime state, event pipeline, and log destination.
    • SQLite-backed settings. Per-guild configuration and exemption lists live in a durable SQLite database rather than config.json.
    • Guided setup dashboard. The new /sentinel setup command walks administrators through every facet of configuration — log channel, detection mode, trap role, thresholds, ban DMs, exemptions, validation, enablement, and retroactive assignment.
    • Slash commands across the board. Every piece of configuration and day-to-day operation is now exposed through Discord slash commands. No file editing, no restarts.
    • Independent guild lifecycles. Each enabled server boots its own runtime; a validation failure in one guild never degrades protection in another.
    • Environment-driven process config. Tokens, database path, application ID, and command-registration scope are set through environment variables or a .env file.
    • Automatic legacy migration. Existing config.json values are imported into SQLite on first run for a frictionless upgrade.

    Detection & Runtime

    • A per-guild runtime manager routes Discord events exclusively to the relevant server controller, keeping guilds fully isolated.
    • Both AutoMod and message detection modes are supported and switchable at runtime — no restart needed.
    • AutoMod is now the recommended default: a ban triggers after 3 blocked pings within 1 hour.
    • Message mode defaults to an immediate ban after 1 ping within 30 seconds.
    • Trap-role assignment, reapplication, recovery from deletion, and AutoMod-rule repair all execute within each guild's isolated context.
    • Bot accounts and exempt users are skipped for both assignment and enforcement.
    • Logging is strictly guild-scoped — one server's activity never leaks into another's log channel.

    Commands

    • Core: /sentinel status, validate, enable, disable, mode, log-channel, thresholds, retroassign, export-config.
    • Trap roles: creation, adoption, and renaming.
    • AutoMod: managed mode toggle, rule adoption, and rule repair.
    • Ban DMs & appeals: configurable pre-ban direct messages with optional appeal-server invite.
    • Exemptions: per-guild trusted-user management.
    • All configuration commands require Manage Server or Administrator.
    • Slash-command registration can be global, limited to selected guilds, or disabled entirely via process configuration.

    Deployment & Migration

    • Local .env files load automatically; exported environment variables take precedence.
    • DISCORD_TOKEN is the canonical token setting; SENTINEL_BOT_TOKEN remains as a legacy alias.
    • The SQLite database defaults to sentinel.sqlite, overridable with SENTINEL_DB_PATH.
    • config.json settings import automatically on upgrade, but the file is deprecated for ongoing use.
    • New deployments should configure each server through /sentinel setup, run validation, then explicitly enable protection.
    • Documentation has been expanded to cover installation, Discord permissions and intents, commands, migration, configuration, day-to-day operation, and troubleshooting.

    Testing & Quality

    • Comprehensive test coverage added for multi-guild isolation, settings persistence, interactions, setup flows, Discord events, role management, AutoMod behavior, queues, bans, and logging.
    • V8-based coverage reporting with enforced thresholds.
    • CI pipeline runs the full coverage-enabled test suite alongside type-checking and production builds.

    Full changelog: 8adddb6...59d6d4c

    Downloads