checkmate-3.4.mp4
What's new
- This release completes the v2 UI rebuild. Every v1 component has been removed and every page — checks, infrastructure, incidents, notifications, maintenance, status pages, auth, account, logs, settings, and layout — has been rebuilt from scratch with a modern, consistent component system.
- Infrastructure monitors can now trigger incidents automatically when CPU, memory, disk, or temperature metrics exceed configurable thresholds. The notification pipeline was refactored to support both status-change alerts and threshold breach alerts through a single, unified system.
- Monitor stats now track max response times alongside averages, so you can spot spikes at a glance. The detail page histograms also gained average and max overlays, and search across uptime and infrastructure pages is now debounced for a smoother experience.
- A new background cleanup job runs periodically to remove orphaned monitors, checks, incidents, and stats that can accumulate over time, keeping the database lean without manual intervention.
- The settings page was rewritten from the ground up — the old collection of JSX files has been replaced with a single TSX page backed by Zod schema validation, making the form type-safe and much easier to extend.
- On the security and infrastructure side, status page routes now enforce proper authentication middleware, Husky pre-commit hooks have been added to the repo, and several smaller fixes landed across the board.
Thank you to our new contributors @akashmannil, @sukritraj02, and @llpingll for their first contributions in this release!
What's Changed
- bump mongo for ARM to 6.0 by @ajhollid in #3214
- feat: v2 checks by @ajhollid in #3215
- fix: cleanup by @ajhollid in #3217
- feat: v2 infra by @ajhollid in #3218
- Feat/v2 infra details by @ajhollid in #3219
- fix: remove unused infra components by @ajhollid in #3220
- Feat/v2 notifications by @ajhollid in #3221
- fix: latest incidents panel overflow text on smaller devices by @akashmannil in #3216
- fix: missing create header by @ajhollid in #3222
- Feat: v2 notifications create by @ajhollid in #3223
- feat: V2 create monitors by @ajhollid in #3225
- fix: remove unused strings by @ajhollid in #3226
- hardware->infrastructure by @ajhollid in #3227
- feat: v2 incidents by @ajhollid in #3230
- feat: v2 status page by @ajhollid in #3231
- Fix validation by @ajhollid in #3234
- Revert "remove unused strings" by @ajhollid in #3235
- sort by @ajhollid in #3236
- Fix/strings by @ajhollid in #3237
- Fix: Send Email Invite by @Br0wnHammer in #3233
- #3164 by @sukritraj02 in #3213
- feat: v2 create config status page by @ajhollid in #3238
- fix/invite permisisons by @ajhollid in #3240
- fix/incidents selector by @ajhollid in #3241
- feat: v2 maintenance by @ajhollid in #3242
- feat: v2 create maintenance by @ajhollid in #3243
- feat: add husky by @ajhollid in #3244
- fix: pagination and empty state fix by @ajhollid in #3245
- Fix/alignment by @ajhollid in #3246
- feat: Allow all users to change password (not just admins) by @llpingll in #3185
- Fix: empty state by @ajhollid in #3247
- Feat/v2 logs by @ajhollid in #3249
- Fix/unit formatting by @ajhollid in #3250
- feat: v2 auth login by @ajhollid in #3251
- feat: v2/password reset by @ajhollid in #3253
- feat/v2 register by @ajhollid in #3254
- feat: v2 account by @ajhollid in #3261
- feat: v2 edit user by @ajhollid in #3262
- feat: v2 set new password by @ajhollid in #3264
- feat: v2 not found by @ajhollid in #3265
- fix: changes for debounce search in uptime/infrastructure pages by @akashmannil in #3257
- fix; cleanup by @ajhollid in #3266
- feat: v2 layout by @ajhollid in #3267
- fix: cleanup by @ajhollid in #3269
- feat: monitor status by @ajhollid in #3270
- fix: put -> patch by @ajhollid in #3273
- fix: clean up index.css by @ajhollid in #3274
- Fix/ts by @ajhollid in #3275
- fix: monitor status by @ajhollid in #3276
- Fix/failed check warn by @ajhollid in #3278
- fix: remove unused utils, convert utils to TS by @ajhollid in #3277
- fix: cleanup by @ajhollid in #3281
- fix: initializing stats by @ajhollid in #3282
- clean up strings by @ajhollid in #3283
- fix: routes by @ajhollid in #3284
- fix port input by @ajhollid in #3285
- feat: infra thresholds by @ajhollid in #3286
- Feat/incident on threshold exception by @ajhollid in #3290
- enhancement: add average and max response time to histogram by @akashmannil in #3279
- feat: notification refactor by @ajhollid in #3291
- fix/incident reason by @ajhollid in #3292
- fix: add missing pluralization strings by @ajhollid in #3293
- fix: remove incidents on delete by @ajhollid in #3294
- feat: cleanup job by @ajhollid in #3295
- feat: max response time rolling stats by @ajhollid in #3296
- fix: increment before calculate by @ajhollid in #3297
- fix monitor stats bug by @ajhollid in #3298
- Settings zod schema by @karenvicent in #3288
- fix: remove unique constraint by @ajhollid in #3300
- fix logical errors in settings form by @ajhollid in #3301
- fix: settings form by @ajhollid in #3302
- fix/settings refactor by @ajhollid in #3316
- Fix: Authentication Middleware in StatusPage by @Br0wnHammer in #3310
- develop -> master by @ajhollid in #3319
- no cache by @ajhollid in #3320
- develop->master by @ajhollid in #3321
- ts error by @ajhollid in #3322
- develop -> master by @ajhollid in #3323
New Contributors
- @akashmannil made their first contribution in #3216
- @sukritraj02 made their first contribution in #3213
- @llpingll made their first contribution in #3185
Full Changelog: v3.3...v3.4.0