nate
|
d159d1b17a
|
update: plans
|
2026-03-22 05:46:41 +04:00 |
nate
|
1049677f19
|
add: 4x pro plan
|
2026-03-22 05:33:39 +04:00 |
nate
|
40c4d3341c
|
feat: free tier region limits
|
2026-03-22 05:24:01 +04:00 |
nate
|
859a55d66b
|
update: increase pro plan limit
|
2026-03-21 22:43:04 +04:00 |
nate
|
8be0632ea8
|
update: decrease max monitors for pro
|
2026-03-21 22:30:19 +04:00 |
nate
|
d6aa4d878f
|
update: free plan monitors
|
2026-03-19 17:57:10 +04:00 |
nate
|
c9130243e8
|
feat: crypto payment system with HD wallets, Freedom.st integration, and checkout UI
|
2026-03-18 23:04:17 +04:00 |
nate
|
bead49b870
|
fix: replace error() with set.status across all API routes (fixes undefined error helper)
|
2026-03-18 22:46:57 +04:00 |
nate
|
c89b63bd97
|
feat: implement free/pro plan system with monitor and interval limits
|
2026-03-18 22:40:45 +04:00 |
nate
|
56114a3852
|
fix: enable pgcrypto extension for gen_random_bytes in monitor IDs
|
2026-03-18 21:08:19 +04:00 |
nate
|
2075de164d
|
update: use short 16-char hex IDs for new monitors instead of UUIDs
|
2026-03-18 21:05:01 +04:00 |
nate
|
e4895afe8e
|
update: default ping interval to 30s, update free tier limit to match
|
2026-03-18 21:01:41 +04:00 |
nate
|
fd821acec2
|
update: default ping interval to 10s
|
2026-03-18 20:59:50 +04:00 |
nate
|
c74e2d3b58
|
chore: add more timeout options, default to 10s
|
2026-03-18 20:50:16 +04:00 |
nate
|
0d059a0112
|
chore: set 2s minimum interval, update marketing and docs to match
|
2026-03-18 20:47:11 +04:00 |
nate
|
42024a9fc3
|
fix: use monitor-side checked_at timestamp instead of coordinator arrival time
|
2026-03-18 18:50:16 +04:00 |
nate
|
425bfbfc39
|
perf: optimize monitor runner, fix SSE leak, deduplicate shared utils
|
2026-03-18 18:44:08 +04:00 |
M1
|
c5eb514990
|
feat: lookahead scheduling — API returns scheduled_at_ms, nodes sleep-until for tight coordination
|
2026-03-18 17:14:28 +04:00 |
M1
|
f7ab3b96b2
|
feat: per-region due scheduling + run_id to group pings across regions
|
2026-03-18 16:36:35 +04:00 |
M1
|
e1bb39431d
|
fix: use URL.searchParams to parse region query param in /internal/due
|
2026-03-18 16:21:24 +04:00 |
M1
|
93db31db3b
|
feat: multi-region monitor support — region selector in UI, region flag on pings
|
2026-03-18 16:08:39 +04:00 |
M1
|
d3ee0ef9d5
|
fix: revert grace period, increase poll interval to 500ms to prevent doubles without adding jitter
|
2026-03-18 14:27:38 +04:00 |
M1
|
5836c44228
|
fix: add 200ms grace period to due query to prevent double-pings
|
2026-03-18 14:21:21 +04:00 |
M1
|
6e1d642c77
|
fix: allow null status_code in ingest schema; check HTTP status in post_result
|
2026-03-18 13:28:42 +04:00 |
M1
|
f7d6eff972
|
fix: block sub-keys from accessing/modifying email, account key, and other sub-keys
|
2026-03-18 11:51:52 +04:00 |
M1
|
1a7bc4dfa5
|
fix: sameSite=none for cross-origin cookie (pingql.com → api.pingql.com)
|
2026-03-18 11:41:00 +04:00 |
nate
|
5a0cf5033b
|
fix: harden auth, SSRF, query engine, and cookie security
|
2026-03-18 11:37:33 +04:00 |
M1
|
fa8ff8b361
|
fix: explicit OPTIONS handler for CORS preflight
|
2026-03-18 09:41:25 +04:00 |
M1
|
7a9417297f
|
fix: add preflight CORS options for api.pingql.com
|
2026-03-18 09:41:09 +04:00 |
M1
|
841a852491
|
feat: split web and api into separate apps
|
2026-03-18 09:33:46 +04:00 |