From b5753bb51ae6cfd12b39c34598e823c9a4431583 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Tue, 15 Sep 2026 23:37:35 +0000 Subject: [PATCH 1/4] chore(ts): moduleResolution node -> nodenext (CJS) / bundler (ESM) - root tsconfig: module/moduleResolution nodenext (files stay CJS, no type:module) - every tsconfig.esm.json: moduleResolution bundler (dist/esm is bundler ESM) - codegen generate.ts: drop redundant dynamic imports of already-imported modules - embedder (template + generated sdk): use named OllamaClient export - presigned-url-plugin: narrow getTypeByName result to an output type - pgpm/core: ambient types for parse-package-name's untyped import entry - graphile-llm: exclude tests from the build like sibling packages --- agentic/agent-conversation/tsconfig.esm.json | 1 + agentic/agent/tsconfig.esm.json | 1 + agentic/agentic-kit/tsconfig.esm.json | 1 + agentic/anthropic/tsconfig.esm.json | 1 + agentic/chat/tsconfig.esm.json | 1 + agentic/cli/tsconfig.esm.json | 1 + agentic/db-tools/tsconfig.esm.json | 1 + agentic/dsh/tsconfig.esm.json | 1 + agentic/harness/tsconfig.esm.json | 1 + agentic/metering/tsconfig.esm.json | 1 + agentic/ollama/tsconfig.esm.json | 1 + agentic/openai/tsconfig.esm.json | 1 + agentic/pi-host/tsconfig.esm.json | 1 + agentic/pi/tsconfig.esm.json | 1 + agentic/protocol/tsconfig.esm.json | 1 + agentic/react/tsconfig.esm.json | 1 + agentic/run-log-client/tsconfig.esm.json | 1 + agentic/run-log-gate/tsconfig.esm.json | 1 + agentic/run-log/tsconfig.esm.json | 1 + .../tsconfig.esm.json | 1 + graphile/graphile-bulk-mutations/tsconfig.esm.json | 1 + .../graphile-connection-filter/tsconfig.esm.json | 1 + .../graphile-function-bindings/tsconfig.esm.json | 1 + graphile/graphile-history/tsconfig.esm.json | 1 + graphile/graphile-i18n/tsconfig.esm.json | 1 + graphile/graphile-llm/tsconfig.esm.json | 1 + graphile/graphile-llm/tsconfig.json | 3 ++- graphile/graphile-ltree/tsconfig.esm.json | 1 + graphile/graphile-meta/tsconfig.esm.json | 1 + graphile/graphile-pg-aggregates/tsconfig.esm.json | 1 + graphile/graphile-postgis/tsconfig.esm.json | 1 + .../graphile-presigned-url-plugin/src/plugin.ts | 4 +++- .../tsconfig.esm.json | 1 + .../tsconfig.esm.json | 1 + graphile/graphile-search/tsconfig.esm.json | 1 + .../tsconfig.esm.json | 1 + .../graphile-storage-registry/tsconfig.esm.json | 1 + graphile/graphile-upload-plugin/tsconfig.esm.json | 1 + .../codegen/src/core/codegen/templates/embedder.ts | 2 +- graphql/codegen/src/core/generate.ts | 14 +++++--------- graphql/codegen/tsconfig.esm.json | 1 + graphql/env/tsconfig.esm.json | 1 + graphql/gql-ast/tsconfig.esm.json | 1 + graphql/playwright-test/tsconfig.esm.json | 1 + graphql/query/tsconfig.esm.json | 1 + graphql/server-test/tsconfig.esm.json | 1 + graphql/types/tsconfig.esm.json | 1 + packages/12factor-env/tsconfig.esm.json | 1 + packages/bucket-provisioner/tsconfig.esm.json | 1 + packages/cli/tsconfig.esm.json | 1 + packages/client/tsconfig.esm.json | 1 + packages/coerce/tsconfig.esm.json | 1 + packages/csrf/tsconfig.esm.json | 1 + packages/csv-to-pg/tsconfig.esm.json | 1 + packages/errors/tsconfig.esm.json | 1 + packages/express-context/tsconfig.esm.json | 1 + packages/llm-env/tsconfig.esm.json | 1 + packages/oauth/tsconfig.esm.json | 1 + packages/orm/tsconfig.esm.json | 1 + packages/postmaster/tsconfig.esm.json | 1 + packages/query-spec/tsconfig.esm.json | 1 + packages/server-utils/tsconfig.esm.json | 1 + packages/site-deploy/tsconfig.esm.json | 1 + packages/smtppostmaster/tsconfig.esm.json | 1 + packages/upload-client/tsconfig.esm.json | 1 + packages/url-domains/tsconfig.esm.json | 1 + pgpm/ast/tsconfig.esm.json | 1 + pgpm/bundle/tsconfig.esm.json | 1 + pgpm/cli/tsconfig.esm.json | 1 + pgpm/core/src/types/parse-package-name.d.ts | 9 +++++++++ pgpm/core/tsconfig.esm.json | 1 + pgpm/diff/tsconfig.esm.json | 1 + pgpm/env/tsconfig.esm.json | 1 + pgpm/export/tsconfig.esm.json | 1 + pgpm/import/tsconfig.esm.json | 1 + pgpm/logger/tsconfig.esm.json | 1 + pgpm/naming-spec/tsconfig.esm.json | 1 + pgpm/portability/tsconfig.esm.json | 1 + pgpm/slice/tsconfig.esm.json | 1 + pgpm/transform/tsconfig.esm.json | 1 + pgpm/traverse/tsconfig.esm.json | 1 + pgpm/types/tsconfig.esm.json | 1 + postgres/constructive-test/tsconfig.esm.json | 1 + postgres/drizzle-orm-test/tsconfig.esm.json | 1 + postgres/insforge-test/tsconfig.esm.json | 1 + postgres/introspectron/tsconfig.esm.json | 1 + postgres/pg-ast/tsconfig.esm.json | 1 + postgres/pg-cache/tsconfig.esm.json | 1 + postgres/pg-codegen/tsconfig.esm.json | 1 + postgres/pg-env/tsconfig.esm.json | 1 + postgres/pg-query-context/tsconfig.esm.json | 1 + postgres/pg-seed/tsconfig.esm.json | 1 + postgres/pglite-adapter/tsconfig.esm.json | 1 + postgres/pglite-test/tsconfig.esm.json | 1 + postgres/pgsql-client/tsconfig.esm.json | 1 + postgres/pgsql-seed/tsconfig.esm.json | 1 + postgres/pgsql-test/tsconfig.esm.json | 1 + postgres/query-builder/tsconfig.esm.json | 1 + postgres/supabase-test/tsconfig.esm.json | 1 + sdk/constructive-cli/src/agent/cli/embedder.ts | 2 +- sdk/constructive-react/tsconfig.esm.json | 1 + tsconfig.json | 4 ++-- uploads/content-type-stream/tsconfig.esm.json | 1 + uploads/etag-hash/tsconfig.esm.json | 1 + uploads/etag-stream/tsconfig.esm.json | 1 + uploads/mime-bytes/tsconfig.esm.json | 1 + uploads/s3-streamer/tsconfig.esm.json | 1 + uploads/s3-utils/tsconfig.esm.json | 1 + uploads/stream-to-etag/tsconfig.esm.json | 1 + uploads/upload-names/tsconfig.esm.json | 1 + uploads/uuid-hash/tsconfig.esm.json | 1 + uploads/uuid-stream/tsconfig.esm.json | 1 + 112 files changed, 128 insertions(+), 15 deletions(-) create mode 100644 pgpm/core/src/types/parse-package-name.d.ts diff --git a/agentic/agent-conversation/tsconfig.esm.json b/agentic/agent-conversation/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/agent-conversation/tsconfig.esm.json +++ b/agentic/agent-conversation/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/agent/tsconfig.esm.json b/agentic/agent/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/agent/tsconfig.esm.json +++ b/agentic/agent/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/agentic-kit/tsconfig.esm.json b/agentic/agentic-kit/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/agentic-kit/tsconfig.esm.json +++ b/agentic/agentic-kit/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/anthropic/tsconfig.esm.json b/agentic/anthropic/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/anthropic/tsconfig.esm.json +++ b/agentic/anthropic/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/chat/tsconfig.esm.json b/agentic/chat/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/chat/tsconfig.esm.json +++ b/agentic/chat/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/cli/tsconfig.esm.json b/agentic/cli/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/cli/tsconfig.esm.json +++ b/agentic/cli/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/db-tools/tsconfig.esm.json b/agentic/db-tools/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/db-tools/tsconfig.esm.json +++ b/agentic/db-tools/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/dsh/tsconfig.esm.json b/agentic/dsh/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/dsh/tsconfig.esm.json +++ b/agentic/dsh/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/harness/tsconfig.esm.json b/agentic/harness/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/harness/tsconfig.esm.json +++ b/agentic/harness/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/metering/tsconfig.esm.json b/agentic/metering/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/metering/tsconfig.esm.json +++ b/agentic/metering/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/ollama/tsconfig.esm.json b/agentic/ollama/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/ollama/tsconfig.esm.json +++ b/agentic/ollama/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/openai/tsconfig.esm.json b/agentic/openai/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/openai/tsconfig.esm.json +++ b/agentic/openai/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/pi-host/tsconfig.esm.json b/agentic/pi-host/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/pi-host/tsconfig.esm.json +++ b/agentic/pi-host/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/pi/tsconfig.esm.json b/agentic/pi/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/pi/tsconfig.esm.json +++ b/agentic/pi/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/protocol/tsconfig.esm.json b/agentic/protocol/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/agentic/protocol/tsconfig.esm.json +++ b/agentic/protocol/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/agentic/react/tsconfig.esm.json b/agentic/react/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/react/tsconfig.esm.json +++ b/agentic/react/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/run-log-client/tsconfig.esm.json b/agentic/run-log-client/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/run-log-client/tsconfig.esm.json +++ b/agentic/run-log-client/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/run-log-gate/tsconfig.esm.json b/agentic/run-log-gate/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/run-log-gate/tsconfig.esm.json +++ b/agentic/run-log-gate/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/agentic/run-log/tsconfig.esm.json b/agentic/run-log/tsconfig.esm.json index 624ab17cfa..a4afc3821d 100644 --- a/agentic/run-log/tsconfig.esm.json +++ b/agentic/run-log/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "es2022", "outDir": "dist/esm" } diff --git a/graphile/graphile-bucket-provisioner-plugin/tsconfig.esm.json b/graphile/graphile-bucket-provisioner-plugin/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-bucket-provisioner-plugin/tsconfig.esm.json +++ b/graphile/graphile-bucket-provisioner-plugin/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-bulk-mutations/tsconfig.esm.json b/graphile/graphile-bulk-mutations/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-bulk-mutations/tsconfig.esm.json +++ b/graphile/graphile-bulk-mutations/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-connection-filter/tsconfig.esm.json b/graphile/graphile-connection-filter/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-connection-filter/tsconfig.esm.json +++ b/graphile/graphile-connection-filter/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-function-bindings/tsconfig.esm.json b/graphile/graphile-function-bindings/tsconfig.esm.json index aa8f22bf79..4008ce7982 100644 --- a/graphile/graphile-function-bindings/tsconfig.esm.json +++ b/graphile/graphile-function-bindings/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2020", "outDir": "dist/esm" } diff --git a/graphile/graphile-history/tsconfig.esm.json b/graphile/graphile-history/tsconfig.esm.json index aa8f22bf79..4008ce7982 100644 --- a/graphile/graphile-history/tsconfig.esm.json +++ b/graphile/graphile-history/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2020", "outDir": "dist/esm" } diff --git a/graphile/graphile-i18n/tsconfig.esm.json b/graphile/graphile-i18n/tsconfig.esm.json index aa8f22bf79..4008ce7982 100644 --- a/graphile/graphile-i18n/tsconfig.esm.json +++ b/graphile/graphile-i18n/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2020", "outDir": "dist/esm" } diff --git a/graphile/graphile-llm/tsconfig.esm.json b/graphile/graphile-llm/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-llm/tsconfig.esm.json +++ b/graphile/graphile-llm/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-llm/tsconfig.json b/graphile/graphile-llm/tsconfig.json index 9c8a7d7c10..63ca6be40b 100644 --- a/graphile/graphile-llm/tsconfig.json +++ b/graphile/graphile-llm/tsconfig.json @@ -4,5 +4,6 @@ "outDir": "dist", "rootDir": "src" }, - "include": ["src/**/*"] + "include": ["src/**/*"], + "exclude": ["dist", "node_modules", "**/*.spec.*", "**/*.test.*"] } diff --git a/graphile/graphile-ltree/tsconfig.esm.json b/graphile/graphile-ltree/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-ltree/tsconfig.esm.json +++ b/graphile/graphile-ltree/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-meta/tsconfig.esm.json b/graphile/graphile-meta/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-meta/tsconfig.esm.json +++ b/graphile/graphile-meta/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-pg-aggregates/tsconfig.esm.json b/graphile/graphile-pg-aggregates/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-pg-aggregates/tsconfig.esm.json +++ b/graphile/graphile-pg-aggregates/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-postgis/tsconfig.esm.json b/graphile/graphile-postgis/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-postgis/tsconfig.esm.json +++ b/graphile/graphile-postgis/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-presigned-url-plugin/src/plugin.ts b/graphile/graphile-presigned-url-plugin/src/plugin.ts index 7eb859dcf8..d8ee461697 100644 --- a/graphile/graphile-presigned-url-plugin/src/plugin.ts +++ b/graphile/graphile-presigned-url-plugin/src/plugin.ts @@ -136,6 +136,7 @@ export function createPresignedUrlPlugin( GraphQLObjectType, GraphQLInputObjectType, GraphQLList, + isOutputType, }, } = build; @@ -143,7 +144,8 @@ export function createPresignedUrlPlugin( // scalar whenever the schema has a jsonb column, which any storage-equipped // database does; if it is absent the payload simply omits the field rather // than failing schema build over a field nothing can have asked for yet. - const jsonType = build.getTypeByName('JSON') ?? null; + const jsonNamedType = build.getTypeByName('JSON'); + const jsonType = jsonNamedType && isOutputType(jsonNamedType) ? jsonNamedType : null; if (!jsonType) { log.warn('No JSON scalar in this schema; upload payloads will omit the `file` projection'); } diff --git a/graphile/graphile-presigned-url-plugin/tsconfig.esm.json b/graphile/graphile-presigned-url-plugin/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-presigned-url-plugin/tsconfig.esm.json +++ b/graphile/graphile-presigned-url-plugin/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-realtime-subscriptions/tsconfig.esm.json b/graphile/graphile-realtime-subscriptions/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-realtime-subscriptions/tsconfig.esm.json +++ b/graphile/graphile-realtime-subscriptions/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-search/tsconfig.esm.json b/graphile/graphile-search/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-search/tsconfig.esm.json +++ b/graphile/graphile-search/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-sql-expression-validator/tsconfig.esm.json b/graphile/graphile-sql-expression-validator/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-sql-expression-validator/tsconfig.esm.json +++ b/graphile/graphile-sql-expression-validator/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-storage-registry/tsconfig.esm.json b/graphile/graphile-storage-registry/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-storage-registry/tsconfig.esm.json +++ b/graphile/graphile-storage-registry/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphile/graphile-upload-plugin/tsconfig.esm.json b/graphile/graphile-upload-plugin/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphile/graphile-upload-plugin/tsconfig.esm.json +++ b/graphile/graphile-upload-plugin/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphql/codegen/src/core/codegen/templates/embedder.ts b/graphql/codegen/src/core/codegen/templates/embedder.ts index 2a55e62902..15c7845f3c 100644 --- a/graphql/codegen/src/core/codegen/templates/embedder.ts +++ b/graphql/codegen/src/core/codegen/templates/embedder.ts @@ -40,7 +40,7 @@ function createOllamaEmbedder( return async (text: string): Promise => { if (!clientP) { clientP = import('@agentic-kit/ollama') - .then((m) => new m.default(baseUrl)) + .then((m) => new m.OllamaClient(baseUrl)) .catch(() => { throw new Error( 'The ollama embedder requires @agentic-kit/ollama. Install it: npm i @agentic-kit/ollama' diff --git a/graphql/codegen/src/core/generate.ts b/graphql/codegen/src/core/generate.ts index a3ed3a11f5..c5386bbc91 100644 --- a/graphql/codegen/src/core/generate.ts +++ b/graphql/codegen/src/core/generate.ts @@ -19,7 +19,7 @@ import type { Operation, Table, TypeRegistry } from '../types/schema'; import { generate as generateReactQueryFiles } from './codegen'; import { generateMultiTargetBarrel,generateRootBarrel } from './codegen/barrel'; import type { MultiTargetCliTarget } from './codegen/cli'; -import { generateCli as generateCliFiles, generateMultiTargetCli } from './codegen/cli'; +import { generateCli as generateCliFiles, generateMultiTargetCli, resolveBuiltinNames } from './codegen/cli'; import type { MultiTargetDocsInput } from './codegen/cli/docs-generator'; import { generateAgentsDocs as generateCliAgentsDocs, @@ -760,7 +760,6 @@ export async function generateMulti( const firstTargetDocsConfig = names.length > 0 && configs[names[0]]?.docs; const docsConfig = resolveDocsConfig(firstTargetDocsConfig); - const { resolveBuiltinNames } = await import('./codegen/cli'); const builtinNames = resolveBuiltinNames( cliTargets.map((t) => t.name), cliConfig.builtinNames, @@ -800,8 +799,7 @@ export async function generateMulti( const agents = generateMultiTargetAgentsDocs(docsInput); cliFilesToWrite.push({ path: path.posix.join('cli', agents.fileName), content: agents.content }); } - const { writeGeneratedFiles: writeFiles } = await import('./output'); - await writeFiles(cliFilesToWrite, '.', [], { pruneStaleFiles: false }); + await writeGeneratedFiles(cliFilesToWrite, '.', [], { pruneStaleFiles: false }); if (docsConfig.skills) { const cliSkillsToWrite = generateMultiTargetSkills(docsInput).map((skill) => ({ @@ -817,17 +815,15 @@ export async function generateMulti( firstTargetResolved, firstTargetResolved.output, ); - await writeFiles(cliSkillsToWrite, skillsOutputDir, [], { pruneStaleFiles: false }); + await writeGeneratedFiles(cliSkillsToWrite, skillsOutputDir, [], { pruneStaleFiles: false }); } } // Generate root-root README and barrel if multi-target if (names.length > 1 && targetInfos.length > 0 && !dryRun) { - const { writeGeneratedFiles: writeFiles } = await import('./output'); - const rootReadme = generateRootRootReadme(targetInfos); - await writeFiles( + await writeGeneratedFiles( [{ path: rootReadme.fileName, content: rootReadme.content }], '.', [], @@ -844,7 +840,7 @@ export async function generateMulti( const firstOutput = getConfigOptions(configs[successfulNames[0]]).output; const outputRoot = path.dirname(firstOutput); const barrelContent = generateMultiTargetBarrel(successfulNames); - await writeFiles( + await writeGeneratedFiles( [{ path: 'index.ts', content: barrelContent }], outputRoot, [], diff --git a/graphql/codegen/tsconfig.esm.json b/graphql/codegen/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphql/codegen/tsconfig.esm.json +++ b/graphql/codegen/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphql/env/tsconfig.esm.json b/graphql/env/tsconfig.esm.json index f624f96708..0843fea973 100644 --- a/graphql/env/tsconfig.esm.json +++ b/graphql/env/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "ESNext" } diff --git a/graphql/gql-ast/tsconfig.esm.json b/graphql/gql-ast/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/graphql/gql-ast/tsconfig.esm.json +++ b/graphql/gql-ast/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/graphql/playwright-test/tsconfig.esm.json b/graphql/playwright-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/graphql/playwright-test/tsconfig.esm.json +++ b/graphql/playwright-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/graphql/query/tsconfig.esm.json b/graphql/query/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/graphql/query/tsconfig.esm.json +++ b/graphql/query/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/graphql/server-test/tsconfig.esm.json b/graphql/server-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/graphql/server-test/tsconfig.esm.json +++ b/graphql/server-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/graphql/types/tsconfig.esm.json b/graphql/types/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/graphql/types/tsconfig.esm.json +++ b/graphql/types/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/12factor-env/tsconfig.esm.json b/packages/12factor-env/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/12factor-env/tsconfig.esm.json +++ b/packages/12factor-env/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/bucket-provisioner/tsconfig.esm.json b/packages/bucket-provisioner/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/bucket-provisioner/tsconfig.esm.json +++ b/packages/bucket-provisioner/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/cli/tsconfig.esm.json b/packages/cli/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/cli/tsconfig.esm.json +++ b/packages/cli/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/client/tsconfig.esm.json b/packages/client/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/client/tsconfig.esm.json +++ b/packages/client/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/coerce/tsconfig.esm.json b/packages/coerce/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/coerce/tsconfig.esm.json +++ b/packages/coerce/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/csrf/tsconfig.esm.json b/packages/csrf/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/csrf/tsconfig.esm.json +++ b/packages/csrf/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/csv-to-pg/tsconfig.esm.json b/packages/csv-to-pg/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/csv-to-pg/tsconfig.esm.json +++ b/packages/csv-to-pg/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/errors/tsconfig.esm.json b/packages/errors/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/errors/tsconfig.esm.json +++ b/packages/errors/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/express-context/tsconfig.esm.json b/packages/express-context/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/express-context/tsconfig.esm.json +++ b/packages/express-context/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/llm-env/tsconfig.esm.json b/packages/llm-env/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/llm-env/tsconfig.esm.json +++ b/packages/llm-env/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/oauth/tsconfig.esm.json b/packages/oauth/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/oauth/tsconfig.esm.json +++ b/packages/oauth/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/orm/tsconfig.esm.json b/packages/orm/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/orm/tsconfig.esm.json +++ b/packages/orm/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/postmaster/tsconfig.esm.json b/packages/postmaster/tsconfig.esm.json index 5aaa4bcd0b..d831de6b77 100644 --- a/packages/postmaster/tsconfig.esm.json +++ b/packages/postmaster/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ESNext", "outDir": "dist/esm" } diff --git a/packages/query-spec/tsconfig.esm.json b/packages/query-spec/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/query-spec/tsconfig.esm.json +++ b/packages/query-spec/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/server-utils/tsconfig.esm.json b/packages/server-utils/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/server-utils/tsconfig.esm.json +++ b/packages/server-utils/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/site-deploy/tsconfig.esm.json b/packages/site-deploy/tsconfig.esm.json index d28e2f816a..6a04b6e0ef 100644 --- a/packages/site-deploy/tsconfig.esm.json +++ b/packages/site-deploy/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "declaration": false diff --git a/packages/smtppostmaster/tsconfig.esm.json b/packages/smtppostmaster/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/smtppostmaster/tsconfig.esm.json +++ b/packages/smtppostmaster/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/packages/upload-client/tsconfig.esm.json b/packages/upload-client/tsconfig.esm.json index 03da56818b..a99b13ce0d 100644 --- a/packages/upload-client/tsconfig.esm.json +++ b/packages/upload-client/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "ES2022", "outDir": "./dist/esm" } diff --git a/packages/url-domains/tsconfig.esm.json b/packages/url-domains/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/packages/url-domains/tsconfig.esm.json +++ b/packages/url-domains/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/ast/tsconfig.esm.json b/pgpm/ast/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/ast/tsconfig.esm.json +++ b/pgpm/ast/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/bundle/tsconfig.esm.json b/pgpm/bundle/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/bundle/tsconfig.esm.json +++ b/pgpm/bundle/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/cli/tsconfig.esm.json b/pgpm/cli/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/cli/tsconfig.esm.json +++ b/pgpm/cli/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/core/src/types/parse-package-name.d.ts b/pgpm/core/src/types/parse-package-name.d.ts new file mode 100644 index 0000000000..03fb37a3b8 --- /dev/null +++ b/pgpm/core/src/types/parse-package-name.d.ts @@ -0,0 +1,9 @@ +// parse-package-name ships types only for its `require` entry; its `import` +// entry (dist/index.mjs) is untyped, so declare the API for both builds. +declare module 'parse-package-name' { + export function parse(input: string): { + name: string; + version: string; + path: string; + }; +} diff --git a/pgpm/core/tsconfig.esm.json b/pgpm/core/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/core/tsconfig.esm.json +++ b/pgpm/core/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/diff/tsconfig.esm.json b/pgpm/diff/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/diff/tsconfig.esm.json +++ b/pgpm/diff/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/env/tsconfig.esm.json b/pgpm/env/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/env/tsconfig.esm.json +++ b/pgpm/env/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/export/tsconfig.esm.json b/pgpm/export/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/export/tsconfig.esm.json +++ b/pgpm/export/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/import/tsconfig.esm.json b/pgpm/import/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/import/tsconfig.esm.json +++ b/pgpm/import/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/logger/tsconfig.esm.json b/pgpm/logger/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/logger/tsconfig.esm.json +++ b/pgpm/logger/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/naming-spec/tsconfig.esm.json b/pgpm/naming-spec/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/naming-spec/tsconfig.esm.json +++ b/pgpm/naming-spec/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/portability/tsconfig.esm.json b/pgpm/portability/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/portability/tsconfig.esm.json +++ b/pgpm/portability/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/slice/tsconfig.esm.json b/pgpm/slice/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/slice/tsconfig.esm.json +++ b/pgpm/slice/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/transform/tsconfig.esm.json b/pgpm/transform/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/transform/tsconfig.esm.json +++ b/pgpm/transform/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/traverse/tsconfig.esm.json b/pgpm/traverse/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/traverse/tsconfig.esm.json +++ b/pgpm/traverse/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/pgpm/types/tsconfig.esm.json b/pgpm/types/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/pgpm/types/tsconfig.esm.json +++ b/pgpm/types/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/constructive-test/tsconfig.esm.json b/postgres/constructive-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/constructive-test/tsconfig.esm.json +++ b/postgres/constructive-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/drizzle-orm-test/tsconfig.esm.json b/postgres/drizzle-orm-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/drizzle-orm-test/tsconfig.esm.json +++ b/postgres/drizzle-orm-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/insforge-test/tsconfig.esm.json b/postgres/insforge-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/insforge-test/tsconfig.esm.json +++ b/postgres/insforge-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/introspectron/tsconfig.esm.json b/postgres/introspectron/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/introspectron/tsconfig.esm.json +++ b/postgres/introspectron/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pg-ast/tsconfig.esm.json b/postgres/pg-ast/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pg-ast/tsconfig.esm.json +++ b/postgres/pg-ast/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pg-cache/tsconfig.esm.json b/postgres/pg-cache/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pg-cache/tsconfig.esm.json +++ b/postgres/pg-cache/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pg-codegen/tsconfig.esm.json b/postgres/pg-codegen/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pg-codegen/tsconfig.esm.json +++ b/postgres/pg-codegen/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pg-env/tsconfig.esm.json b/postgres/pg-env/tsconfig.esm.json index 53692fe96a..bab46e2fd3 100644 --- a/postgres/pg-env/tsconfig.esm.json +++ b/postgres/pg-env/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "esnext", "outDir": "dist/esm" } diff --git a/postgres/pg-query-context/tsconfig.esm.json b/postgres/pg-query-context/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pg-query-context/tsconfig.esm.json +++ b/postgres/pg-query-context/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pg-seed/tsconfig.esm.json b/postgres/pg-seed/tsconfig.esm.json index 2c0331cce0..9c3394336c 100644 --- a/postgres/pg-seed/tsconfig.esm.json +++ b/postgres/pg-seed/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "esnext", "outDir": "dist/esm" } diff --git a/postgres/pglite-adapter/tsconfig.esm.json b/postgres/pglite-adapter/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pglite-adapter/tsconfig.esm.json +++ b/postgres/pglite-adapter/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pglite-test/tsconfig.esm.json b/postgres/pglite-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pglite-test/tsconfig.esm.json +++ b/postgres/pglite-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pgsql-client/tsconfig.esm.json b/postgres/pgsql-client/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pgsql-client/tsconfig.esm.json +++ b/postgres/pgsql-client/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/pgsql-seed/tsconfig.esm.json b/postgres/pgsql-seed/tsconfig.esm.json index 2c0331cce0..9c3394336c 100644 --- a/postgres/pgsql-seed/tsconfig.esm.json +++ b/postgres/pgsql-seed/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "module": "esnext", "outDir": "dist/esm" } diff --git a/postgres/pgsql-test/tsconfig.esm.json b/postgres/pgsql-test/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/pgsql-test/tsconfig.esm.json +++ b/postgres/pgsql-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/query-builder/tsconfig.esm.json b/postgres/query-builder/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/postgres/query-builder/tsconfig.esm.json +++ b/postgres/query-builder/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/postgres/supabase-test/tsconfig.esm.json b/postgres/supabase-test/tsconfig.esm.json index 4512983217..9e40a6bc0d 100644 --- a/postgres/supabase-test/tsconfig.esm.json +++ b/postgres/supabase-test/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/sdk/constructive-cli/src/agent/cli/embedder.ts b/sdk/constructive-cli/src/agent/cli/embedder.ts index dfd92fb46d..24bb2f3404 100644 --- a/sdk/constructive-cli/src/agent/cli/embedder.ts +++ b/sdk/constructive-cli/src/agent/cli/embedder.ts @@ -30,7 +30,7 @@ function createOllamaEmbedder( return async (text: string): Promise => { if (!clientP) { clientP = import('@agentic-kit/ollama') - .then((m) => new m.default(baseUrl)) + .then((m) => new m.OllamaClient(baseUrl)) .catch(() => { throw new Error( 'The ollama embedder requires @agentic-kit/ollama. Install it: npm i @agentic-kit/ollama' diff --git a/sdk/constructive-react/tsconfig.esm.json b/sdk/constructive-react/tsconfig.esm.json index aa4345be29..1839d5a7ad 100644 --- a/sdk/constructive-react/tsconfig.esm.json +++ b/sdk/constructive-react/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022" } diff --git a/tsconfig.json b/tsconfig.json index 329a39e734..18bb5498c6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { "target": "es2022", - "module": "commonjs", + "module": "nodenext", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, @@ -10,7 +10,7 @@ "sourceMap": false, "declaration": true, "resolveJsonModule": true, - "moduleResolution": "node", + "moduleResolution": "nodenext", "typeRoots": ["./types", "./node_modules/@types"] }, "exclude": ["dist", "node_modules"] diff --git a/uploads/content-type-stream/tsconfig.esm.json b/uploads/content-type-stream/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/content-type-stream/tsconfig.esm.json +++ b/uploads/content-type-stream/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/etag-hash/tsconfig.esm.json b/uploads/etag-hash/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/etag-hash/tsconfig.esm.json +++ b/uploads/etag-hash/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/etag-stream/tsconfig.esm.json b/uploads/etag-stream/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/etag-stream/tsconfig.esm.json +++ b/uploads/etag-stream/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/mime-bytes/tsconfig.esm.json b/uploads/mime-bytes/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/mime-bytes/tsconfig.esm.json +++ b/uploads/mime-bytes/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/s3-streamer/tsconfig.esm.json b/uploads/s3-streamer/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/s3-streamer/tsconfig.esm.json +++ b/uploads/s3-streamer/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/s3-utils/tsconfig.esm.json b/uploads/s3-utils/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/s3-utils/tsconfig.esm.json +++ b/uploads/s3-utils/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/stream-to-etag/tsconfig.esm.json b/uploads/stream-to-etag/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/stream-to-etag/tsconfig.esm.json +++ b/uploads/stream-to-etag/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/upload-names/tsconfig.esm.json b/uploads/upload-names/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/upload-names/tsconfig.esm.json +++ b/uploads/upload-names/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/uuid-hash/tsconfig.esm.json b/uploads/uuid-hash/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/uuid-hash/tsconfig.esm.json +++ b/uploads/uuid-hash/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", diff --git a/uploads/uuid-stream/tsconfig.esm.json b/uploads/uuid-stream/tsconfig.esm.json index 800d7506d3..92d7545ebb 100644 --- a/uploads/uuid-stream/tsconfig.esm.json +++ b/uploads/uuid-stream/tsconfig.esm.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { + "moduleResolution": "bundler", "outDir": "dist/esm", "module": "es2022", "rootDir": "src/", From 71a4b78ce419c34427175723318081eae3ec1155 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Tue, 15 Sep 2026 23:39:40 +0000 Subject: [PATCH 2/4] fix(pi-host): depend on @constructive-io/coerce via workspace:^ lerna version's syncWorkspaceLock step resolves bumped versions against the registry; a literal ^0.4.1 range on a workspace package fails there with ERR_PNPM_NO_MATCHING_VERSION as soon as coerce is bumped. --- agentic/pi-host/package.json | 2 +- pnpm-lock.yaml | 12 ++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/agentic/pi-host/package.json b/agentic/pi-host/package.json index ef85eaea39..9db61bc4f4 100644 --- a/agentic/pi-host/package.json +++ b/agentic/pi-host/package.json @@ -37,7 +37,7 @@ ], "dependencies": { "@agentic-kit/agent-conversation": "workspace:^", - "@constructive-io/coerce": "^0.4.1" + "@constructive-io/coerce": "workspace:^" }, "peerDependencies": { "@agentic-kit/agent": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4ee770bea6..0ea1e73478 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -312,8 +312,8 @@ importers: specifier: workspace:^ version: link:../pi/dist '@constructive-io/coerce': - specifier: ^0.4.1 - version: 0.4.1 + specifier: workspace:^ + version: link:../../packages/coerce/dist publishDirectory: dist agentic/protocol: @@ -4777,12 +4777,6 @@ packages: integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, } - '@constructive-io/coerce@0.4.1': - resolution: - { - integrity: sha512-6u4912/BgzZubEEPnh1Btpz8WZTjiY0iIjY2QBFhbcgDAJe2bPhD6lraXcTpMo22uPwCkni4LXrQv0f9yYHMfQ==, - } - '@constructive-io/eslint-config@0.2.0': resolution: { @@ -16300,8 +16294,6 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} - '@constructive-io/coerce@0.4.1': {} - '@constructive-io/eslint-config@0.2.0(eslint@9.39.2(jiti@2.7.0))(typescript@5.9.3)': dependencies: '@eslint/js': 9.39.2 From daec8633121b05503622816e8ab110a56771f924 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Wed, 16 Sep 2026 00:02:20 +0000 Subject: [PATCH 3/4] fix: drop runtime dynamic import() of hard deps/builtins in CJS packages Under nodenext tsc preserves import() in CommonJS output instead of downleveling it to require(), which Jest's CJS runtime cannot execute. pg and graphile-realtime-subscriptions are declared dependencies, so import them statically; site-deploy loads fs/promises and path through process.getBuiltinModule so it stays browser-safe. --- graphile/graphile-cache/src/create-instance.ts | 3 +-- graphile/graphile-search/src/codecs/bm25-codec.ts | 3 +-- packages/site-deploy/src/walk.ts | 15 +++++++++++++-- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/graphile/graphile-cache/src/create-instance.ts b/graphile/graphile-cache/src/create-instance.ts index 575b767589..15000b0c67 100644 --- a/graphile/graphile-cache/src/create-instance.ts +++ b/graphile/graphile-cache/src/create-instance.ts @@ -2,6 +2,7 @@ import { createServer } from 'node:http'; import { Logger } from '@pgpmjs/logger'; import express from 'express'; +import { RealtimeManager } from 'graphile-realtime-subscriptions'; import { grafserv } from 'grafserv/express/v4'; import { postgraphile } from 'postgraphile'; @@ -60,8 +61,6 @@ export const createGraphileInstance = async ( if (enableRealtime) { try { - const { RealtimeManager } = await import('graphile-realtime-subscriptions'); - // Extract PgSubscriber and pool from the resolved preset's pgServices. // The pool is the same instance managed by pg-cache (via getPgPool) // and threaded into the preset by makePgService({ pool, schemas }). diff --git a/graphile/graphile-search/src/codecs/bm25-codec.ts b/graphile/graphile-search/src/codecs/bm25-codec.ts index b48beceeda..4d90ebf280 100644 --- a/graphile/graphile-search/src/codecs/bm25-codec.ts +++ b/graphile/graphile-search/src/codecs/bm25-codec.ts @@ -15,6 +15,7 @@ import 'graphile-build-pg'; import type { GraphileConfig } from 'graphile-config'; +import { Pool } from 'pg'; import sql from 'pg-sql2'; /** @@ -135,8 +136,6 @@ export const Bm25CodecPlugin: GraphileConfig.Plugin = { return; } - // Import pg dynamically for the discovery query - const { Pool } = await import('pg'); const existingPool = adaptorSettings.pool; const pool = existingPool ?? new Pool({ connectionString: adaptorSettings.connectionString, diff --git a/packages/site-deploy/src/walk.ts b/packages/site-deploy/src/walk.ts index 4f9cb12ffa..23b718e279 100644 --- a/packages/site-deploy/src/walk.ts +++ b/packages/site-deploy/src/walk.ts @@ -45,7 +45,7 @@ export async function* walkDirectory( async function loadFs() { try { - return await import('fs/promises'); + return loadBuiltin('fs/promises'); } catch (err) { throw new DeployError( 'INVALID_PATH', @@ -56,5 +56,16 @@ async function loadFs() { } async function loadPath() { - return import('path'); + return loadBuiltin('path'); +} + +/** + * `process.getBuiltinModule` (Node >= 22.3) resolves a builtin from both CJS + * and ESM without `require` or a dynamic `import()`, and is simply absent in a + * browser, where the caller reports the path as unusable. + */ +function loadBuiltin(id: string): T { + const mod = globalThis.process?.getBuiltinModule?.(id) as T | undefined; + if (!mod) throw new Error(`Node builtin "${id}" is not available in this runtime`); + return mod; } From 1fe7fb33cda5f8edc602561bc60255f2b92dfef4 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Wed, 16 Sep 2026 00:02:31 +0000 Subject: [PATCH 4/4] style: sort imports --- graphile/graphile-cache/src/create-instance.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/graphile/graphile-cache/src/create-instance.ts b/graphile/graphile-cache/src/create-instance.ts index 15000b0c67..a522701720 100644 --- a/graphile/graphile-cache/src/create-instance.ts +++ b/graphile/graphile-cache/src/create-instance.ts @@ -2,8 +2,8 @@ import { createServer } from 'node:http'; import { Logger } from '@pgpmjs/logger'; import express from 'express'; -import { RealtimeManager } from 'graphile-realtime-subscriptions'; import { grafserv } from 'grafserv/express/v4'; +import { RealtimeManager } from 'graphile-realtime-subscriptions'; import { postgraphile } from 'postgraphile'; import type { GraphileCacheEntry } from './graphile-cache';