Skip to content

Commit dd0b708

Browse files
fix(code): package browser automation runtime
Generated-By: PostHog Code Task-Id: 18a0ed17-2c63-4288-98b3-65563803ac72
1 parent a825734 commit dd0b708

3 files changed

Lines changed: 28 additions & 0 deletions

File tree

apps/code/runtime-dependencies.test.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
macOnlyNativeModules,
66
packagedFileGlobs,
77
requiredNativeModules,
8+
runtimeJavaScriptModules,
89
runtimeNativeModules,
910
watcherPackageFor,
1011
} from "./runtime-dependencies";
@@ -42,6 +43,21 @@ describe("native module globs", () => {
4243
expect(packagedFileGlobs).toContain("node_modules/node-pty/**/*");
4344
expect(packagedFileGlobs).toContain("node_modules/better-sqlite3/**/*");
4445
});
46+
47+
it("packages browser automation runtime modules", () => {
48+
expect(runtimeJavaScriptModules).toEqual([
49+
"@playwright/mcp",
50+
"playwright",
51+
"playwright-core",
52+
]);
53+
expect(packagedFileGlobs).toEqual(
54+
expect.arrayContaining([
55+
"node_modules/@playwright/mcp/**/*",
56+
"node_modules/playwright/**/*",
57+
"node_modules/playwright-core/**/*",
58+
]),
59+
);
60+
});
4561
});
4662

4763
describe("native module list invariants", () => {

apps/code/runtime-dependencies.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ export const runtimeNativeModules = [
2929
"is-number",
3030
];
3131

32+
export const runtimeJavaScriptModules = [
33+
"@playwright/mcp",
34+
"playwright",
35+
"playwright-core",
36+
];
37+
3238
// The base native modules that must exist when packaging; a missing one is a
3339
// broken build, not a warning. before-pack stages these with copyRequiredDep.
3440
export const requiredNativeModules = [
@@ -65,6 +71,7 @@ const scopeOf = (name: string) =>
6571

6672
export const packagedFileGlobs = [
6773
...runtimeNativeModules,
74+
...runtimeJavaScriptModules,
6875
...macOnlyNativeModules,
6976
].map((name) => `node_modules/${scopeOf(name)}/**/*`);
7077

apps/code/scripts/before-pack.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import path from "node:path";
33
import {
44
macOnlyNativeModules,
55
requiredNativeModules,
6+
runtimeJavaScriptModules,
67
runtimeNativeModules,
78
watcherPackageFor,
89
} from "../runtime-dependencies";
@@ -72,6 +73,10 @@ export default async function beforePack(context: BeforePackContext) {
7273
}
7374
}
7475

76+
for (const dep of runtimeJavaScriptModules) {
77+
copyRequiredDep(dep, rootNodeModules, localNodeModules);
78+
}
79+
7580
const watcherPkg = watcherPackageFor(platformName, arch);
7681
if (watcherPkg) {
7782
copyRequiredDep(watcherPkg, rootNodeModules, localNodeModules);

0 commit comments

Comments
 (0)