From 4b6905166e456a9043f7de6d0a63b89306911977 Mon Sep 17 00:00:00 2001 From: Roz Date: Sun, 28 Jun 2026 17:48:56 +0200 Subject: [PATCH 1/3] fix(e2e): probe /handshake for readiness instead of removed /servers The e2e task waited on GET /servers, which was removed from the peer-facing app, so curl -sf looped on a 404 until the 60s timeout fired (exit 124), failing the e2e job even though Jack was up. Probe the authenticated /handshake endpoint, which still exists. --- .mise/tasks/test/e2e | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.mise/tasks/test/e2e b/.mise/tasks/test/e2e index 2ed2cb7..4642099 100755 --- a/.mise/tasks/test/e2e +++ b/.mise/tasks/test/e2e @@ -51,11 +51,11 @@ echo "🚀 Starting Jack instances..." docker compose -f "$E2E_DIR/docker-compose.yml" up -d --build jack-alpha jack-beta echo "⏳ Waiting for Jack Alpha..." -timeout 60 bash -c 'until curl -sf -H "X-Api-Key: '"$JACK_ALPHA_API_KEY"'" http://localhost:13000/servers > /dev/null 2>&1; do sleep 2; done' +timeout 60 bash -c 'until curl -sf -H "X-Api-Key: '"$JACK_ALPHA_API_KEY"'" http://localhost:13000/handshake > /dev/null 2>&1; do sleep 2; done' echo "✅ Jack Alpha ready" echo "⏳ Waiting for Jack Beta..." -timeout 60 bash -c 'until curl -sf -H "X-Api-Key: '"$JACK_BETA_API_KEY"'" http://localhost:13001/servers > /dev/null 2>&1; do sleep 2; done' +timeout 60 bash -c 'until curl -sf -H "X-Api-Key: '"$JACK_BETA_API_KEY"'" http://localhost:13001/handshake > /dev/null 2>&1; do sleep 2; done' echo "✅ Jack Beta ready" echo "" From 66d1010fc80b6bd6a594fe1f83117f9068266083 Mon Sep 17 00:00:00 2001 From: Roz Date: Sun, 28 Jun 2026 18:00:45 +0200 Subject: [PATCH 2/3] test(e2e): expect opaque Unauthorized error from the peer-facing torznab The peer-facing app now returns opaque error bodies, so a wrong api key yields a generic 'Unauthorized' description, not 'Unauthorized: invalid API key'. Update the e2e assertion to match (and assert the detail is absent). --- e2e/tests/torznab-search.test.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/e2e/tests/torznab-search.test.ts b/e2e/tests/torznab-search.test.ts index 9ece154..a66835c 100644 --- a/e2e/tests/torznab-search.test.ts +++ b/e2e/tests/torznab-search.test.ts @@ -41,7 +41,10 @@ describe('Torznab Search (e2e)', () => { expect(res.status).toBe(200) const xml = await res.text() expect(xml).toContain(' { From 7ba69426c1f29359bbc71b7d9109bd87488e372d Mon Sep 17 00:00:00 2001 From: Roz Date: Sun, 28 Jun 2026 18:02:49 +0200 Subject: [PATCH 3/3] chore: remove .cursor editor rules --- .cursor/rules/use-bun-instead-of-node-vite-npm-pnpm.mdc | 1 - 1 file changed, 1 deletion(-) delete mode 120000 .cursor/rules/use-bun-instead-of-node-vite-npm-pnpm.mdc diff --git a/.cursor/rules/use-bun-instead-of-node-vite-npm-pnpm.mdc b/.cursor/rules/use-bun-instead-of-node-vite-npm-pnpm.mdc deleted file mode 120000 index 6100270..0000000 --- a/.cursor/rules/use-bun-instead-of-node-vite-npm-pnpm.mdc +++ /dev/null @@ -1 +0,0 @@ -../../CLAUDE.md \ No newline at end of file