Commit Graph

  • 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) sneakandclawbot 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) clawbotandsneak 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) clawbotandsneak 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