Files
Checkmate/server
gorkem-bwl d80d939bd8 test(status-page): cover theme-flag helpers and document remaining caveats
Address review follow-ups on PR #3568:

- Extract the controller's withoutThemeFields and applyDefaultTheme helpers from a private class field into a standalone module (controllers/statusPageThemeFlag.ts) so they can be tested without a controller harness; the controller is now a one-line consumer
- Add 9 unit tests covering both helpers (test/unit/controllers/statusPageThemeFlag.test.ts): no-mutation guarantees, partial inputs, all-fields-preserved verbatim, override-with-defaults semantics, and "page has no theme set yet" — the flag-off path is now exercised in both directions
- Expand the comment over withoutThemeFields to spell out why the strip is silent rather than a 400: this is an ops kill switch, not API semantics; clients shouldn't need to know whether themes are disabled today

Two caveats called out in review that this commit does NOT change:
- Mongoose `default:` directives only inject during hydration, not on partial updates. Legacy documents updated with `findOneAndUpdate` still won't have `theme` / `themeMode` written to Mongo. They render as defaults on read because the schema injects them — functionally equivalent, but the DB will hold a mix of present and absent fields indefinitely. Acceptable per the original commit intent.
- docs/plans/status-page-themes.md (304 lines) covers both backend and frontend work for the themes feature. It lives in this PR as the design artefact that drove both branches; moving it for purity would break the "where did this come from?" trail. Leaving it in.
2026-04-27 19:26:16 -04:00
..
2025-06-01 11:55:16 -07:00
2026-03-04 17:50:27 +00:00
2025-04-20 11:29:53 -07:00
2025-09-22 12:53:44 -07:00
2025-04-20 11:29:53 -07:00
2025-04-20 11:29:53 -07:00
2025-07-21 10:34:04 -07:00
2025-04-20 11:29:53 -07:00
2026-01-09 13:36:58 -08:00
2026-04-20 11:06:56 -07:00
2026-04-20 11:06:56 -07:00
2026-03-06 14:27:57 -08:00

Checkmate backend

The backend service for Checkmate, an open source uptime and infrastructure monitoring application

This directory contains the backend of Checkmate, which handles data processing, storage, and API services for the Checkmate monitoring tool. The backend is responsible for managing uptime checks, handling real-time alerts, and storing historical monitoring data.

Checkmate's backend is designed to be lightweight and scalable, ensuring reliable performance even with a high number of active monitors.

Installation & documentation

For setup instructions, configuration details, and deployment guidelines, please visit our official documentation at docs.checkmate.so.