@aotter/mantle 0.1.5-alpha.1 → 0.2.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -306
- package/dist/admin/consent.d.ts +17 -0
- package/dist/admin/consent.d.ts.map +1 -0
- package/dist/admin/consent.js +17 -0
- package/dist/admin/consent.js.map +1 -0
- package/dist/admin/createAdminSurface.d.ts +22 -0
- package/dist/admin/createAdminSurface.d.ts.map +1 -0
- package/dist/admin/createAdminSurface.js +592 -0
- package/dist/admin/createAdminSurface.js.map +1 -0
- package/dist/admin/developerConsole.d.ts +266 -0
- package/dist/admin/developerConsole.d.ts.map +1 -0
- package/dist/admin/developerConsole.js +136 -0
- package/dist/admin/developerConsole.js.map +1 -0
- package/dist/admin/identity.d.ts +62 -0
- package/dist/admin/identity.d.ts.map +1 -0
- package/dist/admin/identity.js +7 -0
- package/dist/admin/identity.js.map +1 -0
- package/dist/admin/index.d.ts +4 -0
- package/dist/admin/index.d.ts.map +1 -0
- package/dist/admin/index.js +4 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/procedureFlow.d.ts +38 -0
- package/dist/admin/procedureFlow.d.ts.map +1 -0
- package/dist/admin/procedureFlow.js +188 -0
- package/dist/admin/procedureFlow.js.map +1 -0
- package/dist/auth/ConsoleEmailSender.d.ts +15 -0
- package/dist/auth/ConsoleEmailSender.d.ts.map +1 -0
- package/dist/auth/ConsoleEmailSender.js +19 -0
- package/dist/auth/ConsoleEmailSender.js.map +1 -0
- package/dist/auth/appleClientSecret.d.ts +75 -0
- package/dist/auth/appleClientSecret.d.ts.map +1 -0
- package/dist/auth/appleClientSecret.js +116 -0
- package/dist/auth/appleClientSecret.js.map +1 -0
- package/dist/auth/buildAuth.d.ts +4565 -0
- package/dist/auth/buildAuth.d.ts.map +1 -0
- package/dist/auth/buildAuth.js +307 -0
- package/dist/auth/buildAuth.js.map +1 -0
- package/dist/auth/callerResolver.d.ts +48 -0
- package/dist/auth/callerResolver.d.ts.map +1 -0
- package/dist/auth/callerResolver.js +49 -0
- package/dist/auth/callerResolver.js.map +1 -0
- package/dist/auth/createAuthRoutes.d.ts +22 -0
- package/dist/auth/createAuthRoutes.d.ts.map +1 -0
- package/dist/auth/createAuthRoutes.js +129 -0
- package/dist/auth/createAuthRoutes.js.map +1 -0
- package/dist/auth/createMantleAuth.d.ts +3 -0
- package/dist/auth/createMantleAuth.d.ts.map +1 -0
- package/dist/auth/createMantleAuth.js +508 -0
- package/dist/auth/createMantleAuth.js.map +1 -0
- package/dist/auth/db.d.ts +17 -0
- package/dist/auth/db.d.ts.map +1 -0
- package/dist/auth/db.js +24 -0
- package/dist/auth/db.js.map +1 -0
- package/dist/auth/emailTemplates.d.ts +7 -0
- package/dist/auth/emailTemplates.d.ts.map +1 -0
- package/dist/auth/emailTemplates.js +27 -0
- package/dist/auth/emailTemplates.js.map +1 -0
- package/dist/auth/index.d.ts +9 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +7 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/methods.d.ts +717 -0
- package/dist/auth/methods.d.ts.map +1 -0
- package/dist/auth/methods.js +321 -0
- package/dist/auth/methods.js.map +1 -0
- package/dist/auth/oauthTokens.d.ts +24 -0
- package/dist/auth/oauthTokens.d.ts.map +1 -0
- package/dist/auth/oauthTokens.js +146 -0
- package/dist/auth/oauthTokens.js.map +1 -0
- package/dist/auth/setupIncomplete.d.ts +16 -0
- package/dist/auth/setupIncomplete.d.ts.map +1 -0
- package/dist/auth/setupIncomplete.js +50 -0
- package/dist/auth/setupIncomplete.js.map +1 -0
- package/dist/auth/types.d.ts +440 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +10 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/bun/index.d.ts +65 -0
- package/dist/bun/index.d.ts.map +1 -0
- package/dist/bun/index.js +130 -0
- package/dist/bun/index.js.map +1 -0
- package/dist/cli/emitModule.d.ts +7 -0
- package/dist/cli/emitModule.d.ts.map +1 -0
- package/dist/cli/emitModule.js +127 -0
- package/dist/cli/emitModule.js.map +1 -0
- package/dist/cli/generate.d.ts +4 -16
- package/dist/cli/generate.d.ts.map +1 -1
- package/dist/cli/generate.js +318 -262
- package/dist/cli/generate.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +15 -71
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/preset.d.ts +18 -0
- package/dist/cli/preset.d.ts.map +1 -0
- package/dist/cli/preset.js +353 -0
- package/dist/cli/preset.js.map +1 -0
- package/dist/cloudflare/index.d.ts +21 -0
- package/dist/cloudflare/index.d.ts.map +1 -0
- package/dist/cloudflare/index.js +14 -0
- package/dist/cloudflare/index.js.map +1 -0
- package/dist/cloudflare/r2Media.d.ts +43 -0
- package/dist/cloudflare/r2Media.d.ts.map +1 -0
- package/dist/cloudflare/r2Media.js +69 -0
- package/dist/cloudflare/r2Media.js.map +1 -0
- package/dist/core/caller.d.ts +35 -0
- package/dist/core/caller.d.ts.map +1 -0
- package/dist/core/caller.js +3 -0
- package/dist/core/caller.js.map +1 -0
- package/dist/core/createMantle.d.ts +22 -0
- package/dist/core/createMantle.d.ts.map +1 -0
- package/dist/core/createMantle.js +117 -0
- package/dist/core/createMantle.js.map +1 -0
- package/dist/core/dialect.d.ts +41 -0
- package/dist/core/dialect.d.ts.map +1 -0
- package/dist/core/dialect.js +7 -0
- package/dist/core/dialect.js.map +1 -0
- package/dist/core/driver.d.ts +17 -0
- package/dist/core/driver.d.ts.map +1 -0
- package/dist/core/driver.js +2 -0
- package/dist/core/driver.js.map +1 -0
- package/dist/core/email.d.ts +17 -0
- package/dist/core/email.d.ts.map +1 -0
- package/dist/core/email.js +2 -0
- package/dist/core/email.js.map +1 -0
- package/dist/core/index.d.ts +16 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +16 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/invocation.d.ts +66 -0
- package/dist/core/invocation.d.ts.map +1 -0
- package/dist/core/invocation.js +3 -0
- package/dist/core/invocation.js.map +1 -0
- package/dist/core/runtime/auth.d.ts +9 -0
- package/dist/core/runtime/auth.d.ts.map +1 -0
- package/dist/core/runtime/auth.js +39 -0
- package/dist/core/runtime/auth.js.map +1 -0
- package/dist/core/runtime/createRuntime.d.ts +23 -0
- package/dist/core/runtime/createRuntime.d.ts.map +1 -0
- package/dist/core/runtime/createRuntime.js +214 -0
- package/dist/core/runtime/createRuntime.js.map +1 -0
- package/dist/core/runtime/verifyPlan.d.ts +34 -0
- package/dist/core/runtime/verifyPlan.d.ts.map +1 -0
- package/dist/core/runtime/verifyPlan.js +301 -0
- package/dist/core/runtime/verifyPlan.js.map +1 -0
- package/dist/core/service.d.ts +45 -0
- package/dist/core/service.d.ts.map +1 -0
- package/dist/core/service.js +2 -0
- package/dist/core/service.js.map +1 -0
- package/dist/core/site.d.ts +117 -0
- package/dist/core/site.d.ts.map +1 -0
- package/dist/core/site.js +2 -0
- package/dist/core/site.js.map +1 -0
- package/dist/core/siteConfig.d.ts +5 -0
- package/dist/core/siteConfig.d.ts.map +1 -0
- package/dist/core/siteConfig.js +24 -0
- package/dist/core/siteConfig.js.map +1 -0
- package/dist/core/sql/allowlist.d.ts +65 -0
- package/dist/core/sql/allowlist.d.ts.map +1 -0
- package/dist/core/sql/allowlist.js +705 -0
- package/dist/core/sql/allowlist.js.map +1 -0
- package/dist/core/sql/ast.d.ts +24 -0
- package/dist/core/sql/ast.d.ts.map +1 -0
- package/dist/core/sql/ast.js +32 -0
- package/dist/core/sql/ast.js.map +1 -0
- package/dist/core/sql/compile.d.ts +50 -0
- package/dist/core/sql/compile.d.ts.map +1 -0
- package/dist/core/sql/compile.js +48 -0
- package/dist/core/sql/compile.js.map +1 -0
- package/dist/core/sql/policy.d.ts +121 -0
- package/dist/core/sql/policy.d.ts.map +1 -0
- package/dist/core/sql/policy.js +379 -0
- package/dist/core/sql/policy.js.map +1 -0
- package/dist/core/sql/positions.d.ts +30 -0
- package/dist/core/sql/positions.d.ts.map +1 -0
- package/dist/core/sql/positions.js +22 -0
- package/dist/core/sql/positions.js.map +1 -0
- package/dist/core/sql/run.d.ts +76 -0
- package/dist/core/sql/run.d.ts.map +1 -0
- package/dist/core/sql/run.js +267 -0
- package/dist/core/sql/run.js.map +1 -0
- package/dist/core/store/createStore.d.ts +49 -0
- package/dist/core/store/createStore.d.ts.map +1 -0
- package/dist/core/store/createStore.js +227 -0
- package/dist/core/store/createStore.js.map +1 -0
- package/dist/core/store/cursor.d.ts +4 -0
- package/dist/core/store/cursor.d.ts.map +1 -0
- package/dist/core/store/cursor.js +22 -0
- package/dist/core/store/cursor.js.map +1 -0
- package/dist/core/store/json.d.ts +80 -0
- package/dist/core/store/json.d.ts.map +1 -0
- package/dist/core/store/json.js +342 -0
- package/dist/core/store/json.js.map +1 -0
- package/dist/core/store.d.ts +160 -0
- package/dist/core/store.d.ts.map +1 -0
- package/dist/core/store.js +2 -0
- package/dist/core/store.js.map +1 -0
- package/dist/core/wire.d.ts +20 -0
- package/dist/core/wire.d.ts.map +1 -0
- package/dist/core/wire.js +84 -0
- package/dist/core/wire.js.map +1 -0
- package/dist/core/withCaller.d.ts +16 -0
- package/dist/core/withCaller.d.ts.map +1 -0
- package/dist/core/withCaller.js +29 -0
- package/dist/core/withCaller.js.map +1 -0
- package/dist/d1/adapter.d.ts +12 -0
- package/dist/d1/adapter.d.ts.map +1 -0
- package/dist/d1/adapter.js +23 -0
- package/dist/d1/adapter.js.map +1 -0
- package/dist/d1/codec.d.ts +14 -0
- package/dist/d1/codec.d.ts.map +1 -0
- package/dist/d1/codec.js +136 -0
- package/dist/d1/codec.js.map +1 -0
- package/dist/d1/compile/index.d.ts +9 -0
- package/dist/d1/compile/index.d.ts.map +1 -0
- package/dist/d1/compile/index.js +9 -0
- package/dist/d1/compile/index.js.map +1 -0
- package/dist/d1/dialect.d.ts +4 -0
- package/dist/d1/dialect.d.ts.map +1 -0
- package/dist/d1/dialect.js +13 -0
- package/dist/d1/dialect.js.map +1 -0
- package/dist/d1/executor.d.ts +13 -0
- package/dist/d1/executor.d.ts.map +1 -0
- package/dist/d1/executor.js +91 -0
- package/dist/d1/executor.js.map +1 -0
- package/dist/d1/index.d.ts +6 -0
- package/dist/d1/index.d.ts.map +1 -0
- package/dist/d1/index.js +6 -0
- package/dist/d1/index.js.map +1 -0
- package/dist/d1/lower.d.ts +8 -0
- package/dist/d1/lower.d.ts.map +1 -0
- package/dist/d1/lower.js +167 -0
- package/dist/d1/lower.js.map +1 -0
- package/dist/d1/media.d.ts +5 -0
- package/dist/d1/media.d.ts.map +1 -0
- package/dist/d1/media.js +157 -0
- package/dist/d1/media.js.map +1 -0
- package/dist/d1/migrations.d.ts +12 -0
- package/dist/d1/migrations.d.ts.map +1 -0
- package/dist/d1/migrations.js +111 -0
- package/dist/d1/migrations.js.map +1 -0
- package/dist/d1/print.d.ts +28 -0
- package/dist/d1/print.d.ts.map +1 -0
- package/dist/d1/print.js +54 -0
- package/dist/d1/print.js.map +1 -0
- package/dist/d1/site.d.ts +17 -0
- package/dist/d1/site.d.ts.map +1 -0
- package/dist/d1/site.js +63 -0
- package/dist/d1/site.js.map +1 -0
- package/dist/d1/storage.d.ts +34 -0
- package/dist/d1/storage.d.ts.map +1 -0
- package/dist/d1/storage.js +288 -0
- package/dist/d1/storage.js.map +1 -0
- package/dist/d1/tz.d.ts +21 -0
- package/dist/d1/tz.d.ts.map +1 -0
- package/dist/d1/tz.js +54 -0
- package/dist/d1/tz.js.map +1 -0
- package/dist/d1/validator.d.ts +10 -0
- package/dist/d1/validator.d.ts.map +1 -0
- package/dist/d1/validator.js +33 -0
- package/dist/d1/validator.js.map +1 -0
- package/dist/mcp/apps.d.ts +43 -0
- package/dist/mcp/apps.d.ts.map +1 -0
- package/dist/mcp/apps.js +57 -0
- package/dist/mcp/apps.js.map +1 -0
- package/dist/mcp/catalog.d.ts +55 -0
- package/dist/mcp/catalog.d.ts.map +1 -0
- package/dist/mcp/catalog.js +81 -0
- package/dist/mcp/catalog.js.map +1 -0
- package/dist/mcp/createMcpSurface.d.ts +34 -0
- package/dist/mcp/createMcpSurface.d.ts.map +1 -0
- package/dist/mcp/createMcpSurface.js +150 -0
- package/dist/mcp/createMcpSurface.js.map +1 -0
- package/dist/mcp/index.d.ts +4 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +4 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/postgres/adapter.d.ts +20 -0
- package/dist/postgres/adapter.d.ts.map +1 -0
- package/dist/postgres/adapter.js +44 -0
- package/dist/postgres/adapter.js.map +1 -0
- package/dist/postgres/codec.d.ts +13 -0
- package/dist/postgres/codec.d.ts.map +1 -0
- package/dist/postgres/codec.js +110 -0
- package/dist/postgres/codec.js.map +1 -0
- package/dist/postgres/compile/index.d.ts +9 -0
- package/dist/postgres/compile/index.d.ts.map +1 -0
- package/dist/postgres/compile/index.js +9 -0
- package/dist/postgres/compile/index.js.map +1 -0
- package/dist/postgres/driver.d.ts +92 -0
- package/dist/postgres/driver.d.ts.map +1 -0
- package/dist/postgres/driver.js +110 -0
- package/dist/postgres/driver.js.map +1 -0
- package/dist/postgres/executor.d.ts +20 -0
- package/dist/postgres/executor.d.ts.map +1 -0
- package/dist/postgres/executor.js +69 -0
- package/dist/postgres/executor.js.map +1 -0
- package/dist/postgres/index.d.ts +7 -0
- package/dist/postgres/index.d.ts.map +1 -0
- package/dist/postgres/index.js +7 -0
- package/dist/postgres/index.js.map +1 -0
- package/dist/postgres/lower.d.ts +6 -0
- package/dist/postgres/lower.d.ts.map +1 -0
- package/dist/postgres/lower.js +157 -0
- package/dist/postgres/lower.js.map +1 -0
- package/dist/postgres/print.d.ts +11 -0
- package/dist/postgres/print.d.ts.map +1 -0
- package/dist/postgres/print.js +121 -0
- package/dist/postgres/print.js.map +1 -0
- package/dist/postgres/storage.d.ts +19 -0
- package/dist/postgres/storage.d.ts.map +1 -0
- package/dist/postgres/storage.js +201 -0
- package/dist/postgres/storage.js.map +1 -0
- package/dist/postgres/textRows.d.ts +10 -0
- package/dist/postgres/textRows.d.ts.map +1 -0
- package/dist/postgres/textRows.js +44 -0
- package/dist/postgres/textRows.js.map +1 -0
- package/dist/postgres/validator.d.ts +12 -0
- package/dist/postgres/validator.d.ts.map +1 -0
- package/dist/postgres/validator.js +46 -0
- package/dist/postgres/validator.js.map +1 -0
- package/dist/spec/domain/index.d.ts +3 -0
- package/dist/spec/domain/index.d.ts.map +1 -0
- package/dist/spec/domain/index.js +3 -0
- package/dist/spec/domain/index.js.map +1 -0
- package/dist/spec/domain/model/ContentState.d.ts +8 -0
- package/dist/spec/domain/model/ContentState.d.ts.map +1 -0
- package/dist/spec/domain/model/ContentState.js +7 -0
- package/dist/spec/domain/model/ContentState.js.map +1 -0
- package/dist/spec/domain/model/Entry.d.ts +29 -0
- package/dist/spec/domain/model/Entry.d.ts.map +1 -0
- package/dist/spec/domain/model/Entry.js +16 -0
- package/dist/spec/domain/model/Entry.js.map +1 -0
- package/dist/spec/domain/model/Locale.d.ts +30 -0
- package/dist/spec/domain/model/Locale.d.ts.map +1 -0
- package/dist/spec/domain/model/Locale.js +33 -0
- package/dist/spec/domain/model/Locale.js.map +1 -0
- package/dist/spec/domain/model/ManifestGrammar.d.ts +452 -0
- package/dist/spec/domain/model/ManifestGrammar.d.ts.map +1 -0
- package/dist/spec/domain/model/ManifestGrammar.js +149 -0
- package/dist/spec/domain/model/ManifestGrammar.js.map +1 -0
- package/dist/spec/domain/model/MediaMimeAccept.d.ts +55 -0
- package/dist/spec/domain/model/MediaMimeAccept.d.ts.map +1 -0
- package/dist/spec/domain/model/MediaMimeAccept.js +90 -0
- package/dist/spec/domain/model/MediaMimeAccept.js.map +1 -0
- package/dist/spec/domain/model/RuntimePlan.d.ts +94 -0
- package/dist/spec/domain/model/RuntimePlan.d.ts.map +1 -0
- package/dist/spec/domain/model/RuntimePlan.js +4 -0
- package/dist/spec/domain/model/RuntimePlan.js.map +1 -0
- package/dist/spec/domain/model/SiteConfig.d.ts +173 -0
- package/dist/spec/domain/model/SiteConfig.d.ts.map +1 -0
- package/dist/spec/domain/model/SiteConfig.js +13 -0
- package/dist/spec/domain/model/SiteConfig.js.map +1 -0
- package/dist/spec/domain/model/SqlIr.d.ts +96 -0
- package/dist/spec/domain/model/SqlIr.d.ts.map +1 -0
- package/dist/spec/domain/model/SqlIr.js +95 -0
- package/dist/spec/domain/model/SqlIr.js.map +1 -0
- package/dist/spec/domain/model/index.d.ts +14 -0
- package/dist/spec/domain/model/index.d.ts.map +1 -0
- package/dist/spec/domain/model/index.js +14 -0
- package/dist/spec/domain/model/index.js.map +1 -0
- package/dist/spec/domain/service/CloudflareCron.d.ts +2 -0
- package/dist/spec/domain/service/CloudflareCron.d.ts.map +1 -0
- package/dist/spec/domain/service/CloudflareCron.js +63 -0
- package/dist/spec/domain/service/CloudflareCron.js.map +1 -0
- package/dist/spec/domain/service/CrossSchemaChecker.d.ts +34 -0
- package/dist/spec/domain/service/CrossSchemaChecker.d.ts.map +1 -0
- package/dist/spec/domain/service/CrossSchemaChecker.js +114 -0
- package/dist/spec/domain/service/CrossSchemaChecker.js.map +1 -0
- package/dist/spec/domain/service/EntryDataValidator.d.ts +56 -0
- package/dist/spec/domain/service/EntryDataValidator.d.ts.map +1 -0
- package/dist/spec/domain/service/EntryDataValidator.js +88 -0
- package/dist/spec/domain/service/EntryDataValidator.js.map +1 -0
- package/dist/spec/domain/service/JsonSchemaToZod.d.ts +29 -0
- package/dist/spec/domain/service/JsonSchemaToZod.d.ts.map +1 -0
- package/dist/spec/domain/service/JsonSchemaToZod.js +156 -0
- package/dist/spec/domain/service/JsonSchemaToZod.js.map +1 -0
- package/dist/spec/domain/service/LifecycleStateMachine.d.ts +75 -0
- package/dist/spec/domain/service/LifecycleStateMachine.d.ts.map +1 -0
- package/dist/spec/domain/service/LifecycleStateMachine.js +76 -0
- package/dist/spec/domain/service/LifecycleStateMachine.js.map +1 -0
- package/dist/spec/domain/service/LocaleCanonicalizer.d.ts +29 -0
- package/dist/spec/domain/service/LocaleCanonicalizer.d.ts.map +1 -0
- package/dist/spec/domain/service/LocaleCanonicalizer.js +96 -0
- package/dist/spec/domain/service/LocaleCanonicalizer.js.map +1 -0
- package/dist/spec/domain/service/ManifestFieldChecks.d.ts +60 -0
- package/dist/spec/domain/service/ManifestFieldChecks.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestFieldChecks.js +116 -0
- package/dist/spec/domain/service/ManifestFieldChecks.js.map +1 -0
- package/dist/spec/domain/service/ManifestGraphValidator.d.ts +15 -0
- package/dist/spec/domain/service/ManifestGraphValidator.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestGraphValidator.js +225 -0
- package/dist/spec/domain/service/ManifestGraphValidator.js.map +1 -0
- package/dist/spec/domain/service/ManifestLinker.d.ts +45 -0
- package/dist/spec/domain/service/ManifestLinker.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestLinker.js +92 -0
- package/dist/spec/domain/service/ManifestLinker.js.map +1 -0
- package/dist/spec/domain/service/ManifestLocaleTrimmer.d.ts +16 -0
- package/dist/spec/domain/service/ManifestLocaleTrimmer.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestLocaleTrimmer.js +76 -0
- package/dist/spec/domain/service/ManifestLocaleTrimmer.js.map +1 -0
- package/dist/spec/domain/service/ManifestParser.d.ts +49 -0
- package/dist/spec/domain/service/ManifestParser.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestParser.js +203 -0
- package/dist/spec/domain/service/ManifestParser.js.map +1 -0
- package/dist/spec/domain/service/ManifestPartition.d.ts +9 -0
- package/dist/spec/domain/service/ManifestPartition.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestPartition.js +19 -0
- package/dist/spec/domain/service/ManifestPartition.js.map +1 -0
- package/dist/spec/domain/service/ManifestPathDiagnoser.d.ts +33 -0
- package/dist/spec/domain/service/ManifestPathDiagnoser.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestPathDiagnoser.js +43 -0
- package/dist/spec/domain/service/ManifestPathDiagnoser.js.map +1 -0
- package/dist/spec/domain/service/ManifestSourceSpans.d.ts +10 -0
- package/dist/spec/domain/service/ManifestSourceSpans.d.ts.map +1 -0
- package/dist/spec/domain/service/ManifestSourceSpans.js +76 -0
- package/dist/spec/domain/service/ManifestSourceSpans.js.map +1 -0
- package/dist/spec/domain/service/McpToolNaming.d.ts +25 -0
- package/dist/spec/domain/service/McpToolNaming.d.ts.map +1 -0
- package/dist/spec/domain/service/McpToolNaming.js +50 -0
- package/dist/spec/domain/service/McpToolNaming.js.map +1 -0
- package/dist/spec/domain/service/PlanFingerprint.d.ts +4 -0
- package/dist/spec/domain/service/PlanFingerprint.d.ts.map +1 -0
- package/dist/spec/domain/service/PlanFingerprint.js +14 -0
- package/dist/spec/domain/service/PlanFingerprint.js.map +1 -0
- package/dist/spec/domain/service/ProcedureViewSpecChecks.d.ts +4 -0
- package/dist/spec/domain/service/ProcedureViewSpecChecks.d.ts.map +1 -0
- package/dist/spec/domain/service/ProcedureViewSpecChecks.js +211 -0
- package/dist/spec/domain/service/ProcedureViewSpecChecks.js.map +1 -0
- package/dist/spec/domain/service/SchemaAdminUiChecker.d.ts +42 -0
- package/dist/spec/domain/service/SchemaAdminUiChecker.d.ts.map +1 -0
- package/dist/spec/domain/service/SchemaAdminUiChecker.js +289 -0
- package/dist/spec/domain/service/SchemaAdminUiChecker.js.map +1 -0
- package/dist/spec/domain/service/SchemaIndexChecker.d.ts +33 -0
- package/dist/spec/domain/service/SchemaIndexChecker.d.ts.map +1 -0
- package/dist/spec/domain/service/SchemaIndexChecker.js +256 -0
- package/dist/spec/domain/service/SchemaIndexChecker.js.map +1 -0
- package/dist/spec/domain/service/SchemaSearchChecker.d.ts +11 -0
- package/dist/spec/domain/service/SchemaSearchChecker.d.ts.map +1 -0
- package/dist/spec/domain/service/SchemaSearchChecker.js +78 -0
- package/dist/spec/domain/service/SchemaSearchChecker.js.map +1 -0
- package/dist/spec/domain/service/SchemaSpecChecks.d.ts +31 -0
- package/dist/spec/domain/service/SchemaSpecChecks.d.ts.map +1 -0
- package/dist/spec/domain/service/SchemaSpecChecks.js +445 -0
- package/dist/spec/domain/service/SchemaSpecChecks.js.map +1 -0
- package/dist/spec/domain/service/SiteDefaultsValidator.d.ts +39 -0
- package/dist/spec/domain/service/SiteDefaultsValidator.d.ts.map +1 -0
- package/dist/spec/domain/service/SiteDefaultsValidator.js +194 -0
- package/dist/spec/domain/service/SiteDefaultsValidator.js.map +1 -0
- package/dist/spec/domain/service/SqlClassify.d.ts +19 -0
- package/dist/spec/domain/service/SqlClassify.d.ts.map +1 -0
- package/dist/spec/domain/service/SqlClassify.js +42 -0
- package/dist/spec/domain/service/SqlClassify.js.map +1 -0
- package/dist/spec/domain/service/SqlRefusal.d.ts +16 -0
- package/dist/spec/domain/service/SqlRefusal.d.ts.map +1 -0
- package/dist/spec/domain/service/SqlRefusal.js +20 -0
- package/dist/spec/domain/service/SqlRefusal.js.map +1 -0
- package/dist/spec/domain/service/SqlTypes.d.ts +40 -0
- package/dist/spec/domain/service/SqlTypes.d.ts.map +1 -0
- package/dist/spec/domain/service/SqlTypes.js +110 -0
- package/dist/spec/domain/service/SqlTypes.js.map +1 -0
- package/dist/spec/domain/service/StaffRoleHierarchy.d.ts +3 -0
- package/dist/spec/domain/service/StaffRoleHierarchy.d.ts.map +1 -0
- package/dist/spec/domain/service/StaffRoleHierarchy.js +19 -0
- package/dist/spec/domain/service/StaffRoleHierarchy.js.map +1 -0
- package/dist/spec/domain/service/TriggerGraphChecks.d.ts +16 -0
- package/dist/spec/domain/service/TriggerGraphChecks.d.ts.map +1 -0
- package/dist/spec/domain/service/TriggerGraphChecks.js +337 -0
- package/dist/spec/domain/service/TriggerGraphChecks.js.map +1 -0
- package/dist/spec/domain/service/TriggerSpecChecks.d.ts +4 -0
- package/dist/spec/domain/service/TriggerSpecChecks.d.ts.map +1 -0
- package/dist/spec/domain/service/TriggerSpecChecks.js +89 -0
- package/dist/spec/domain/service/TriggerSpecChecks.js.map +1 -0
- package/dist/spec/domain/service/ValidatedAdminUiProjection.d.ts +11 -0
- package/dist/spec/domain/service/ValidatedAdminUiProjection.d.ts.map +1 -0
- package/dist/spec/domain/service/ValidatedAdminUiProjection.js +26 -0
- package/dist/spec/domain/service/ValidatedAdminUiProjection.js.map +1 -0
- package/dist/spec/domain/service/ViewAdminUiChecker.d.ts +14 -0
- package/dist/spec/domain/service/ViewAdminUiChecker.d.ts.map +1 -0
- package/dist/spec/domain/service/ViewAdminUiChecker.js +53 -0
- package/dist/spec/domain/service/ViewAdminUiChecker.js.map +1 -0
- package/dist/spec/domain/service/index.d.ts +24 -0
- package/dist/spec/domain/service/index.d.ts.map +1 -0
- package/dist/spec/domain/service/index.js +24 -0
- package/dist/spec/domain/service/index.js.map +1 -0
- package/dist/spec/index.d.ts +10 -0
- package/dist/spec/index.d.ts.map +1 -0
- package/dist/spec/index.js +12 -0
- package/dist/spec/index.js.map +1 -0
- package/dist/spec/infrastructure/cli/parseArgsError.d.ts +16 -0
- package/dist/spec/infrastructure/cli/parseArgsError.d.ts.map +1 -0
- package/dist/spec/infrastructure/cli/parseArgsError.js +34 -0
- package/dist/spec/infrastructure/cli/parseArgsError.js.map +1 -0
- package/dist/spec/infrastructure/index.d.ts +2 -0
- package/dist/spec/infrastructure/index.d.ts.map +1 -0
- package/dist/spec/infrastructure/index.js +2 -0
- package/dist/spec/infrastructure/index.js.map +1 -0
- package/dist/spec/infrastructure/sql/PgQueryParser.d.ts +18 -0
- package/dist/spec/infrastructure/sql/PgQueryParser.d.ts.map +1 -0
- package/dist/spec/infrastructure/sql/PgQueryParser.js +17 -0
- package/dist/spec/infrastructure/sql/PgQueryParser.js.map +1 -0
- package/dist/spec/infrastructure/sql/compilePlan.d.ts +37 -0
- package/dist/spec/infrastructure/sql/compilePlan.d.ts.map +1 -0
- package/dist/spec/infrastructure/sql/compilePlan.js +282 -0
- package/dist/spec/infrastructure/sql/compilePlan.js.map +1 -0
- package/dist/spec/infrastructure/sql/compileSql.d.ts +35 -0
- package/dist/spec/infrastructure/sql/compileSql.d.ts.map +1 -0
- package/dist/spec/infrastructure/sql/compileSql.js +92 -0
- package/dist/spec/infrastructure/sql/compileSql.js.map +1 -0
- package/dist/spec/infrastructure/sql/frontEnd.d.ts +8 -0
- package/dist/spec/infrastructure/sql/frontEnd.d.ts.map +1 -0
- package/dist/spec/infrastructure/sql/frontEnd.js +100 -0
- package/dist/spec/infrastructure/sql/frontEnd.js.map +1 -0
- package/dist/spec/infrastructure/sql/index.d.ts +4 -0
- package/dist/spec/infrastructure/sql/index.d.ts.map +1 -0
- package/dist/spec/infrastructure/sql/index.js +4 -0
- package/dist/spec/infrastructure/sql/index.js.map +1 -0
- package/dist/spec/kernel/diagnostic.d.ts +137 -0
- package/dist/spec/kernel/diagnostic.d.ts.map +1 -0
- package/dist/spec/kernel/diagnostic.js +296 -0
- package/dist/spec/kernel/diagnostic.js.map +1 -0
- package/dist/spec/kernel/index.d.ts +8 -0
- package/dist/spec/kernel/index.d.ts.map +1 -0
- package/dist/spec/kernel/index.js +8 -0
- package/dist/spec/kernel/index.js.map +1 -0
- package/dist/spec/usecase/EmitTypes.d.ts +22 -0
- package/dist/spec/usecase/EmitTypes.d.ts.map +1 -0
- package/dist/spec/usecase/EmitTypes.js +182 -0
- package/dist/spec/usecase/EmitTypes.js.map +1 -0
- package/dist/spec/usecase/ValidateManifestsUseCase.d.ts +8 -0
- package/dist/spec/usecase/ValidateManifestsUseCase.d.ts.map +1 -0
- package/dist/spec/usecase/ValidateManifestsUseCase.js +101 -0
- package/dist/spec/usecase/ValidateManifestsUseCase.js.map +1 -0
- package/dist/spec/usecase/dto/ValidateManifestsRequest.d.ts +27 -0
- package/dist/spec/usecase/dto/ValidateManifestsRequest.d.ts.map +1 -0
- package/dist/spec/usecase/dto/ValidateManifestsRequest.js +2 -0
- package/dist/spec/usecase/dto/ValidateManifestsRequest.js.map +1 -0
- package/dist/spec/usecase/dto/ValidateManifestsResponse.d.ts +14 -0
- package/dist/spec/usecase/dto/ValidateManifestsResponse.d.ts.map +1 -0
- package/dist/spec/usecase/dto/ValidateManifestsResponse.js +2 -0
- package/dist/spec/usecase/dto/ValidateManifestsResponse.js.map +1 -0
- package/dist/spec/usecase/dto/index.d.ts +3 -0
- package/dist/spec/usecase/dto/index.d.ts.map +1 -0
- package/dist/spec/usecase/dto/index.js +3 -0
- package/dist/spec/usecase/dto/index.js.map +1 -0
- package/dist/spec/usecase/index.d.ts +10 -0
- package/dist/spec/usecase/index.d.ts.map +1 -0
- package/dist/spec/usecase/index.js +10 -0
- package/dist/spec/usecase/index.js.map +1 -0
- package/dist/testing/cases/before-hook.d.ts +4 -0
- package/dist/testing/cases/before-hook.d.ts.map +1 -0
- package/dist/testing/cases/before-hook.js +71 -0
- package/dist/testing/cases/before-hook.js.map +1 -0
- package/dist/testing/cases/corpus.d.ts +12 -0
- package/dist/testing/cases/corpus.d.ts.map +1 -0
- package/dist/testing/cases/corpus.js +91 -0
- package/dist/testing/cases/corpus.js.map +1 -0
- package/dist/testing/cases/policy.d.ts +74 -0
- package/dist/testing/cases/policy.d.ts.map +1 -0
- package/dist/testing/cases/policy.js +142 -0
- package/dist/testing/cases/policy.js.map +1 -0
- package/dist/testing/cases/printer.d.ts +4 -0
- package/dist/testing/cases/printer.d.ts.map +1 -0
- package/dist/testing/cases/printer.js +32 -0
- package/dist/testing/cases/printer.js.map +1 -0
- package/dist/testing/cases/report-view.d.ts +5 -0
- package/dist/testing/cases/report-view.d.ts.map +1 -0
- package/dist/testing/cases/report-view.js +33 -0
- package/dist/testing/cases/report-view.js.map +1 -0
- package/dist/testing/cases/requisition.d.ts +4 -0
- package/dist/testing/cases/requisition.d.ts.map +1 -0
- package/dist/testing/cases/requisition.js +38 -0
- package/dist/testing/cases/requisition.js.map +1 -0
- package/dist/testing/cases/search-places.d.ts +4 -0
- package/dist/testing/cases/search-places.d.ts.map +1 -0
- package/dist/testing/cases/search-places.js +60 -0
- package/dist/testing/cases/search-places.js.map +1 -0
- package/dist/testing/cases/stock.d.ts +4 -0
- package/dist/testing/cases/stock.d.ts.map +1 -0
- package/dist/testing/cases/stock.js +35 -0
- package/dist/testing/cases/stock.js.map +1 -0
- package/dist/testing/cases/store.d.ts +4 -0
- package/dist/testing/cases/store.d.ts.map +1 -0
- package/dist/testing/cases/store.js +100 -0
- package/dist/testing/cases/store.js.map +1 -0
- package/dist/testing/harness.d.ts +94 -0
- package/dist/testing/harness.d.ts.map +1 -0
- package/dist/testing/harness.js +168 -0
- package/dist/testing/harness.js.map +1 -0
- package/dist/testing/index.d.ts +37 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +43 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/report.d.ts +15 -0
- package/dist/testing/report.d.ts.map +1 -0
- package/dist/testing/report.js +22 -0
- package/dist/testing/report.js.map +1 -0
- package/dist/web/createRestSurface.d.ts +7 -0
- package/dist/web/createRestSurface.d.ts.map +1 -0
- package/dist/web/createRestSurface.js +39 -0
- package/dist/web/createRestSurface.js.map +1 -0
- package/dist/web/index.d.ts +2 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +2 -0
- package/dist/web/index.js.map +1 -0
- package/docs/adr/0008-structured-diagnostic-shape.md +2 -2
- package/docs/adr/0011-adapter-port-spec.md +2 -2
- package/docs/adr/0014-auth-better-auth-and-multi-tenant-mcp.md +21 -2
- package/docs/adr/0019-sealed-manifest-runtime-pipeline.md +5 -1
- package/docs/adr/0022-caller-observed-version-occ.md +1 -1
- package/docs/adr/0024-manifest-native-schema-tables.md +2 -2
- package/docs/adr/0027-scheduled-procedure-triggers.md +1 -1
- package/docs/adr/0028-schema-ttl-expiry.md +3 -3
- package/docs/adr/0029-mcp-apps-interaction-contracts.md +324 -0
- package/docs/adr/0030-store.md +40 -0
- package/docs/adr/0031-host-cloud-core-contract.md +25 -0
- package/docs/adr/0032-store-centric-core-and-service-contract.md +361 -0
- package/docs/adr/0033-storage-converges-to-the-plan.md +92 -0
- package/docs/adr/0034-store-is-authored-as-sql.md +192 -0
- package/docs/adr/0035-sql-dialects.md +154 -0
- package/docs/adr/0036-host-and-dialect.md +65 -0
- package/docs/adr/0037-postgresql-is-the-reference-dialect.md +124 -0
- package/docs/adr/0038-bun-native-host.md +63 -0
- package/docs/adr/README.md +23 -8
- package/docs/adr/adr-lite-861-admin-webmcp.md +6 -0
- package/docs/adr/adr-lite-909-admin-ui-kit.md +1 -1
- package/docs/examples/README.md +16 -18
- package/docs/examples/commerce-inventory.md +481 -0
- package/docs/examples/commerce.md +254 -0
- package/docs/examples/guarded-api.md +238 -0
- package/docs/examples/intake-hooks.md +237 -0
- package/docs/examples/intake.md +127 -0
- package/docs/examples/legal-documents.md +218 -0
- package/docs/examples/procurement.md +215 -0
- package/docs/examples/publication.md +211 -0
- package/docs/examples/reference-service/.dev.vars.example +4 -0
- package/docs/examples/reference-service/.mantle/generated/mantle.ts +174 -0
- package/docs/examples/reference-service/.mantle/generated/plan.json +1936 -0
- package/docs/examples/reference-service/README.md +33 -0
- package/docs/examples/reference-service/manifests/catalog.yaml +103 -0
- package/docs/examples/reference-service/manifests/orders.yaml +120 -0
- package/docs/examples/reference-service/mantle.config.json +1 -0
- package/docs/examples/reference-service/package.json +27 -0
- package/docs/examples/reference-service/smoke.mjs +156 -0
- package/docs/examples/reference-service/src/handlers.ts +36 -0
- package/docs/examples/reference-service/src/index.ts +33 -0
- package/docs/examples/reference-service/src/service.ts +78 -0
- package/docs/examples/{host-minimal-worker → reference-service}/tsconfig.json +7 -2
- package/docs/examples/reference-service/wrangler.jsonc +26 -0
- package/docs/examples/reservation.md +142 -0
- package/docs/handbook/cloudflare/authentication.md +119 -311
- package/docs/handbook/cloudflare/chatgpt-sites.md +104 -15
- package/docs/handbook/cloudflare/deploy-and-operate.md +77 -71
- package/docs/handbook/cloudflare/media-r2.md +64 -187
- package/docs/handbook/cloudflare/service-entry.md +138 -0
- package/docs/handbook/concepts/authorization.md +104 -94
- package/docs/handbook/concepts/four-atoms.md +68 -144
- package/docs/handbook/concepts/lifecycle-and-locales.md +62 -114
- package/docs/handbook/concepts/mcp-and-agents.md +112 -117
- package/docs/handbook/concepts/procedures-and-triggers.md +126 -181
- package/docs/handbook/concepts/runtime-and-adapters.md +177 -163
- package/docs/handbook/concepts/views.md +97 -173
- package/docs/handbook/examples/hub.md +17 -6
- package/docs/handbook/guides/admin-ui.md +101 -96
- package/docs/handbook/guides/agent-setup.md +56 -71
- package/docs/handbook/guides/typed-queries.md +105 -111
- package/docs/handbook/navigation.json +8 -33
- package/docs/handbook/reference/authorization.md +52 -271
- package/docs/handbook/reference/diagnostics.md +69 -178
- package/docs/handbook/reference/features.md +48 -50
- package/docs/handbook/reference/manifest.md +56 -116
- package/docs/handbook/reference/procedure.md +91 -279
- package/docs/handbook/reference/schema.md +154 -239
- package/docs/handbook/reference/site-config.md +58 -211
- package/docs/handbook/reference/surface.md +69 -181
- package/docs/handbook/reference/trigger.md +72 -181
- package/docs/handbook/reference/view.md +140 -241
- package/docs/handbook/releases/index.md +58 -77
- package/docs/handbook/start/overview.md +59 -51
- package/docs/handbook/start/project-and-cli.md +132 -105
- package/docs/handbook/start/quickstart-worker.md +102 -160
- package/docs/skills/develop/SKILL.md +114 -240
- package/docs/skills/develop/mcp-app.md +79 -0
- package/docs/skills/integrate/SKILL.md +83 -47
- package/docs/skills/media-gc/SKILL.md +21 -10
- package/docs/skills/provision/SKILL.md +68 -162
- package/docs/skills/update/SKILL.md +33 -34
- package/docs/upgrade-0.1-to-0.2.md +211 -0
- package/package.json +87 -106
- package/dist/admin-ui.d.ts +0 -2
- package/dist/admin-ui.d.ts.map +0 -1
- package/dist/admin-ui.js +0 -2
- package/dist/admin-ui.js.map +0 -1
- package/dist/admin.d.ts +0 -2
- package/dist/admin.d.ts.map +0 -1
- package/dist/admin.js +0 -2
- package/dist/admin.js.map +0 -1
- package/dist/auth.d.ts +0 -2
- package/dist/auth.d.ts.map +0 -1
- package/dist/auth.js +0 -2
- package/dist/auth.js.map +0 -1
- package/dist/bun.d.ts +0 -2
- package/dist/bun.d.ts.map +0 -1
- package/dist/bun.js +0 -2
- package/dist/bun.js.map +0 -1
- package/dist/cli/generate-cloudflare.d.ts +0 -7
- package/dist/cli/generate-cloudflare.d.ts.map +0 -1
- package/dist/cli/generate-cloudflare.js +0 -123
- package/dist/cli/generate-cloudflare.js.map +0 -1
- package/dist/cli/generate-project.d.ts +0 -25
- package/dist/cli/generate-project.d.ts.map +0 -1
- package/dist/cli/generate-project.js +0 -282
- package/dist/cli/generate-project.js.map +0 -1
- package/dist/cli/generate-sites.d.ts +0 -8
- package/dist/cli/generate-sites.d.ts.map +0 -1
- package/dist/cli/generate-sites.js +0 -273
- package/dist/cli/generate-sites.js.map +0 -1
- package/dist/cli/harness.d.ts +0 -3
- package/dist/cli/harness.d.ts.map +0 -1
- package/dist/cli/harness.js +0 -214
- package/dist/cli/harness.js.map +0 -1
- package/dist/cli/skills.d.ts +0 -3
- package/dist/cli/skills.d.ts.map +0 -1
- package/dist/cli/skills.js +0 -128
- package/dist/cli/skills.js.map +0 -1
- package/dist/cloudflare.d.ts +0 -2
- package/dist/cloudflare.d.ts.map +0 -1
- package/dist/cloudflare.js +0 -2
- package/dist/cloudflare.js.map +0 -1
- package/dist/codegen/emitMantleModule.d.ts +0 -22
- package/dist/codegen/emitMantleModule.d.ts.map +0 -1
- package/dist/codegen/emitMantleModule.js +0 -291
- package/dist/codegen/emitMantleModule.js.map +0 -1
- package/dist/codegen.d.ts +0 -2
- package/dist/codegen.d.ts.map +0 -1
- package/dist/codegen.js +0 -2
- package/dist/codegen.js.map +0 -1
- package/dist/runtime-testing.d.ts +0 -2
- package/dist/runtime-testing.d.ts.map +0 -1
- package/dist/runtime-testing.js +0 -2
- package/dist/runtime-testing.js.map +0 -1
- package/dist/runtime.d.ts +0 -2
- package/dist/runtime.d.ts.map +0 -1
- package/dist/runtime.js +0 -2
- package/dist/runtime.js.map +0 -1
- package/dist/spec.d.ts +0 -2
- package/dist/spec.d.ts.map +0 -1
- package/dist/spec.js +0 -2
- package/dist/spec.js.map +0 -1
- package/dist/vercel-libsql.d.ts +0 -2
- package/dist/vercel-libsql.d.ts.map +0 -1
- package/dist/vercel-libsql.js +0 -2
- package/dist/vercel-libsql.js.map +0 -1
- package/dist/vercel.d.ts +0 -2
- package/dist/vercel.d.ts.map +0 -1
- package/dist/vercel.js +0 -2
- package/dist/vercel.js.map +0 -1
- package/dist/web.d.ts +0 -2
- package/dist/web.d.ts.map +0 -1
- package/dist/web.js +0 -2
- package/dist/web.js.map +0 -1
- package/docs/adapter-guide.md +0 -222
- package/docs/agent-prompts.md +0 -64
- package/docs/api-mcp-authorization.md +0 -5
- package/docs/assets/mantle-admin-developer.png +0 -0
- package/docs/assets/mantle-admin-operations.png +0 -0
- package/docs/assets/mantle-hero.jpg +0 -0
- package/docs/auth-hosting-model.md +0 -166
- package/docs/cloudflare-low-level-composition.md +0 -5
- package/docs/consumer-onboarding-audit.md +0 -65
- package/docs/deferred-lifecycle-queues.md +0 -5
- package/docs/design-atoms.md +0 -16
- package/docs/design-references/editorial-blog-2026-05-05.md +0 -218
- package/docs/direct-authoring.md +0 -5
- package/docs/examples/builtin-commerce.md +0 -269
- package/docs/examples/builtin-intake.md +0 -143
- package/docs/examples/builtin-legal-documents.md +0 -189
- package/docs/examples/builtin-procurement.md +0 -241
- package/docs/examples/builtin-publication.md +0 -241
- package/docs/examples/builtin-reservation.md +0 -149
- package/docs/examples/cf-primitives-commerce-inventory.md +0 -809
- package/docs/examples/cf-primitives-guarded-api.md +0 -429
- package/docs/examples/cf-primitives-intake-hooks.md +0 -319
- package/docs/examples/host-chatgpt-sites/.openai/hosting.json +0 -1
- package/docs/examples/host-chatgpt-sites/README.md +0 -70
- package/docs/examples/host-chatgpt-sites/drizzle/0000_sites_users.sql +0 -8
- package/docs/examples/host-chatgpt-sites/drizzle/0001_mantle.sql +0 -294
- package/docs/examples/host-chatgpt-sites/drizzle/0002_article_cover.sql +0 -5
- package/docs/examples/host-chatgpt-sites/drizzle/0003_store_instance_id.sql +0 -1
- package/docs/examples/host-chatgpt-sites/drizzle/0004_mantle.sql +0 -10
- package/docs/examples/host-chatgpt-sites/drizzle/0005_mantle.sql +0 -24
- package/docs/examples/host-chatgpt-sites/drizzle/meta/_journal.json +0 -1
- package/docs/examples/host-chatgpt-sites/drizzle/meta/mantle-state.json +0 -60
- package/docs/examples/host-chatgpt-sites/manifests/site.yaml +0 -27
- package/docs/examples/host-chatgpt-sites/package.json +0 -1
- package/docs/examples/host-chatgpt-sites/public/site.css +0 -1
- package/docs/examples/host-chatgpt-sites/scripts/build.mjs +0 -13
- package/docs/examples/host-chatgpt-sites/scripts/check.mjs +0 -101
- package/docs/examples/host-chatgpt-sites/scripts/migration.mjs +0 -43
- package/docs/examples/host-chatgpt-sites/src/chatgpt-auth.ts +0 -66
- package/docs/examples/host-chatgpt-sites/src/index.ts +0 -46
- package/docs/examples/host-chatgpt-sites/src/mcp.ts +0 -49
- package/docs/examples/host-chatgpt-sites/src/media.ts +0 -109
- package/docs/examples/host-chatgpt-sites/src/r2-lab.ts +0 -38
- package/docs/examples/host-chatgpt-sites/src/storage-fingerprint.json +0 -1
- package/docs/examples/host-chatgpt-sites/src/web.ts +0 -35
- package/docs/examples/host-chatgpt-sites/tsconfig.json +0 -1
- package/docs/examples/host-chatgpt-sites/wrangler.jsonc +0 -10
- package/docs/examples/host-local-admin-otp/.dev.vars.example +0 -3
- package/docs/examples/host-local-admin-otp/README.md +0 -80
- package/docs/examples/host-local-admin-otp/ensure-dev-vars.mjs +0 -5
- package/docs/examples/host-local-admin-otp/manifests/site.yaml +0 -25
- package/docs/examples/host-local-admin-otp/package.json +0 -29
- package/docs/examples/host-local-admin-otp/public/.gitkeep +0 -1
- package/docs/examples/host-local-admin-otp/smoke.mjs +0 -141
- package/docs/examples/host-local-admin-otp/src/index.ts +0 -54
- package/docs/examples/host-local-admin-otp/tsconfig.json +0 -17
- package/docs/examples/host-local-admin-otp/wrangler.jsonc +0 -23
- package/docs/examples/host-minimal-worker/README.md +0 -41
- package/docs/examples/host-minimal-worker/manifests/site.yaml +0 -25
- package/docs/examples/host-minimal-worker/package.json +0 -26
- package/docs/examples/host-minimal-worker/smoke.mjs +0 -23
- package/docs/examples/host-minimal-worker/src/index.ts +0 -4
- package/docs/examples/host-minimal-worker/wrangler.jsonc +0 -22
- package/docs/handbook/chatgpt-sites/equipment-checkout.md +0 -231
- package/docs/handbook/chatgpt-sites/generated-app.md +0 -84
- package/docs/handbook/chatgpt-sites/host-reference.md +0 -113
- package/docs/handbook/chatgpt-sites/index.md +0 -133
- package/docs/handbook/cloudflare/bindings.md +0 -291
- package/docs/handbook/cloudflare/conventional-worker.md +0 -166
- package/docs/handbook/cloudflare/deferred-hooks-queues.md +0 -170
- package/docs/handbook/cloudflare/low-level-composition.md +0 -169
- package/docs/handbook/cloudflare/public-web.md +0 -144
- package/docs/handbook/cloudflare/site-chrome.md +0 -75
- package/docs/handbook/examples/commerce-transaction.md +0 -11
- package/docs/handbook/examples/commerce.md +0 -11
- package/docs/handbook/examples/guarded-api.md +0 -10
- package/docs/handbook/examples/intake-form.md +0 -12
- package/docs/handbook/examples/intake-hooks.md +0 -11
- package/docs/handbook/examples/legal-documents.md +0 -10
- package/docs/handbook/examples/procurement-approvals.md +0 -10
- package/docs/handbook/examples/publication.md +0 -10
- package/docs/handbook/examples/reservation.md +0 -10
- package/docs/handbook/start/quickstart-admin.md +0 -52
- package/docs/labels.md +0 -71
- package/docs/media-uploads.md +0 -5
- package/docs/migration-0.1.2.md +0 -13
- package/docs/performance-harness.md +0 -228
- package/docs/release-process.md +0 -244
- package/docs/schema-indexes.md +0 -5
- package/docs/sealed-pipeline-ownership.md +0 -101
- package/docs/skills/plugin/SKILL.md +0 -132
- package/docs/skills/theme/SKILL.md +0 -77
- package/docs/spec-only-host-adoption.md +0 -157
- package/docs/transaction-patterns.md +0 -5
- package/skills/README.md +0 -127
- package/skills/develop/SKILL.md +0 -258
- package/skills/install/SKILL.md +0 -112
- package/skills/integrate/SKILL.md +0 -60
- package/skills/media-gc/SKILL.md +0 -85
- package/skills/plugin/SKILL.md +0 -132
- package/skills/provision/SKILL.md +0 -194
- package/skills/theme/SKILL.md +0 -77
- package/skills/update/SKILL.md +0 -51
- package/templates/chatgpt-sites/auth.ts +0 -66
- package/templates/chatgpt-sites/build.mjs +0 -14
- package/templates/chatgpt-sites/env.ts +0 -1
- package/templates/chatgpt-sites/mcp.ts +0 -48
- package/templates/chatgpt-sites/public-mcp.ts +0 -29
- package/templates/chatgpt-sites/smoke-local.mjs +0 -20
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"allowlist.js","sourceRoot":"","sources":["../../../src/core/sql/allowlist.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** Builders for the IR nodes Core writes itself (policy fills, Store's JSON converter, the runner's pre-reads, the TTL sweep). */
|
|
2
|
+
import type { SqlNode as N } from "../../spec/domain/index.js";
|
|
3
|
+
export declare const S: (s: string) => {
|
|
4
|
+
String: {
|
|
5
|
+
sval: string;
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
/** `ref("t", "id")` is `t.id`. */
|
|
9
|
+
export declare const ref: (...f: string[]) => N;
|
|
10
|
+
export declare const op: (o: string, l: N, r: N) => N;
|
|
11
|
+
/** Integers past int32 must be `fval` in libpg-query's shape; 0 must keep its `ival` key. */
|
|
12
|
+
export declare const num: (n: number) => N;
|
|
13
|
+
export declare const target: (val: N, name?: string) => N;
|
|
14
|
+
/** A relation as the CLI tags it: a Schema `table`, or `system` for Core's own (never reachable from author IR). */
|
|
15
|
+
export declare const table: (relname: string, mantle?: "table" | "system") => N;
|
|
16
|
+
/** `x` in parentheses: the printers' `Raw` prints its parts inside `( )`. */
|
|
17
|
+
export declare const paren: (x: N | undefined) => N | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* An operator, test or `IN (subquery)` with each non-atomic operand in parentheses. pgsql-deparser prints the operands of BETWEEN,
|
|
20
|
+
* LIKE, IN and IS as written, so a nested condition there would read as another expression (SQLite groups `a BETWEEN 0 AND b IN
|
|
21
|
+
* (...)` left to right) or not parse (PostgreSQL). Both printers pass every A_Expr, NullTest, BooleanTest and SubLink through it.
|
|
22
|
+
*/
|
|
23
|
+
export declare function parenthesized(key: "A_Expr" | "NullTest" | "BooleanTest" | "SubLink", n: N): N;
|
|
24
|
+
//# sourceMappingURL=ast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../src/core/sql/ast.ts"],"names":[],"mappings":"AAAA,kIAAkI;AAClI,OAAO,KAAK,EAAE,OAAO,IAAI,CAAC,EAAE,MAAM,4BAA4B,CAAC;AAE/D,eAAO,MAAM,CAAC,GAAI,GAAG,MAAM;;;;CAA8B,CAAC;AAC1D,kCAAkC;AAClC,eAAO,MAAM,GAAG,GAAI,GAAG,GAAG,MAAM,EAAE,KAAG,CAA0C,CAAC;AAChF,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,KAAG,CAAyE,CAAC;AACrH,6FAA6F;AAC7F,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,KAAG,CAAyI,CAAC;AAC1K,eAAO,MAAM,MAAM,GAAI,KAAK,CAAC,EAAE,OAAO,MAAM,KAAG,CAAoD,CAAC;AACpG,oHAAoH;AACpH,eAAO,MAAM,KAAK,GAAI,SAAS,MAAM,EAAE,SAAQ,OAAO,GAAG,QAAkB,KAAG,CAA0D,CAAC;AAMzI,6EAA6E;AAC7E,eAAO,MAAM,KAAK,GAAI,GAAG,CAAC,GAAG,SAAS,kBAA8C,CAAC;AAErF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAQ7F"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export const S = (s) => ({ String: { sval: s } });
|
|
2
|
+
/** `ref("t", "id")` is `t.id`. */
|
|
3
|
+
export const ref = (...f) => ({ ColumnRef: { fields: f.map(S) } });
|
|
4
|
+
export const op = (o, l, r) => ({ A_Expr: { kind: "AEXPR_OP", name: [S(o)], lexpr: l, rexpr: r } });
|
|
5
|
+
/** Integers past int32 must be `fval` in libpg-query's shape; 0 must keep its `ival` key. */
|
|
6
|
+
export const num = (n) => (Number.isSafeInteger(n) && Math.abs(n) < 2 ** 31 ? { A_Const: { ival: { ival: n } } } : { A_Const: { fval: { fval: String(n) } } });
|
|
7
|
+
export const target = (val, name) => ({ ResTarget: name ? { name, val } : { val } });
|
|
8
|
+
/** A relation as the CLI tags it: a Schema `table`, or `system` for Core's own (never reachable from author IR). */
|
|
9
|
+
export const table = (relname, mantle = "table") => ({ relname, inh: true, relpersistence: "p", mantle });
|
|
10
|
+
/** Nodes that print as one unit on both engines; anything else is an expression a printer must parenthesize as an operand. */
|
|
11
|
+
const ATOMIC = new Set(["ColumnRef", "A_Const", "ParamRef", "FuncCall", "TypeCast", "CaseExpr", "CoalesceExpr", "MinMaxExpr", "Raw"]);
|
|
12
|
+
const atomic = (x) => !x || typeof x !== "object" || Object.keys(x).some((k) => ATOMIC.has(k)) ||
|
|
13
|
+
(x.SubLink && ["EXPR_SUBLINK", "ARRAY_SUBLINK"].includes(x.SubLink.subLinkType));
|
|
14
|
+
/** `x` in parentheses: the printers' `Raw` prints its parts inside `( )`. */
|
|
15
|
+
export const paren = (x) => (atomic(x) ? x : { Raw: { parts: [x] } });
|
|
16
|
+
/**
|
|
17
|
+
* An operator, test or `IN (subquery)` with each non-atomic operand in parentheses. pgsql-deparser prints the operands of BETWEEN,
|
|
18
|
+
* LIKE, IN and IS as written, so a nested condition there would read as another expression (SQLite groups `a BETWEEN 0 AND b IN
|
|
19
|
+
* (...)` left to right) or not parse (PostgreSQL). Both printers pass every A_Expr, NullTest, BooleanTest and SubLink through it.
|
|
20
|
+
*/
|
|
21
|
+
export function parenthesized(key, n) {
|
|
22
|
+
if (key === "NullTest" || key === "BooleanTest")
|
|
23
|
+
return { ...n, arg: paren(n.arg) };
|
|
24
|
+
if (key === "SubLink")
|
|
25
|
+
return n.testexpr ? { ...n, testexpr: paren(n.testexpr) } : n;
|
|
26
|
+
const r = n.rexpr;
|
|
27
|
+
const rexpr = r?.List ? { List: { ...r.List, items: r.List.items.map(paren) } }
|
|
28
|
+
: r?.FuncCall && r.FuncCall.funcname?.at(-1)?.String?.sval === "like_escape" ? { FuncCall: { ...r.FuncCall, args: r.FuncCall.args?.map(paren) } }
|
|
29
|
+
: paren(r);
|
|
30
|
+
return { ...n, ...(n.lexpr ? { lexpr: paren(n.lexpr) } : {}), ...(r ? { rexpr } : {}) };
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=ast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../src/core/sql/ast.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* IR -> physical statements: validate (the runtime never trusts an IR), inject policy, resolve binds.
|
|
3
|
+
* Everything a Store does per statement before the executor runs it (ADR-0034 decisions 3 and 8).
|
|
4
|
+
*/
|
|
5
|
+
import { type JsonSchema, type SchemaColumns, type SqlNode } from "../../spec/domain/index.js";
|
|
6
|
+
import type { MantleDialect, StorageSchema } from "../dialect.js";
|
|
7
|
+
import { type BindSpec, type Compiled, type Mode } from "./policy.js";
|
|
8
|
+
import type { RelationPosition } from "./positions.js";
|
|
9
|
+
export type { Compiled, Mode } from "./policy.js";
|
|
10
|
+
/** Who and when a statement runs for; `input` is the Procedure or View input. */
|
|
11
|
+
export interface BindContext {
|
|
12
|
+
/** The caller's subject; null for an anonymous caller, who matches no scoped row. */
|
|
13
|
+
readonly uid: string | null;
|
|
14
|
+
readonly now: number;
|
|
15
|
+
readonly role?: string | null;
|
|
16
|
+
readonly input?: Readonly<Record<string, unknown>>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The input as a statement binds it. SQL folds an unquoted `input.itemId` to `itemid`, so the statement names the folded name. Only
|
|
20
|
+
* declared properties are keyed: a key the caller added that folds the same (`ITEMID`) skipped the schema's checks and is never read.
|
|
21
|
+
*/
|
|
22
|
+
export declare function sqlInput(schema: JsonSchema | undefined, input: unknown): Record<string, unknown>;
|
|
23
|
+
export interface CompileContext {
|
|
24
|
+
readonly dialect: MantleDialect;
|
|
25
|
+
readonly schemas: Readonly<Record<string, StorageSchema>>;
|
|
26
|
+
/** `schemaColumns(schemas)`, when the caller checks many programs against one plan. */
|
|
27
|
+
readonly columns?: SchemaColumns;
|
|
28
|
+
/** Declared input properties and their Mantle types. */
|
|
29
|
+
readonly inputs: Readonly<Record<string, string>>;
|
|
30
|
+
readonly kind: "view" | "procedure";
|
|
31
|
+
readonly mode?: Mode;
|
|
32
|
+
/** Schemas with an after hook: their writes return `id` and `version` in hidden columns. */
|
|
33
|
+
readonly returning?: ReadonlySet<string>;
|
|
34
|
+
/** Add `AND version = ?` (the version the before hook saw) to a row op. */
|
|
35
|
+
readonly lockVersion?: boolean;
|
|
36
|
+
/** Per statement: the status an update moves the entry to (Store's `set: { status }`). */
|
|
37
|
+
readonly statuses?: readonly (string | undefined)[];
|
|
38
|
+
/** Records every relation position the policy printed a wrapper for (the position probe checks it is complete). */
|
|
39
|
+
readonly seen?: Set<RelationPosition>;
|
|
40
|
+
/** NEGATIVE CONTROL ONLY (see RunEnv). */
|
|
41
|
+
readonly unsafeNoVisibility?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/** Check every statement of a program with the dialect, then inject policy. A refused IR is `INPUT_VALIDATION_FAILED`. */
|
|
44
|
+
export declare function compileProgram(stmts: readonly SqlNode[], ctx: CompileContext): Compiled[];
|
|
45
|
+
/** Resolve a statement's numbered binds. `version` and `cursor` values come from the caller of this function. */
|
|
46
|
+
export declare function bindValues(dialect: MantleDialect, binds: readonly BindSpec[], ctx: BindContext, extra?: {
|
|
47
|
+
version?: unknown;
|
|
48
|
+
cursor?: readonly unknown[];
|
|
49
|
+
}): unknown[];
|
|
50
|
+
//# sourceMappingURL=compile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/core/sql/compile.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAc,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,OAAO,EAAgB,MAAM,4BAA4B,CAAC;AAEzH,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAe,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAmB,MAAM,aAAa,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAElD,iFAAiF;AACjF,MAAM,WAAW,WAAW;IAC1B,qFAAqF;IACrF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGhG;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;IAC1D,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,wDAAwD;IACxD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACrB,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,0FAA0F;IAC1F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACpD,mHAAmH;IACnH,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACtC,0CAA0C;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,0HAA0H;AAC1H,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,GAAG,QAAQ,EAAE,CAYzF;AAED,iHAAiH;AACjH,wBAAgB,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,QAAQ,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;CAAO,GAAG,OAAO,EAAE,CAgB1K"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* IR -> physical statements: validate (the runtime never trusts an IR), inject policy, resolve binds.
|
|
3
|
+
* Everything a Store does per statement before the executor runs it (ADR-0034 decisions 3 and 8).
|
|
4
|
+
*/
|
|
5
|
+
import { PG_GRAMMAR } from "../../spec/domain/index.js";
|
|
6
|
+
import { runtimeDiagnostic, DiagnosticError } from "../../spec/kernel/index.js";
|
|
7
|
+
import { applyPolicy } from "./policy.js";
|
|
8
|
+
/**
|
|
9
|
+
* The input as a statement binds it. SQL folds an unquoted `input.itemId` to `itemid`, so the statement names the folded name. Only
|
|
10
|
+
* declared properties are keyed: a key the caller added that folds the same (`ITEMID`) skipped the schema's checks and is never read.
|
|
11
|
+
*/
|
|
12
|
+
export function sqlInput(schema, input) {
|
|
13
|
+
const given = (input ?? {});
|
|
14
|
+
return Object.fromEntries(Object.keys(schema?.properties ?? {}).map((name) => [name.toLowerCase(), Object.hasOwn(given, name) ? given[name] : undefined]));
|
|
15
|
+
}
|
|
16
|
+
/** Check every statement of a program with the dialect, then inject policy. A refused IR is `INPUT_VALIDATION_FAILED`. */
|
|
17
|
+
export function compileProgram(stmts, ctx) {
|
|
18
|
+
const diagnostics = ctx.dialect.check({ grammar: PG_GRAMMAR, stmts }, { schemas: ctx.schemas, ...(ctx.columns ? { columns: ctx.columns } : {}), inputs: ctx.inputs, kind: ctx.kind, public: ctx.mode === "public" });
|
|
19
|
+
if (diagnostics.length)
|
|
20
|
+
throw new DiagnosticError(diagnostics.map((d) => runtimeDiagnostic({ code: "INPUT_VALIDATION_FAILED", severity: "error", path: "store", message: `${d.code}: ${d.message}` })));
|
|
21
|
+
const opts = { schemas: ctx.schemas, inputs: ctx.inputs, mode: ctx.mode, lockVersion: ctx.lockVersion, returning: ctx.returning, seen: ctx.seen, unsafeNoVisibility: ctx.unsafeNoVisibility, lower: ctx.dialect.lowering };
|
|
22
|
+
return stmts.map((stmt, i) => {
|
|
23
|
+
const c = applyPolicy(stmt, { ...opts, status: ctx.statuses?.[i] });
|
|
24
|
+
// a Schema whose published entries are protected takes row ops only (ADR-0032 decision 2, ADR-0034 decision 4)
|
|
25
|
+
if (c.kind === "set" && c.schema && ctx.schemas[c.schema]?.publishing)
|
|
26
|
+
throw new DiagnosticError(runtimeDiagnostic({ code: "INPUT_VALIDATION_FAILED", severity: "error", path: "store", message: `SQL_SHAPE: a set op on ${c.schema} is refused: its lifecycle is publishing, so published entries are protected and writes take row ops only` }));
|
|
27
|
+
return c;
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/** Resolve a statement's numbered binds. `version` and `cursor` values come from the caller of this function. */
|
|
31
|
+
export function bindValues(dialect, binds, ctx, extra = {}) {
|
|
32
|
+
const input = ctx.input ?? {};
|
|
33
|
+
return binds.map((b) => {
|
|
34
|
+
switch (b.k) {
|
|
35
|
+
case "uid": return ctx.uid;
|
|
36
|
+
// an instant is bound as the dialect stores one (microseconds on D1, an ISO string on PostgreSQL)
|
|
37
|
+
case "now": return dialect.codec.encode("timestamptz", ctx.now);
|
|
38
|
+
case "cutoff": return dialect.codec.encode("timestamptz", ctx.now - b.seconds * 1_000_000);
|
|
39
|
+
case "const": return b.value;
|
|
40
|
+
case "role": return ctx.role ?? null;
|
|
41
|
+
case "input": return dialect.codec.encode(b.type, input[b.name]);
|
|
42
|
+
case "version": return extra.version;
|
|
43
|
+
case "cursor": return extra.cursor[b.i];
|
|
44
|
+
case "dialect": return dialect.bind(b, ctx);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=compile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../src/core/sql/compile.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAmE,MAAM,4BAA4B,CAAC;AACzH,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAEhF,OAAO,EAAE,WAAW,EAA4D,MAAM,aAAa,CAAC;AAcpG;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,MAA8B,EAAE,KAAc;IACrE,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC;IACvD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7J,CAAC;AAuBD,0HAA0H;AAC1H,MAAM,UAAU,cAAc,CAAC,KAAyB,EAAE,GAAmB;IAC3E,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAoB,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC;IACvO,IAAI,WAAW,CAAC,MAAM;QACpB,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAClL,MAAM,IAAI,GAAe,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,SAAoC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,CAAC,kBAAkB,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAClQ,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC3B,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,+GAA+G;QAC/G,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU;YACnE,MAAM,IAAI,eAAe,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAAC,MAAM,2GAA2G,EAAE,CAAC,CAAC,CAAC;QAC9Q,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iHAAiH;AACjH,MAAM,UAAU,UAAU,CAAC,OAAsB,EAAE,KAA0B,EAAE,GAAgB,EAAE,QAA4D,EAAE;IAC7J,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;IAC9B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrB,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACZ,KAAK,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC;YAC3B,kGAAkG;YAClG,KAAK,KAAK,CAAC,CAAC,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAChE,KAAK,QAAQ,CAAC,CAAC,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;YAC3F,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;YAC7B,KAAK,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;YACrC,KAAK,OAAO,CAAC,CAAC,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACjE,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,CAAC;YACrC,KAAK,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,MAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,KAAK,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { type SqlNode as N } from '../../spec/domain/index.js';
|
|
2
|
+
import type { RelationPosition } from './positions.js';
|
|
3
|
+
import type { StorageSchema as SchemaDef } from '../dialect.js';
|
|
4
|
+
type Schemas = Record<string, SchemaDef>;
|
|
5
|
+
/** A bind a dialect's lowering adds; the dialect resolves it (`MantleDialect.bind`). */
|
|
6
|
+
export type DialectBind = {
|
|
7
|
+
readonly k: 'dialect';
|
|
8
|
+
readonly [key: string]: unknown;
|
|
9
|
+
};
|
|
10
|
+
export type BindSpec = {
|
|
11
|
+
k: 'uid';
|
|
12
|
+
} | {
|
|
13
|
+
k: 'now';
|
|
14
|
+
} | {
|
|
15
|
+
k: 'role';
|
|
16
|
+
} | {
|
|
17
|
+
k: 'cutoff';
|
|
18
|
+
seconds: number;
|
|
19
|
+
} | {
|
|
20
|
+
k: 'const';
|
|
21
|
+
value: unknown;
|
|
22
|
+
} | {
|
|
23
|
+
k: 'input';
|
|
24
|
+
name: string;
|
|
25
|
+
type: string;
|
|
26
|
+
} | DialectBind | {
|
|
27
|
+
k: 'version';
|
|
28
|
+
} | {
|
|
29
|
+
k: 'cursor';
|
|
30
|
+
i: number;
|
|
31
|
+
};
|
|
32
|
+
/** The prefix of the columns that carry an after hook's row; the runner strips them from the result. */
|
|
33
|
+
export declare const HOOK_PREFIX = "_mantle_h_";
|
|
34
|
+
export type Mode = 'caller' | 'public' | 'trusted';
|
|
35
|
+
export type PolicyOpts = {
|
|
36
|
+
schemas: Schemas;
|
|
37
|
+
inputs: Record<string, string>;
|
|
38
|
+
mode?: Mode;
|
|
39
|
+
/** add `AND version = ?` (the version the before hook saw) to a row op's WHERE */
|
|
40
|
+
lockVersion?: boolean;
|
|
41
|
+
/** the status an update moves the entry to (the lifecycle decided it is legal); SQL cannot write `status` */
|
|
42
|
+
status?: string;
|
|
43
|
+
/** schemas that have an after hook: their writes get RETURNING */
|
|
44
|
+
returning?: Set<string>;
|
|
45
|
+
/** NEGATIVE CONTROL ONLY: print no visibility predicate, so a probe that cannot fail is caught */
|
|
46
|
+
unsafeNoVisibility?: boolean;
|
|
47
|
+
/** records every relation position the pass printed a wrapper for (the probe checks it is complete) */
|
|
48
|
+
seen?: Set<RelationPosition>;
|
|
49
|
+
/** what the dialect spells itself */
|
|
50
|
+
lower: PolicyLowering;
|
|
51
|
+
};
|
|
52
|
+
/** What a lowering reads of the statement being rewritten. */
|
|
53
|
+
export interface LoweringScope {
|
|
54
|
+
readonly inputs: Readonly<Record<string, string>>;
|
|
55
|
+
/** a bind, numbered once per distinct spec */
|
|
56
|
+
param(spec: BindSpec): N;
|
|
57
|
+
/** rewrite a sub-tree (policy and lowering apply inside it) */
|
|
58
|
+
tx(node: N | undefined): N;
|
|
59
|
+
/** the Schema an alias in scope reads, and the query of its `mantle.search(alias, q)` in the same select */
|
|
60
|
+
alias(name: string): {
|
|
61
|
+
schema: string;
|
|
62
|
+
def: SchemaDef;
|
|
63
|
+
searchQuery?: N;
|
|
64
|
+
};
|
|
65
|
+
/** record a relation position the lowering reaches (the position probe checks the list is complete) */
|
|
66
|
+
seen(position: RelationPosition): void;
|
|
67
|
+
}
|
|
68
|
+
/** The pieces of a physical statement only the dialect can spell. Each takes the node already rewritten by Core, except where noted. */
|
|
69
|
+
export interface PolicyLowering {
|
|
70
|
+
/** `input.<name>`: the bind, as the engine reads a value of this Mantle type */
|
|
71
|
+
input(param: N, type: string): N;
|
|
72
|
+
/** A function call, before rewriting (`f` is its name without `pg_catalog.`): its lowering, or undefined to keep it a call. */
|
|
73
|
+
func(f: string, n: N, scope: LoweringScope): N | undefined;
|
|
74
|
+
/** A call that is kept, with its arguments rewritten. */
|
|
75
|
+
call(out: N): N;
|
|
76
|
+
/** A cast, before rewriting. */
|
|
77
|
+
cast(n: N, scope: LoweringScope): N;
|
|
78
|
+
/** A subquery link, with its subquery rewritten. */
|
|
79
|
+
sublink(out: N): N;
|
|
80
|
+
/** A new entry id, for an insert that names none. */
|
|
81
|
+
newId(): N;
|
|
82
|
+
/** Extra columns a Schema's read wrapper exposes (the dialect's own index joins). */
|
|
83
|
+
columns(s: SchemaDef): N[];
|
|
84
|
+
/** `now()`'s bind, for an engine that cannot infer a parameter's type from `$n - interval '1 hour'` (absent: the bare bind). */
|
|
85
|
+
system?(param: N, type: "timestamptz"): N;
|
|
86
|
+
}
|
|
87
|
+
export type Compiled = {
|
|
88
|
+
ast: N;
|
|
89
|
+
binds: BindSpec[];
|
|
90
|
+
kind: 'read' | 'row' | 'set';
|
|
91
|
+
schema?: string;
|
|
92
|
+
verb?: 'insert' | 'update' | 'delete';
|
|
93
|
+
/** an after hook exists for the target: RETURNING carries the row in `HOOK_PREFIX` columns the runner splits off */
|
|
94
|
+
hooked: boolean;
|
|
95
|
+
/** the update publishes the entry: publish hooks fire instead of update hooks */
|
|
96
|
+
publish: boolean;
|
|
97
|
+
};
|
|
98
|
+
type SelInfo = {
|
|
99
|
+
container: RelationPosition;
|
|
100
|
+
hasWindow: boolean;
|
|
101
|
+
hasJsonEach: boolean;
|
|
102
|
+
scope: Map<string, string>;
|
|
103
|
+
searchQ: Map<string, N>;
|
|
104
|
+
};
|
|
105
|
+
type C = PolicyOpts & {
|
|
106
|
+
binds: BindSpec[];
|
|
107
|
+
keys: Map<string, number>;
|
|
108
|
+
edge: string;
|
|
109
|
+
embed: 'top' | 'sublink' | 'from-subquery' | 'insert-select' | 'cte' | 'setop.left' | 'setop.right';
|
|
110
|
+
sel: SelInfo[];
|
|
111
|
+
/** the CTEs in scope, innermost last: a reference reads its body's outputs (ordering needs its id) */
|
|
112
|
+
ctes: Map<string, N>[];
|
|
113
|
+
dml?: {
|
|
114
|
+
alias: string;
|
|
115
|
+
schema: string;
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
export declare function tx(v: any, c: C): any;
|
|
119
|
+
export declare function applyPolicy(stmt: N, opts: PolicyOpts): Compiled;
|
|
120
|
+
export {};
|
|
121
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/core/sql/policy.ts"],"names":[],"mappings":"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"}
|