Alex Holliday
699883e0b1
add jitter and tests
2026-06-16 11:34:58 -07:00
Alex Holliday
f7211711ce
add db queue worker tests
2026-06-16 10:59:56 -07:00
Alex Holliday
cb0dd878d6
update .env.example
2026-06-16 10:59:46 -07:00
Alex Holliday
8c5be9ef00
removed pulsecron and ioredis
2026-06-16 10:50:50 -07:00
Alex Holliday
d1b6d08c73
add tests
2026-06-16 10:50:39 -07:00
Alex Holliday
2d68e96782
drop jobs in migration
2026-06-16 10:50:29 -07:00
Alex Holliday
306f2a60a2
update tests
2026-06-15 12:22:55 -07:00
Alex Holliday
abf6dc2908
single worker ID
2026-06-15 12:21:36 -07:00
Alex Holliday
7ce6068757
fix migration
2026-06-15 12:12:14 -07:00
Alex Holliday
a7d9bb822e
add tests, fix failing tests
2026-06-15 12:05:31 -07:00
Alex Holliday
142ecaaf8b
handle renewing locks for long running jobs
2026-06-15 12:05:15 -07:00
Alex Holliday
90bbc764fc
readd queue-worker domain, add heartbewat to db-queue
2026-06-15 11:26:49 -07:00
Alex Holliday
ae4c433246
add a feature flag to toggle primary worker processing jobs or not
2026-06-15 11:02:46 -07:00
Alex Holliday
d2461ef118
remove old queues
2026-06-15 10:39:48 -07:00
Alex Holliday
47162f2064
add a batch claim method
2026-06-12 16:04:31 -07:00
Alex Holliday
8b9c41464a
dbQueueWorker
2026-06-12 15:43:36 -07:00
Alex Holliday
51b6ec1751
add check producer and evaluator
2026-06-12 12:36:50 -07:00
Buco7854
6165ae60e6
Merge branch 'develop' of https://github.com/bluewave-labs/checkmate into feat/customcss-status-page
...
# Conflicts:
# server/src/api/routes/statusPageRoute.ts
2026-06-12 16:01:03 +00:00
Buco7854
69e142f711
fix: restrict status page mutations to admins and superadmins
...
Creating, updating and deleting status pages was only guarded by
verifyJWT, so any authenticated team member could set fields including
the new customCSS via a direct API call. The admin gating existed only
in the client UI (hidden buttons), and the create/configure routes had
no guard, so the form was reachable by URL. Enforce the role at the API
with isAllowed, matching the monitor routes.
2026-06-12 15:43:58 +00:00
Alex Holliday
eff4f8ad69
fix method name
2026-06-11 15:20:13 -07:00
Alex Holliday
bca902471d
update tests
2026-06-11 15:19:53 -07:00
Alex Holliday
1b3f2f0365
add toStatusResponse to service, add findUnevaluated to repo
2026-06-11 15:19:45 -07:00
Alex Holliday
be12991997
add tests
2026-06-11 14:19:21 -07:00
Alex Holliday
54596fe776
add mongodb-memory-server for testing
2026-06-11 14:19:14 -07:00
Alex Holliday
8d637dbcac
update validation
2026-06-11 14:18:56 -07:00
Alex Holliday
771fd5b50f
add migration for lastEvaluatedAt backfill
2026-06-11 14:18:44 -07:00
Alex Holliday
8dedf2a742
add last evaluated at field
2026-06-11 14:18:32 -07:00
Alex Holliday
c882daf000
add job domain
2026-06-11 14:18:21 -07:00
Ian Troisi
517139cbf4
fix: cache negative custom domain CORS lookups
...
Use a shorter TTL for rejected origins so unknown domains do not hit
the database on every cross-origin request.
2026-06-11 14:48:31 -04:00
Ian Troisi
ef049b6521
fix: resolve CORS TypeScript error and format server files
...
Type defaultCorsOptions as CorsOptions so allowedHeaders is compatible
with the cors middleware. Format files from develop merge for CI.
2026-06-11 13:55:10 -04:00
Ian Troisi
33f8641f3a
Merge branch 'develop' into feat/status-page-custom-domain
2026-06-11 13:54:27 -04:00
Alex Holliday
ac77216f07
add middleware tests
2026-06-11 10:42:15 -07:00
Alex Holliday
a43363ebfc
apply middleware
2026-06-11 10:42:05 -07:00
Alex Holliday
0ca738b080
add an upload type with size constraints and acceptable file types
2026-06-11 10:41:53 -07:00
Alex Holliday
091c36cbf3
create upload middleware
2026-06-11 10:40:59 -07:00
Ian Troisi
120708ed47
perf: cache custom domain CORS origin lookups
...
Avoid hitting the database on every cross-origin request by caching
published custom domain checks for five minutes.
2026-06-11 13:15:02 -04:00
Ian Troisi
6a1ab622b3
fix: scope custom domain CORS to public status page routes
...
Only allow registered custom domain origins on public GET/OPTIONS status
page API routes instead of the entire application API surface.
2026-06-11 13:15:02 -04:00
Ian Troisi
0aef8b652f
fix: use partial index for status page customDomain
...
Replace the sparse unique index with a partial index so multiple status
pages without a custom domain no longer collide on null values.
2026-06-11 13:14:52 -04:00
Alex Holliday
fa7eaa4788
update tests
2026-06-10 13:13:01 -07:00
Alex Holliday
ee9c08b1bb
extract reactors and pipeline
2026-06-10 13:12:51 -07:00
Alex Holliday
c5f57eda62
update tests
2026-06-10 09:30:24 -07:00
Alex Holliday
2bf3c08f3c
reorg jobqueue to worker
2026-06-10 09:30:14 -07:00
Ian Troisi
187c8eaba1
chore: format openapi.json with prettier
2026-06-10 11:03:34 -04:00
Buco7854
0f4240d3db
feat: cap custom CSS length and add validation tests
...
Bound customCSS to 100000 characters on both the client schema and the
server body validation (the server is the enforcement boundary; multer's
1MB field cap was the only limit), regenerate the OpenAPI spec, and add
a validation test suite covering acceptance, clearing, the length cap,
and type rejection.
2026-06-10 17:02:17 +02:00
Ian Troisi
a37bc63f31
Merge branch 'develop' into feat/status-page-custom-domain
...
Resolve conflicts from server reorganization while preserving custom
domain support for published status pages.
2026-06-10 10:55:59 -04:00
Buco7854
73f95ac8e1
feat: complete custom CSS support for status pages
...
The customCSS field existed on the model, types, and form schema but was
never editable, sent to the API, or rendered. Wire it end to end:
- Accept customCSS in the create/update status page body validation and
regenerate the OpenAPI spec
- Add a Custom CSS editor (multiline field) to the status page form and
include the value in the submitted form data
- Support multiline mode in the shared TextInput component
- Inject the saved CSS via a style tag when rendering the status page
2026-06-10 14:16:27 +00:00
Alex Holliday
692d4d89d6
update configs
2026-06-09 12:35:57 -07:00
Alex Holliday
f1b104b78d
ignore unknown on format
2026-06-09 12:35:19 -07:00
Alex Holliday
3c2b571313
update openapi docs
2026-06-09 12:34:57 -07:00
Alex Holliday
abec4e6c70
update tests
2026-06-09 12:34:30 -07:00