From 67458bbb024a58d83a3b45155e4c014b311169a1 Mon Sep 17 00:00:00 2001 From: Julius Marminge Date: Thu, 4 Jun 2026 11:47:27 -0700 Subject: [PATCH 1/2] fix(cli): bundle patched diff parser dependency --- apps/server/src/packageConfig.test.ts | 15 +++++++++++++++ apps/server/vite.config.ts | 14 +++++++++++--- 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 apps/server/src/packageConfig.test.ts diff --git a/apps/server/src/packageConfig.test.ts b/apps/server/src/packageConfig.test.ts new file mode 100644 index 00000000000..54ba9e677dc --- /dev/null +++ b/apps/server/src/packageConfig.test.ts @@ -0,0 +1,15 @@ +import { describe, expect, it } from "vite-plus/test"; + +import { shouldBundleCliDependency } from "../vite.config.ts"; + +describe("server package config", () => { + it("bundles CLI dependencies that rely on workspace-only export patches", () => { + expect(shouldBundleCliDependency("@pierre/diffs")).toBe(true); + expect(shouldBundleCliDependency("@pierre/diffs/utils/parsePatchFiles")).toBe(true); + }); + + it("keeps normal third-party dependencies external", () => { + expect(shouldBundleCliDependency("effect")).toBe(false); + expect(shouldBundleCliDependency("node-pty")).toBe(false); + }); +}); diff --git a/apps/server/vite.config.ts b/apps/server/vite.config.ts index ab62643a5e1..bed44ac86d7 100644 --- a/apps/server/vite.config.ts +++ b/apps/server/vite.config.ts @@ -3,7 +3,16 @@ import { defineConfig, mergeConfig } from "vite-plus"; import baseConfig from "../../vite.config.ts"; -const internalPackagePrefixes = ["@t3tools/", "effect-acp", "effect-codex-app-server"]; +const bundledPackagePrefixes = [ + "@pierre/diffs", + "@t3tools/", + "effect-acp", + "effect-codex-app-server", +]; + +export function shouldBundleCliDependency(id: string): boolean { + return bundledPackagePrefixes.some((prefix) => id.startsWith(prefix)); +} export default mergeConfig( baseConfig, @@ -23,8 +32,7 @@ export default mergeConfig( sourcemap: true, clean: true, deps: { - alwaysBundle: (id: string) => - internalPackagePrefixes.some((prefix) => id.startsWith(prefix)), + alwaysBundle: shouldBundleCliDependency, onlyBundle: false, }, banner: { From 5bd69e2ea8ba7e4d35c015b4ab68760c3a309198 Mon Sep 17 00:00:00 2001 From: Julius Marminge Date: Thu, 4 Jun 2026 11:50:50 -0700 Subject: [PATCH 2/2] Discard changes to apps/server/src/packageConfig.test.ts --- apps/server/src/packageConfig.test.ts | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 apps/server/src/packageConfig.test.ts diff --git a/apps/server/src/packageConfig.test.ts b/apps/server/src/packageConfig.test.ts deleted file mode 100644 index 54ba9e677dc..00000000000 --- a/apps/server/src/packageConfig.test.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { describe, expect, it } from "vite-plus/test"; - -import { shouldBundleCliDependency } from "../vite.config.ts"; - -describe("server package config", () => { - it("bundles CLI dependencies that rely on workspace-only export patches", () => { - expect(shouldBundleCliDependency("@pierre/diffs")).toBe(true); - expect(shouldBundleCliDependency("@pierre/diffs/utils/parsePatchFiles")).toBe(true); - }); - - it("keeps normal third-party dependencies external", () => { - expect(shouldBundleCliDependency("effect")).toBe(false); - expect(shouldBundleCliDependency("node-pty")).toBe(false); - }); -});