From b45400cadceb5d7db37c353221a01707226e7b1a Mon Sep 17 00:00:00 2001 From: zzstoatzz Date: Thu, 7 May 2026 20:14:09 -0500 Subject: [PATCH] =?UTF-8?q?bump=20zat=20v0.3.0-alpha.21=20=E2=86=92=20v0.3?= =?UTF-8?q?.1,=20websocket=209ac64da=20=E2=86=92=203c6794a?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit picks up websocket 3c6794a "fix handshake: POST with body hangs httpFallback dispatch" — Handshake.parse used endsWith("\r\n\r\n") to decide when the buffer held a complete request, which only worked for header-only (GET) requests. POST with body never matches → parse returns null forever → caller reads more → connection idles until external timeout. operator-observed symptom in the 2026-05-04 handoff: requestCrawl (and every other POST endpoint with a body) hangs ~11.6s with zero response bytes, no log line, no DB mutation. the empty-body POST worked because that buffer DOES end with "\r\n\r\n", reaching parseHttpRequest correctly. the entire reconnect cron has been dead since whenever this regression landed in the websocket fork. zat v0.3.1 was the right pin to take — it's the released stable version and already uses the fixed websocket commit transitively. both zat and zlay now resolve the same websocket package, avoiding the multi-module conflict that surfaced when only zlay's pin moved. post-deploy verification (operator): - POST requestCrawl with body should now respond fast (200 or 400) - "requestCrawl received" log line fires on every POST - cron drains under 30min activeDeadlineSeconds - relay_db_queue_depth oscillates near 0 (ee4fa88 holds) Co-Authored-By: Claude Opus 4 (1M context) --- build.zig.zon | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build.zig.zon b/build.zig.zon index b7278e4..bca1f3d 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -5,12 +5,12 @@ .minimum_zig_version = "0.16.0", .dependencies = .{ .zat = .{ - .url = "https://tangled.org/zat.dev/zat/archive/v0.3.0-alpha.21.tar.gz", - .hash = "zat-0.3.0-alpha.21-5PuC7p9OCACUy2OKM0eM36VaDcxQgAwXKUpHbgiAyyLp", + .url = "https://tangled.org/zat.dev/zat/archive/v0.3.1.tar.gz", + .hash = "zat-0.3.1-5PuC7mnqCACUAmJzCXWPwkX6aZUxNviwYLF2Xm5FxTRW", }, .websocket = .{ - .url = "https://github.com/zzstoatzz/websocket.zig/archive/9ac64da.tar.gz", - .hash = "websocket-0.1.0-ZPISdebwAwAGqC8MRLe7MFedo_K_Yy2mjYVAch4Ya4hZ", + .url = "https://github.com/zzstoatzz/websocket.zig/archive/3c6794a.tar.gz", + .hash = "websocket-0.1.0-ZPISdYv9AwB5YM5SQKd7B9kRGNcQ4O8f68yfYsCMfU5h", }, .pg = .{ .url = "git+https://github.com/zzstoatzz/pg.zig?ref=dev#5ce2355b1d851075523709c7d3068dcdb0224322", -- 2.51.2