From 0a98065550f2de253f1ac868bb983dc65020d359 Mon Sep 17 00:00:00 2001 From: Christoph Nakazawa Date: Wed, 8 Jul 2026 10:10:11 +0900 Subject: [PATCH] =?UTF-8?q?Revert=20"fix(router):=20don't=20crash=20dev=20?= =?UTF-8?q?response=20when=20X-Void-Routing=20trace=20is=20no=E2=80=A6"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 78c7de50694e63e38119ad800c6ec3ae11b8e280. --- packages/void/src/router/compile.ts | 3 +-- packages/void/test/unit/compile.test.ts | 8 -------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/packages/void/src/router/compile.ts b/packages/void/src/router/compile.ts index cc935bafd..966e01dca 100644 --- a/packages/void/src/router/compile.ts +++ b/packages/void/src/router/compile.ts @@ -903,8 +903,7 @@ export function compileRouteTable( lines.push('function __voidAnnotateRouting(response, trace) {'); lines.push(' if (!__VOID_DEV_ROUTING || !response) return response;'); lines.push(' const headers = new Headers(response.headers);'); - // Guard the set: a non-ASCII trace value throws, and must not crash the dev response. - lines.push(' try { headers.set("X-Void-Routing", trace); } catch { return response; }'); + lines.push(' headers.set("X-Void-Routing", trace);'); lines.push( ' return new Response(response.body, { status: response.status, statusText: response.statusText, headers });', ); diff --git a/packages/void/test/unit/compile.test.ts b/packages/void/test/unit/compile.test.ts index e174bcb0f..97d028f78 100644 --- a/packages/void/test/unit/compile.test.ts +++ b/packages/void/test/unit/compile.test.ts @@ -1800,14 +1800,6 @@ describe('X-Void-Routing dev trace header', () => { expect(code).toContain('try { c.res.headers.set("X-Void-Routing", "pass-through"); } catch {}'); }); - it('guards the __voidAnnotateRouting trace header set with try/catch', () => { - const code = compileWith({ dev: true }); - // A non-ASCII trace value throws on header set; the guard must swallow it. - expect(code).toContain( - 'try { headers.set("X-Void-Routing", trace); } catch { return response; }', - ); - }); - it('emits __VOID_DEV_ROUTING=false and strips origin fields in prod', () => { const code = compileWith({ dev: false }); expect(code).toContain('const __VOID_DEV_ROUTING = false;');