github bluewave-labs/Checkmate v3.6.1
Checkmate V3.6.1

6 hours ago

What's New

  • The checkmate.so website has been fully renewed, with a refreshed design and updated messaging across the board.
  • The documentation at checkmate.so/docs has been overhauled to reflect v3.6.1, covering the new features, updated setup instructions, and corrected references throughout.
  • Teams are now first-class citizens in Checkmate. You can group monitors by team, assign ownership, and scope notifications and access accordingly — making multi-team deployments and larger organizations much easier to manage.
  • Data retention is now configurable. Older checks and related records can be pruned automatically based on your retention policy, keeping the database lean and predictable over long-running deployments.
  • Two new notification channels have landed: Telegram and Twilio SMS. You can now deliver incident alerts via Telegram bots or send SMS messages through Twilio, alongside the existing email, Slack, Discord, webhook, Matrix, and Pushover channels.
  • Pushover is also now supported as a notification channel, giving mobile-first teams another reliable way to receive alerts.
  • The monitor status engine has been refactored end-to-end for atomicity and correctness. State transitions (up → down, down → up) are now evaluated more reliably, with tightened streak and heartbeat handling, fixes to "down" notifications that were not being dispatched, and a proper initial state so the first check after creation behaves predictably.
  • Status pages now include an infrastructure section. Public status pages can surface CPU, memory, and disk health from infrastructure monitors alongside uptime, with the status page API refresh interval tightened to 10 seconds for near real-time updates.
  • Status bar messages on public status pages have been rewritten to be clearer and more informative, and down monitors now correctly display a "down" state instead of a misleading "active for…" label.
  • Bulk edit for monitor notifications is now available via a dedicated endpoint, so you can attach or detach notification channels across many monitors in a single call instead of editing them one at a time.
  • Internationalization has been overhauled. All locale files have been restructured and translated, remaining zh-TW strings have been filled in, and the legacy PoEditor workflow has been disabled in favor of the new structure. Translation contribution guidance has also been refreshed.
  • The Matrix notification channel has been fixed and is working again for teams that rely on it.
  • DNS lookups now respect a configured cache TTL, preventing stale DNS results from silently breaking monitoring when upstream IPs change.
  • The "breached" infrastructure status has been renamed to "threshold exceeded" across the UI for clarity.
  • The login page no longer shows the register tip when registration isn't applicable, and users landing on a fresh instance with no super admin are now redirected to the setup flow automatically.
  • The production Docker Compose setup and nginx configuration have been updated and unified, making deployments more consistent across environments. A Windows batch script (build_images.bat) has also been added for building Docker images on Windows.
  • Test coverage has grown substantially: new service tests, integration tests, monitor status tests, heartbeat tests, initialization tests, and a dedicated check-tests workflow have all been added to catch regressions earlier.
  • Across the backend, controllers, services, middleware, validation, and migrations have been retyped and linted into a clean state — auth, diagnostic, incident, invite, log, maintenance window, monitor, notification, queue, settings, and snapshot controllers have all received typing and validation fixes, and the remaining ESLint errors have been resolved.
  • Other fixes worth calling out: email templates are now copied to dist during build (fixing empty notification emails), MJML templates are no longer ignored by TSC, the geocheck update logic has been corrected, the scheduler has been bumped and now consumes scheduler events, monitor stats are no longer mutated in memory, role types are enforced correctly, notification timeouts have been tightened, and the demo monitor import and demo user flows have been fixed.
  • Documentation has seen a round of polish: the README now includes a monitor lifecycle explanation and a Prerequisites section, CLAUDE.md has been expanded with the backend architecture flow and repository pattern, broken docs links have been fixed, the Node.js version requirement has been updated to >=20, and several typos and outdated references (including the old bluewave-uptime repo name) have been corrected.

Thank you to our new contributors @tb102122, @ashu130698, @LeC-D, @mayssagl, @ad2ien, @SkyKingPX, @egeoztass, @ZeinebMegaadi, and @Smolcup for their first contributions in this release!

What's Changed

New Contributors

Full Changelog: v3.5.1...v3.6.0

Don't miss a new Checkmate release

NewReleases is sending notifications on new releases.