From 06315c445c40b821830bfeb23ee6043740c3c815 Mon Sep 17 00:00:00 2001 From: Aaron Scherer <896295+cryptiklemur@users.noreply.github.com> Date: Thu, 20 Aug 2026 11:00:05 -0500 Subject: [PATCH] test(aihorde): guard client browser bundles (#10682) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Merged — locally validated (typecheck:core clean, gates green). Thanks for the extra regression coverage! --- .../media-page-client-browser-bundle.test.ts | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 tests/unit/media-page-client-browser-bundle.test.ts diff --git a/tests/unit/media-page-client-browser-bundle.test.ts b/tests/unit/media-page-client-browser-bundle.test.ts new file mode 100644 index 0000000000..74c4656b29 --- /dev/null +++ b/tests/unit/media-page-client-browser-bundle.test.ts @@ -0,0 +1,34 @@ +import assert from "node:assert/strict"; +import test from "node:test"; +import { fileURLToPath } from "node:url"; + +import { build } from "esbuild"; + +const REPO_ROOT = fileURLToPath(new URL("../..", import.meta.url)); + +async function assertBrowserBundleSafe(relativePath: string) { + await assert.doesNotReject( + build({ + absWorkingDir: REPO_ROOT, + entryPoints: [fileURLToPath(new URL(relativePath, import.meta.url))], + bundle: true, + format: "esm", + logLevel: "silent", + platform: "browser", + tsconfig: "tsconfig.json", + write: false, + }) + ); +} + +test("media page client entry stays browser-bundle safe", async () => { + await assertBrowserBundleSafe( + "../../src/app/(dashboard)/dashboard/cache/media/MediaPageClient.tsx" + ); +}); + +test("provider detail client entry stays browser-bundle safe", async () => { + await assertBrowserBundleSafe( + "../../src/app/(dashboard)/dashboard/providers/[id]/ProviderDetailPageClient.tsx" + ); +});