1683 Commits
Author SHA1 Message Date
Arnaud GRIMBERT 969d24e369 Merge branch 'develop' into feat/customcss-status-page 2026-06-24 20:27:57 +02:00
Buco7854 a4cc322a55 feat: apply status page CSP to custom domains
Detect custom domains by comparing the request host to the app host and apply
the tightened CSP there too, not just on the public path. Run the middleware
before express.static so static-served root documents get the header, and keep
helmet after static so its default-src does not block custom domain API calls.
2026-06-24 18:21:16 +00:00
Alex Holliday 0f230c4d70 update tests 2026-06-24 10:53:13 -07:00
Alex Holliday 74783fd738 clean up logger 2026-06-24 10:53:03 -07:00
Alex Holliday 71d3e789ff split services to api, worker, and shared 2026-06-24 10:30:21 -07:00
Alex Holliday f59a7c3113 extract shared services 2026-06-23 12:26:42 -07:00
Buco7854 ffbf223288 feat: tighten CSP on the public status page document
Layer a stricter Content-Security-Policy on the /status/public document so
custom CSS cannot load external images, fonts, or stylesheets. Browsers
enforce the intersection of all CSP headers, so this only narrows the public
status page and never loosens the global policy, while keeping the app's
Google Fonts. Browser-enforced backstop behind the validator.
2026-06-23 19:25:40 +00:00
Buco7854 96021b7479 refactor: detect external CSS references with the CSS Syntax tokenizer
Replace the regex/escape-normalizer with @csstools/css-tokenizer (already
present transitively). Tokenizing resolves comments, hex escapes, and line
continuations into the real value before scanning, so obfuscated forms (a
scheme split by a line continuation or hex escape) cannot slip past. Scan
url-tokens and string-tokens to cover url(), quoted @import, and string-form
image functions. Add regression tests for the bypasses.
2026-06-23 19:25:18 +00:00
Alex Holliday f0a5974eaf update tests 2026-06-23 11:31:35 -07:00
Alex Holliday c9b8f434cd split worker into a scheduler and worker 2026-06-23 11:22:37 -07:00
Buco7854 3685e0c476 feat: reject custom CSS that references external resources
Reject status page custom CSS containing @import or a url() / image-set()
/ image() / cross-fade() whose target is http(s) or protocol-relative,
while allowing data: and relative URLs. The check normalizes comments and
CSS escapes first so obfuscated forms cannot slip past. Enforced in the
create/update body validation.
2026-06-22 23:49:58 +00:00
Alexander Holliday d6f9fca907 Merge pull request #3737 from bluewave-labs/feat/head-request-fe
feat: head request front end
2026-06-22 11:36:02 -07:00
Alex Holliday dead97169f add default GET 2026-06-22 11:24:03 -07:00
Alexander Holliday eb1d307932 Merge pull request #3736 from bluewave-labs/feat/head-request-be
feat: head request back end
2026-06-22 11:19:34 -07:00
Alex Holliday 71a4fddffd add tests 2026-06-22 10:38:15 -07:00
Alex Holliday 3489ee000d add super refine to reject method HEAD and advanced matching/json path 2026-06-22 10:31:13 -07:00
Alex Holliday 93b9c5033a add http metod option, add monitor.method guard to buildResponse 2026-06-22 10:26:10 -07:00
Alex Holliday 32ec909bf7 add default GET for imported monitors 2026-06-22 10:25:27 -07:00
Alex Holliday 8e5757beb1 add a method field to model, add enums and validation for http methods 2026-06-22 10:15:14 -07:00
Alex Holliday 9db4e557b3 record last finished timestamp for failures 2026-06-22 09:58:11 -07:00
Alex Holliday 89c86a7628 remove dead fields from WorkerSummary 2026-06-22 09:53:50 -07:00
Alex Holliday 755134ee7f add poll backoff tests 2026-06-22 09:15:39 -07:00
Alex Holliday 3b919044e6 wake worker on job change 2026-06-19 10:25:59 -07:00
Alex Holliday 08e9c02a3a update tests 2026-06-19 10:02:06 -07:00
Alex Holliday 85f674ee08 resovle merge conflict 2026-06-19 09:55:52 -07:00
Alexander Holliday 16036f421b Merge pull request #3734 from bluewave-labs/fix/maintenance-window-exit
fix: change status on exit maintenance window
2026-06-19 09:54:05 -07:00
Alex Holliday 7fe7b79103 update server tests 2026-06-19 09:51:25 -07:00
Alex Holliday a058c0518c change status on exit maintenance window 2026-06-19 09:37:24 -07:00
Alex Holliday 5ed9ab780a update tests, add check producer tests 2026-06-18 11:06:57 -07:00
Alex Holliday e32590425b remove unsed from constructor 2026-06-18 11:06:43 -07:00
Alex Holliday 190a3b47da add findByIdLean for workers 2026-06-18 11:06:19 -07:00
Alex Holliday f740eef0fa thread prefetched worker, remove dead code 2026-06-18 11:05:57 -07:00
Alex Holliday 5efd64d44d thread prefetched monitor trough status service 2026-06-18 11:05:17 -07:00
Alexander Holliday b28c84436e Merge pull request #3718 from harsh-aghara/feat/accept-status-codes-frontend
Add customUpCodes support for HTTP monitors (Frontend)
2026-06-18 10:51:03 -07:00
harsh-aghara 9082cf0826 test(server): add comprehensive edge-case tests for customUpCodes validation 2026-06-18 22:51:21 +05:30
Alex Holliday 9d453bdb0b Merge branch 'develop' into fix/excess-polling 2026-06-18 10:19:57 -07:00
Alex Holliday a54fdd89ab rearm jobs on maintenance window pause/delete 2026-06-18 10:17:33 -07:00
Alex Holliday bb3f471d19 Merge branch 'fix/evluation-order' into fix/excess-polling 2026-06-18 09:58:47 -07:00
harsh-aghara d8dafa311a feat: sync custom http status codes between frontend and backend
- Add standard custom HTTP status codes (Cloudflare, AWS ELB, etc.) to both frontend and backend allowlists.
- Enforce strict validation of custom status codes using Zod sets on both sides, ensuring they match perfectly.
2026-06-18 22:27:38 +05:30
Alex Holliday 398e5d7314 add tests 2026-06-18 09:57:05 -07:00
Alex Holliday 53ee45172d remove evluation from worker 2026-06-18 09:56:56 -07:00
Alex Holliday 1ea6dafb1a evaluate checks on buffer flush 2026-06-18 09:56:38 -07:00
Alex Holliday 9785dc146e inject job repo into buffer service 2026-06-18 09:56:22 -07:00
Alex Holliday 380fdf470f backoff excessive polling 2026-06-17 11:35:15 -07:00
Alex Holliday 5e0d8f0550 update tests 2026-06-17 11:01:56 -07:00
Alex Holliday ad9ff7f5df add mongo read/write per second stats 2026-06-17 10:55:39 -07:00
Alexander Holliday 8277c4ed13 Merge pull request #3728 from bluewave-labs/feat/db-queue
feat: db queue
2026-06-17 09:48:40 -07:00
Alex Holliday f65238da6c reformat 2026-06-17 09:45:59 -07:00
Alex Holliday 64b8aab4d6 repair tests 2026-06-17 09:40:51 -07:00
Alex Holliday 7244b35091 add upsertCleanup to schedule immediate cleanup jobs, cleanup orphaned jobs 2026-06-17 09:38:21 -07:00