diff --git a/packages/core/src/filesystem/watcher-binding.ts b/packages/core/src/filesystem/watcher-binding.ts index 86a848878bc..e36dbbdf2e7 100644 --- a/packages/core/src/filesystem/watcher-binding.ts +++ b/packages/core/src/filesystem/watcher-binding.ts @@ -2,9 +2,10 @@ import { createRequire } from "node:module" declare const OPENCODE_LIBC: string | undefined -const require = createRequire(import.meta.url) - +// Lazy: on workerd import.meta.url is undefined and the watcher is never +// loaded, so createRequire must not run at module scope. export default function load() { + const require = createRequire(import.meta.url) const libc = typeof OPENCODE_LIBC === "undefined" ? undefined : OPENCODE_LIBC return require( process.env.OPENCODE_PARCEL_WATCHER_PATH ??