This website requires JavaScript.
287e47df7f
Add a read-only Settings page for the loaded configuration (closes #402 )
clawbot
2026-10-02 12:30:21 +02:00
8b5541734e
Run script/test quietly with coverage, rerun failed tests verbosely (closes #315 )
clawbot
2026-10-02 11:58:43 +02:00
c513816a55
Refuse [::], 0.0.0.0, IPv6 multicast and documentation space (closes #341 )
clawbot
2026-10-02 11:22:30 +02:00
2bb4683512
Discard fx's own log in tests that build an fx app (closes #230 )
clawbot
2026-10-02 11:08:38 +02:00
5b1d283d06
Say what each action did in a one-line notice (closes #383 )
clawbot
2026-10-02 10:30:31 +02:00
b78abdc9da
Drop TODO.md's stale docs-only cache caveat (closes #421 )
clawbot
2026-10-02 10:14:40 +02:00
c23ffbac65
Widen the webhook page by half so an entrypoint URL fits on one line (closes #350 )
clawbot
2026-10-02 09:49:33 +02:00
2ac4d4d793
Send the build version in the outbound User-Agent (closes #313 )
clawbot
2026-10-02 09:48:34 +02:00
eb4c4cc849
Serve /metrics from a registry of its own (closes #227 )
clawbot
2026-10-02 09:06:20 +02:00
cb7bafab17
Derive the image's version from the .git in the build context (closes #366 )
clawbot
2026-10-02 08:41:20 +02:00
2416528b77
Render admin page errors in the normal layout (closes #382 )
clawbot
2026-10-02 08:15:12 +02:00
38157d8936
Say how to allow a refused private target address (closes #398 )
clawbot
2026-10-02 07:52:50 +02:00
7d360babed
Logging in returns to the page that was asked for (closes #384 )
clawbot
2026-10-02 06:57:51 +02:00
803a94be37
Add a statistics pane to the webhook page (closes #368 )
clawbot
2026-10-02 06:41:00 +02:00
43ed8d4834
Move webhook pages to /hook/ID and inbound URLs to /h/UUID (closes #367 )
clawbot
2026-10-02 06:32:14 +02:00
1c721ede41
Run the test suite without -v so a failure shows in the build log (next side of #414 )
clawbot
2026-10-02 06:31:53 +02:00
bfdbc937c6
Keep make test under 2 GB of memory (closes #344 )
clawbot
2026-10-02 03:02:28 +02:00
1cafaeb953
Reword the build-architecture history line in TODO.md (closes #412 )
clawbot
2026-10-02 01:08:22 +02:00
515c359e56
Trust the RFC 1918 ranges as proxies when TRUSTED_PROXIES is unset (closes #333 )
clawbot
2026-10-02 00:41:36 +02:00
30e65dce53
State what the default blocklist covers (closes #244 )
clawbot
2026-10-02 00:21:35 +02:00
1ac4fe0be4
Show 50 recent events with size, processing time and status (closes #347 )
clawbot
2026-10-01 23:50:00 +02:00
a56f1fe0c8
Remove the fixed Account Type row from the profile page (closes #401 )
clawbot
2026-10-01 23:24:41 +02:00
9d29baaa2d
Commit the Alpine.js tarball in 3p/ and extract it at build time (closes #345 )
clawbot
2026-10-01 22:44:41 +02:00
507980a347
Bound username length at creation (closes #184 )
clawbot
2026-10-01 21:38:48 +02:00
1647b43aa6
deploy (#365 )
prod
sneak
2026-09-29 13:06:27 +02:00
f703b72ce0
Next (#364 )
sneak
2026-09-29 13:05:57 +02:00
b79e4649a1
Container sets its data directory's owner and mode itself (#353 )
clawbot
2026-09-29 13:05:16 +02:00
1428154bbd
Let a browser with cookies from an earlier database log in (closes #359 )
clawbot
2026-09-29 12:58:44 +02:00
f7151f0168
deployment to prod (#357 )
sneak and clawbot
2026-09-29 12:01:56 +02:00
8ad2a86e4b
Sneak/testdeploy (#356 )
sneak
2026-09-29 12:01:33 +02:00
3cc05a36eb
deployment (#355 )
sneak
2026-09-29 11:54:06 +02:00
a891b726e5
Milestone: next into main (#342 )
sneak
2026-09-29 11:53:19 +02:00
7316f0a7e2
Merge branch 'main' into prod
sneak
2026-09-29 11:49:18 +02:00
5f84d891cf
Deploy: main into prod (#343 )
clawbot and sneak
2026-09-29 11:46:50 +02:00
ab63b5f777
Restrict /s/* to GET and HEAD (closes #169 )
clawbot
2026-09-29 11:10:27 +02:00
9cf9cdd8eb
1.0.0 milestone: next into main (#321 )
sneak
2026-09-29 11:04:58 +02:00
f0adeafde3
Drop Set-Cookie from the recovered 500 (closes #193 )
clawbot
2026-09-29 10:30:26 +02:00
f755c03110
Default-block Azure WireServer's public address (closes #245 )
clawbot
2026-09-29 10:22:07 +02:00
4a724130ca
Close archive writers when the delivery engine stops (closes #280 )
clawbot
2026-09-29 08:30:22 +02:00
d4f4ddf51f
Send Content-Type once on a delivery (closes #246 )
clawbot
2026-09-29 07:11:55 +02:00
51580a2bc6
Fail a pending delivery whose target was deleted (closes #293 )
clawbot
2026-09-29 06:48:19 +02:00
e0b211f960
Make deliveries refused while half-open wait a cooldown (closes #306 )
clawbot
2026-09-29 05:48:20 +02:00
978eb01b29
Open each event database once when callers race (closes #291 )
clawbot
2026-09-29 04:37:30 +02:00
3cdab97930
Say make check needs make bootstrap on a fresh clone (closes #282 )
clawbot
2026-09-29 04:30:14 +02:00
83740b1de1
Do not resend a delivery that restart recovery already sent (closes #299 )
clawbot
2026-09-29 04:12:14 +02:00
aeeeca5ea1
Merge branch 'main' into next
sneak
2026-09-29 03:13:57 +02:00
6ebac4fa71
Index the event-tier columns the sweeps, event log and retention scan (closes #314 )
clawbot
2026-09-28 14:13:22 +02:00
237f131367
Default WEBHOOKER_ENVIRONMENT to prod (closes #307 )
clawbot
2026-09-28 12:47:31 +02:00
7ed1588443
Document running webhooker under upaas (closes #323 )
clawbot
2026-09-28 12:30:32 +02:00
b051821370
Say max_retries is the total attempt count, not a retry count (closes #316 )
clawbot
2026-09-21 18:33:09 +02:00
39afa69bfc
Consolidate the data directory mode into one owner (closes #288 )
clawbot
2026-09-21 10:01:51 +02:00
888eaf526b
State the UUID-is-the-credential rule as a rule (closes #301 ) (#302 )
clawbot and sneak
2026-08-30 04:05:38 +02:00
251cb3d3d3
1.0.0b1 - testing remains
sneak
2026-08-30 04:04:59 +02:00
d61d9dc1c1
Drop the stale open-work claim from the TODO status section
clawbot
2026-08-24 15:52:44 +00:00
b0a011f6b4
Render unknown for a zero CreatedAt in Slack/Mattermost messages (closes #298 )
clawbot
2026-08-24 17:52:25 +02:00
5976a4a98f
Carry the event's receipt time into every delivery (closes #257 )
clawbot
2026-08-24 06:44:24 +02:00
b2c9acdaa6
Correct four documentation claims ahead of the 1.0.0 tag
clawbot
2026-08-24 06:25:08 +02:00
af3703d748
Close the two remaining delivery terminal-state gaps (closes #107 )
clawbot
2026-08-24 05:12:02 +02:00
322d9a6d6b
Create every SQLite file 0600 (closes #255 )
clawbot
2026-08-24 04:33:40 +02:00
b9f7db6901
Fail loudly on an unparseable SENTRY_DSN and a malformed .env (closes #283 )
clawbot
2026-08-24 04:25:29 +02:00
48cf93ec7e
Derive the entrypoint URL scheme from the shared TLS predicate (closes #272 )
clawbot
2026-08-24 04:04:04 +02:00
8d64259283
Open SQLite with WAL and bound delivery re-dispatch by ownership (closes #256 )
clawbot
2026-08-24 03:49:17 +02:00
bde32d3ee6
Record landed 1.0.0 work and drop the removed signing roadmap in TODO.md
clawbot
2026-08-24 03:43:16 +02:00
62576f6fc6
Bind the app port deliberately and document the proxy deployment (closes #268 ) (closes #226 )
clawbot
2026-08-24 03:38:44 +02:00
37b59f8822
Remove inbound request signature verification (closes #279 )
clawbot
2026-08-24 03:25:09 +02:00
ee2276a912
Stamp the build version into the binary (closes #253 )
clawbot
2026-08-24 03:15:20 +02:00
032f265d69
Derive cookie Secure and CSRF strictness from the request transport (closes #269 )
clawbot
2026-08-24 03:01:37 +02:00
65ace2d856
Roll back a failed webhook deletion instead of committing it (closes #262 )
clawbot
2026-08-24 03:01:33 +02:00
5fda446c71
Name a deleted target on its historical deliveries (closes #211 )
clawbot
2026-08-24 02:03:23 +02:00
763d8f8058
Bound the /metrics method label (closes #261 )
clawbot
2026-08-24 02:03:18 +02:00
fd5966f807
Validate max_retries on both target forms (closes #221 )
clawbot
2026-08-24 01:32:48 +02:00
0082f216fa
Label HTTP metrics with the chi route pattern (closes #254 )
clawbot
2026-08-24 01:32:44 +02:00
89f3b984d2
Resubmit a stored event as a new undelivered event (closes #250 )
clawbot
2026-08-24 00:53:37 +02:00
a83e8fe654
Record the completed 1.0.0 milestone in TODO.md (#249 )
clawbot
2026-08-20 11:16:51 +02:00
687405993e
Harden operator-set target headers (closes #233 ) (#242 )
clawbot
2026-08-20 10:54:43 +02:00
03cd1859d7
Add an egress CIDR allowlist to the SSRF guard (closes #204 ) (#217 )
clawbot
2026-08-20 10:34:42 +02:00
f0512f1c3c
Render delivery attempt detail in the event log (closes #202 ) (#219 )
clawbot
2026-08-20 08:36:25 +02:00
3b0ed826bc
Add per-delivery replay to the event log (closes #203 ) (#240 )
clawbot
2026-08-20 08:11:35 +02:00
9969694a47
Add a webhooker resetpw subcommand and a bootstrap banner (closes #208 ) (#239 )
clawbot
2026-08-20 08:01:42 +02:00
fcead5d401
Add optional inbound webhook signature verification (closes #67 ) (#228 )
clawbot
2026-08-20 08:01:32 +02:00
ac782f4c5a
Stop target credentials leaking into event databases (closes #206 ) (#223 )
clawbot
2026-08-20 07:55:34 +02:00
89b2dadd48
Read queue depths with Find, not Scan (closes #234 ) (#237 )
clawbot
2026-08-20 07:55:20 +02:00
aba02bc509
Add a target edit form with headers and timeout fields (closes #127 ) (#229 )
clawbot
2026-08-20 07:24:12 +02:00
c6a9884f86
Take an exclusive lock on DATA_DIR at startup (closes #201 ) (#220 )
clawbot
2026-08-20 07:23:00 +02:00
5af161ef60
Log SQL with placeholders, never bound values (closes #207 ) (#222 )
clawbot
2026-08-20 07:20:59 +02:00
4cc83b2326
Expose delivery metrics on /metrics (closes #209 ) (#224 )
clawbot
2026-08-20 07:19:04 +02:00
a13e5b7ded
Shut down the app when the listener fails (closes #200 ) (#218 )
clawbot
2026-08-20 06:42:36 +02:00
bb30b3ad64
Fail loudly on half-set metrics auth credentials (closes #205 ) (#216 )
clawbot
2026-08-20 06:30:23 +02:00
10c8dd2331
Document backup, restore and upgrade procedures (closes #210 ) (#214 )
clawbot
2026-08-20 06:05:14 +02:00
ea51612446
Record the reopened 1.0.0 milestone in TODO.md (#213 )
clawbot
2026-08-20 05:58:03 +02:00
aa463213f5
Record the 1.0.0 milestone as complete in TODO.md
clawbot
2026-08-18 10:50:00 +02:00
1326f82a0b
Raise script/test's per-package timeout to 90s (closes #194 )
clawbot
2026-08-18 10:44:04 +02:00
a55b6f4e55
Re-sync REPO_POLICIES.md from prompts (closes #196 )
clawbot
2026-08-18 09:33:28 +02:00
33e4fa4faa
Report handler panics through the logger and answer 500 (closes #187 )
clawbot
2026-08-18 08:33:12 +02:00
0c64c411cc
Route GORM's logger through slog and bound it (closes #178 )
clawbot
2026-08-18 07:17:43 +02:00
563e834cf2
Bound every slog line against client-chosen text (closes #176 )
clawbot
2026-08-18 06:03:10 +02:00
f6ec78e2c8
Stop a slow host turning a login-guard test into a segfault (closes #186 )
clawbot
2026-08-18 05:01:13 +02:00
9313b0fb41
Merge pull request 'Correct TODO.md milestone state and record seventeen landed units' (#192 ) from todo-md-milestone-state into next
clawbot
2026-08-18 04:07:39 +02:00
d2cebb5783
Correct TODO.md milestone state and record seventeen landed units
clawbot
2026-08-18 02:06:43 +00:00
b573959a26
Send the chi route pattern to Sentry, not the concrete path (closes #179 )
clawbot
2026-08-18 02:42:58 +02:00