@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
|
@@ -1,97 +1,82 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Install the Mantle agent plugin or its one skill, hand off to the installed package's own docs, and diagnose missing or stale instructions.
|
|
3
3
|
---
|
|
4
4
|
# Install and verify agent instructions
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
application's
|
|
6
|
+
Two separate things are installed: the agent's `mantle` skill and the
|
|
7
|
+
application's `@aotter/mantle` package. Installing one does not install the
|
|
8
|
+
other, and the installed package is always the authority for the version it
|
|
9
|
+
carries.
|
|
8
10
|
|
|
9
|
-
## 1. Install the
|
|
11
|
+
## 1. Install the `mantle` skill
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
The Mantle plugin carries one skill, `mantle`, its helper script, and the
|
|
14
|
+
Mantle Cloud MCP connection (`https://cloud.mantle.tools/mcp`).
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
# Claude Code: two separate prompts
|
|
18
|
+
/plugin marketplace add aotter/mantle
|
|
19
|
+
/plugin install mantle@mantle
|
|
20
|
+
|
|
21
|
+
# Codex
|
|
22
|
+
codex plugin marketplace add aotter/mantle
|
|
23
|
+
codex plugin add mantle@mantle
|
|
13
24
|
```
|
|
14
25
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
`.agents/skills/mantle/SKILL.md`, not `skills/install/SKILL.md` (the latter is
|
|
18
|
-
its source-repository path). Other agent selections and global installation
|
|
19
|
-
can use different locations.
|
|
26
|
+
Cursor and GitHub Copilot read the plugin manifests from the repository.
|
|
27
|
+
Without a plugin host, install the skill alone:
|
|
20
28
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
version you intend to use. The skills installer's lock identifies the source
|
|
25
|
-
skill; it is not the application's dependency lockfile.
|
|
29
|
+
```sh
|
|
30
|
+
npx skills add aotter/mantle
|
|
31
|
+
```
|
|
26
32
|
|
|
27
|
-
|
|
33
|
+
A skill-only install has no Cloud MCP connection; add one by hand if you need
|
|
34
|
+
it. Either way, read the path the installer prints (for project-local Codex,
|
|
35
|
+
`.agents/skills/mantle/SKILL.md`). The skill installs no SDK, creates no
|
|
36
|
+
project and copies no handbook.
|
|
28
37
|
|
|
29
|
-
|
|
30
|
-
once and pin every selected `@aotter/mantle*` dependency to the same exact
|
|
31
|
-
version. `latest` and `alpha` can describe different capabilities. Resolve only
|
|
32
|
-
requirements the user has not provided: host, storage, public API/HTML, and
|
|
33
|
-
whether staff need Admin. Follow the bootstrap skill to install the selected
|
|
34
|
-
packages locally.
|
|
35
|
-
No matching `mantle-starters` tag or bundle is needed to create a project.
|
|
38
|
+
## 2. Install the SDK, then read its own docs
|
|
36
39
|
|
|
37
|
-
|
|
40
|
+
Use the version the project already pins. For a new project, choose a 0.2.x
|
|
41
|
+
version with `npm view @aotter/mantle dist-tags` and install it with an exact
|
|
42
|
+
version; every `@aotter/mantle*` package stays at that same version. Then
|
|
43
|
+
read, from the application:
|
|
38
44
|
|
|
39
45
|
```text
|
|
40
|
-
node_modules/@aotter/mantle/
|
|
46
|
+
node_modules/@aotter/mantle/README.md
|
|
41
47
|
node_modules/@aotter/mantle/docs/handbook/start/overview.md
|
|
42
48
|
node_modules/@aotter/mantle/docs/handbook/reference/features.md
|
|
49
|
+
node_modules/@aotter/mantle/docs/skills/<workflow>/SKILL.md
|
|
43
50
|
```
|
|
44
51
|
|
|
45
|
-
These
|
|
46
|
-
|
|
47
|
-
`docs/...` path in the skill resolves under the installed package, not under
|
|
48
|
-
`.agents/skills/mantle/`. Keep using that SDK's docs for host examples and CLI
|
|
49
|
-
behavior. No local `mantle` binary is available before package installation.
|
|
52
|
+
These ship in the npm tarball and match the installed code. Prefer them over
|
|
53
|
+
the skill's GitHub copy and over any online handbook.
|
|
50
54
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
From the application root, after installing the SDK:
|
|
54
|
-
|
|
55
|
-
```sh
|
|
56
|
-
pnpm exec mantle --help
|
|
57
|
-
pnpm exec mantle skills
|
|
58
|
-
pnpm exec mantle skills --check
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
| Artifact | What you get |
|
|
55
|
+
| Package skill | Read it when |
|
|
62
56
|
|---|---|
|
|
63
|
-
|
|
|
64
|
-
|
|
|
65
|
-
| `
|
|
66
|
-
| `
|
|
57
|
+
| `docs/skills/develop/SKILL.md` | changing manifests, handlers, the service or its surfaces |
|
|
58
|
+
| `docs/skills/integrate/SKILL.md` | adding Mantle to an existing application |
|
|
59
|
+
| `docs/skills/update/SKILL.md` | upgrading `@aotter/mantle`, including from 0.1.x |
|
|
60
|
+
| `docs/skills/provision/SKILL.md` | deploying, with production sign-in |
|
|
61
|
+
| `docs/skills/media-gc/SKILL.md` | auditing or removing stale R2 uploads |
|
|
62
|
+
|
|
63
|
+
0.2.0 has no `mantle skills` command: nothing is copied into the project.
|
|
64
|
+
An agent reads these files from `node_modules` when the task calls for them.
|
|
67
65
|
|
|
68
|
-
|
|
69
|
-
instructions elsewhere. `--check` does not write: exit 0 means they match,
|
|
70
|
-
1 means missing/stale projections, and 2 means a command/package error.
|
|
71
|
-
`mantle generate` does not project skills. Projection does not remove an older
|
|
72
|
-
bootstrap `install` or legacy `.agent/skills` copy; use the version-matched
|
|
73
|
-
project skills for ongoing work.
|
|
66
|
+
## 3. Verify the application
|
|
74
67
|
|
|
75
|
-
|
|
68
|
+
Installing instructions proves only that they were copied. Prove the service:
|
|
76
69
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
70
|
+
1. `mantle generate` and `mantle generate --check` exit 0.
|
|
71
|
+
2. The project typechecks against `.mantle/generated/mantle.ts`.
|
|
72
|
+
3. `wrangler dev` (or, on Bun, `bun src/index.ts`) starts, and the routes you depend on answer: a REST View, an
|
|
73
|
+
HTTP Trigger, `/mcp` `tools/list`, and with identity `mantle` a sign-in and
|
|
74
|
+
`GET /admin/api/me`.
|
|
81
75
|
|
|
82
76
|
| Symptom | Cause and next step |
|
|
83
77
|
|---|---|
|
|
84
|
-
| `
|
|
85
|
-
| `
|
|
86
|
-
| `mantle` is
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
| No projected integrate/provision/media-gc skill | These are intentionally opt-in. Read their installed package files when the task calls for them. |
|
|
90
|
-
| A documented feature fails on an older release | Use that release's docs or explicitly upgrade; changing a skill does not change Runtime. |
|
|
91
|
-
|
|
92
|
-
## Source
|
|
93
|
-
|
|
94
|
-
- [Bootstrap install skill](../../../skills/install/SKILL.md)
|
|
95
|
-
- [Projection implementation](../../../packages/mantle/src/cli/skills.ts)
|
|
96
|
-
- [Package file list](../../../packages/mantle/package.json)
|
|
97
|
-
- [Package docs and skills copying](../../../scripts/sync-package-docs.mjs)
|
|
78
|
+
| `docs/...` is missing after installing the skill | The skill carries no docs. Install the SDK and read `node_modules/@aotter/mantle/docs/`. |
|
|
79
|
+
| `mantle` is not found | Install `@aotter/mantle` locally and run it through the package manager (`pnpm exec mantle`). |
|
|
80
|
+
| `mantle skills` is unknown | It is 0.1.x. Follow the installed 0.2.x docs. |
|
|
81
|
+
| A v1 manifest or a `version: 1` config fails | The project is on 0.1.x. Follow `docs/upgrade-0.1-to-0.2.md`. |
|
|
82
|
+
| A documented feature is missing | The installed version is older than the docs you read. Read its own docs, or upgrade deliberately. |
|
|
@@ -1,26 +1,34 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Read and write through the typed Store from handlers and service code, call named Views, and choose between ctx.store, runtime.store and runtime.store.as(caller).
|
|
3
3
|
---
|
|
4
4
|
# Query from TypeScript
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
Handler and service code reach Mantle-owned rows only through Store. The
|
|
7
|
+
generated `.mantle/generated/mantle.ts` types it over your Schemas and Views:
|
|
8
|
+
`ctx.store` in a `MantleHandlers` handler is its `CallerStore`, while
|
|
9
|
+
`runtime.store` is the untyped `MantleStore` until you cast it to the
|
|
10
|
+
generated `Store`.
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
| Store | Where | Scope |
|
|
13
|
+
|---|---|---|
|
|
14
|
+
| `ctx.store` | inside a `ref` handler | bound to the invocation's caller. A guard or a before hook gets a read-only one |
|
|
15
|
+
| `runtime.store.as(caller)` | service code that has resolved a caller | that caller |
|
|
16
|
+
| `runtime.store` | trusted host code (imports, maintenance) | none: no caller scope. TTL still applies |
|
|
17
|
+
|
|
18
|
+
Each one applies TTL visibility, and published-only on public Views. Only
|
|
19
|
+
`runtime.store` skips caller scope, so never hand it a request's input
|
|
20
|
+
unchecked.
|
|
12
21
|
|
|
13
|
-
|
|
14
|
-
uses a business status field distinct from Mantle's native `status`.
|
|
22
|
+
## Declare an internal View
|
|
15
23
|
|
|
16
24
|
```yaml
|
|
17
|
-
apiVersion: cms.mantle.aotter.net/
|
|
25
|
+
apiVersion: cms.mantle.aotter.net/v2
|
|
18
26
|
kind: Schema
|
|
19
|
-
metadata:
|
|
20
|
-
name: tickets
|
|
27
|
+
metadata: { name: tickets }
|
|
21
28
|
spec:
|
|
22
29
|
title: Tickets
|
|
23
30
|
lifecycle: operational
|
|
31
|
+
indexes: [[ticketState]]
|
|
24
32
|
schema:
|
|
25
33
|
type: object
|
|
26
34
|
additionalProperties: false
|
|
@@ -28,134 +36,120 @@ spec:
|
|
|
28
36
|
properties:
|
|
29
37
|
subject: { type: string }
|
|
30
38
|
ticketState: { type: string, enum: [open, closed] }
|
|
31
|
-
indexes: [[ticketState]]
|
|
32
39
|
---
|
|
33
|
-
apiVersion: cms.mantle.aotter.net/
|
|
40
|
+
apiVersion: cms.mantle.aotter.net/v2
|
|
34
41
|
kind: View
|
|
35
|
-
metadata:
|
|
36
|
-
name: tickets-by-state
|
|
42
|
+
metadata: { name: tickets-by-state }
|
|
37
43
|
spec:
|
|
38
44
|
surface: internal
|
|
39
|
-
|
|
40
|
-
fields: [id, subject, ticketState]
|
|
41
|
-
filter:
|
|
42
|
-
eq: { field: ticketState, value: { $param: ticketState } }
|
|
43
|
-
params:
|
|
45
|
+
input:
|
|
44
46
|
type: object
|
|
45
47
|
additionalProperties: false
|
|
46
48
|
required: [ticketState]
|
|
47
49
|
properties:
|
|
48
50
|
ticketState: { type: string, enum: [open, closed] }
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
pnpm exec mantle validate --no-source
|
|
54
|
-
pnpm exec mantle generate
|
|
55
|
-
pnpm exec mantle generate --check
|
|
51
|
+
sql: |
|
|
52
|
+
SELECT id, subject, ticketState FROM tickets
|
|
53
|
+
WHERE ticketState = input.ticketState
|
|
54
|
+
ORDER BY created_at DESC LIMIT 50
|
|
56
55
|
```
|
|
57
56
|
|
|
58
|
-
`internal` keeps
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
against the host-supplied `ctx` on every call. No `uiSchema` or shared HTTP
|
|
62
|
-
cache is allowed for an internal View.
|
|
63
|
-
|
|
64
|
-
## Bind and call
|
|
57
|
+
`internal` keeps the View off REST, MCP and Admin. It is still in the plan and
|
|
58
|
+
the typed Store. It is not a security bypass: a `requires` on it is checked
|
|
59
|
+
for the caller the Store is bound to.
|
|
65
60
|
|
|
66
|
-
|
|
67
|
-
typed API. This function can live in `src/queries.ts`:
|
|
61
|
+
## Call it
|
|
68
62
|
|
|
69
63
|
```ts
|
|
70
|
-
import type {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
});
|
|
80
|
-
if (!result.ok) throw new Error(result.diagnostic.message);
|
|
81
|
-
return result.result.rows;
|
|
82
|
-
}
|
|
64
|
+
import type { MantleHandlers } from "../.mantle/generated/mantle.js";
|
|
65
|
+
|
|
66
|
+
export const handlers: MantleHandlers = {
|
|
67
|
+
closeStale: async (_input, ctx) => {
|
|
68
|
+
const { rows, nextCursor } = await ctx.store.view("tickets-by-state", { input: { ticketState: "open" }, limit: 20 });
|
|
69
|
+
// rows: { id: unknown; subject: string | null; ticketState: "open" | "closed" | null }[]
|
|
70
|
+
return { open: rows.length, more: nextCursor !== undefined };
|
|
71
|
+
},
|
|
72
|
+
};
|
|
83
73
|
```
|
|
84
74
|
|
|
85
|
-
The
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
`
|
|
92
|
-
|
|
75
|
+
The View name, its `input` and its row type are checked by `tsc`. A staff View
|
|
76
|
+
with `uiSchema.list.searchFields` or `filterFields` also takes `search` and
|
|
77
|
+
`filters` (`ctx.store.view(name, { search: "refund", filters: { ticketState: "open" } })`);
|
|
78
|
+
Store refuses a filter the View does not declare. An output that reads a
|
|
79
|
+
Schema field unchanged has that field's type, `created_at` and `updated_at`
|
|
80
|
+
are `string | null`, and an expression, or another native column such as `id`,
|
|
81
|
+
is `unknown`. Page with `limit` (default 50, at most 500) and the opaque
|
|
82
|
+
`cursor` from `nextCursor`.
|
|
93
83
|
|
|
94
|
-
|
|
95
|
-
ports })`, which delegates one eager boot attempt and returns the typed
|
|
96
|
-
binding. Host code still owns connection lifetime and retries. See
|
|
97
|
-
[Runtime and adapters](../concepts/runtime-and-adapters.md).
|
|
84
|
+
## `select` and `write`
|
|
98
85
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
| Query form | Generated shape | Limit |
|
|
102
|
-
|---|---|---|
|
|
103
|
-
| Declarative View | `Mantle.ViewParams_<name>` and `Mantle.ViewRow_<name>` | Projection follows `fields`; native columns have their native types. Data properties remain optional in the row type. |
|
|
104
|
-
| SQL View | Typed params; row type `unknown` | The generator does not infer SQL expressions or aliases. Narrow/validate rows in host code. |
|
|
105
|
-
| Entry field reader | `MantleEntry<Mantle.Entry_<schema>>` | The field must be a declared data property and the value a compatible string, number or boolean. Types do not prove an index exists. |
|
|
106
|
-
| Dynamic Runtime call | `runtime.executeView({ view, ctx, options })` | Useful without codegen; supplying a generic row type is the caller's assertion, not SQL validation. |
|
|
107
|
-
|
|
108
|
-
Without `fields`, a declarative View includes native entry columns and Schema
|
|
109
|
-
properties. Use explicit projections on exposed reads. Public declarative
|
|
110
|
-
Views over publishing Schemas inject `status = published`; internal/staff
|
|
111
|
-
Views and SQL statements do not. See [View reference](../reference/view.md).
|
|
112
|
-
|
|
113
|
-
## Indexed entry reads
|
|
114
|
-
|
|
115
|
-
For the Schema above:
|
|
86
|
+
For a query that needs no declared View, `select` takes a JSON query over one
|
|
87
|
+
Schema:
|
|
116
88
|
|
|
117
89
|
```ts
|
|
118
|
-
const rows = await
|
|
119
|
-
|
|
120
|
-
|
|
90
|
+
const { rows } = await ctx.store.select({
|
|
91
|
+
from: "tickets",
|
|
92
|
+
columns: ["id", "subject"],
|
|
93
|
+
where: { ticketState: "open", subject: { like: "%refund%" } },
|
|
94
|
+
orderBy: { updatedAt: "desc" },
|
|
121
95
|
limit: 20,
|
|
122
96
|
});
|
|
123
|
-
// rows[n].data is the generated tickets data shape.
|
|
124
97
|
```
|
|
125
98
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
These readers do not evaluate View `requires`, inject public visibility or
|
|
134
|
-
fire mutation hooks. In particular, `findManyByDataField` can return drafts.
|
|
135
|
-
Use a public View for untrusted callers; do not expose a raw reader as a public
|
|
136
|
-
route and assume the generated type authorizes it. Declare a measured index
|
|
137
|
-
whose leftmost field matches the lookup; do not scan an entire collection in
|
|
138
|
-
TypeScript to replace a field query.
|
|
99
|
+
- `where`: `{ column: value }` is equality and sibling keys are AND; also
|
|
100
|
+
`{ column: { eq, ne, gt, gte, lt, lte, like, in, notIn, isNull } }`, and
|
|
101
|
+
`and`, `or`, `not`. `in` takes a list or `{ select, from, where }`.
|
|
102
|
+
- `orderBy`: one column; `id` breaks ties. Default `{ updatedAt: "desc" }`.
|
|
103
|
+
- `search`: text matched against `searchableFields` (and `id`).
|
|
104
|
+
- Native columns are camelCase here (`createdAt`, `authorId`), while SQL spells
|
|
105
|
+
them snake_case (`created_at`).
|
|
139
106
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
A build tool that already compiled a sealed plan can use the pure emitter:
|
|
107
|
+
`write` applies every operation or none, in order:
|
|
143
108
|
|
|
144
109
|
```ts
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
// Write emitted.source to your generated module in the build step.
|
|
110
|
+
await ctx.store.write([
|
|
111
|
+
{ update: "tickets", set: { ticketState: "closed" }, where: { id }, lock: expectedVersion },
|
|
112
|
+
{ insert: "ticket-events", values: { ticketId: id, kind: "closed" } },
|
|
113
|
+
]);
|
|
150
114
|
```
|
|
151
115
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
116
|
+
- `insert` with `values`, optional client `id` (`ctx.store.id()`) and
|
|
117
|
+
`onConflict: "ignore" | { columns, update }`. A scoped Schema refuses a
|
|
118
|
+
client `id`, because a chosen id could collide with another owner's row and
|
|
119
|
+
reveal it: give such rows a field of your own that is unique with the scope
|
|
120
|
+
field (`uniqueIndexes: [[owner, clientKey]]`) when other rows of the same
|
|
121
|
+
write must point at them, or when a retry must find them.
|
|
122
|
+
- `update` with `set` and `where`; `delete` with `where`. A `where` that pins
|
|
123
|
+
`id` is a row op: it may carry `lock` (the version the caller saw), and
|
|
124
|
+
writing no row is `CONFLICT`.
|
|
125
|
+
- A result is `{ id, version }` for a row op and `{ affected }` for a set op.
|
|
126
|
+
- `set` and `values` never name the scope field or a native column (except
|
|
127
|
+
`status` on a `publishing` Schema, below); Store
|
|
128
|
+
fills them. A `null` leaves empty, or clears, a field the Schema does not
|
|
129
|
+
require (the generated `values` and `set` types accept it); for a required
|
|
130
|
+
field it is refused. On a `publishing` Schema, `set: { status }` is how a `ref`
|
|
131
|
+
handler publishes, unpublishes or archives.
|
|
132
|
+
|
|
133
|
+
Failures throw `DiagnosticError` with `INPUT_VALIDATION_FAILED` (including a
|
|
134
|
+
failed `check`), `CONFLICT` (`conflict.reason` is `lock`, `expect` or
|
|
135
|
+
`unique`, and `conflict.opIndex` names the operation; for `unique` it is
|
|
136
|
+
present when exactly one operation of the write targets the violated Schema,
|
|
137
|
+
since the engine names the table and not the statement), `RESOURCE_UNAVAILABLE`
|
|
138
|
+
or `OUTCOME_UNKNOWN`. Nothing is written on any failure. After
|
|
139
|
+
`OUTCOME_UNKNOWN`, retry with the same client ids and locks: a replayed insert
|
|
140
|
+
conflicts on its id, a replayed update on its lock.
|
|
141
|
+
|
|
142
|
+
## From service code
|
|
143
|
+
|
|
144
|
+
The service's `fetch` receives the runtime. Resolve the caller first, as the
|
|
145
|
+
generated `withCaller` does, and bind Store to it:
|
|
155
146
|
|
|
156
|
-
|
|
147
|
+
```ts
|
|
148
|
+
const caller = await resolveCaller(request);
|
|
149
|
+
if (!("caller" in caller)) return new Response("unauthorized", { status: 401 });
|
|
150
|
+
const { rows } = await runtime.store.as(caller.caller).view("tickets-by-state", { input: { ticketState: "open" } });
|
|
151
|
+
```
|
|
157
152
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
- [View execution](../../../packages/mantle-runtime/src/usecase/view/ExecuteViewUseCase.ts)
|
|
153
|
+
To run a Procedure from service code, with its auth, guard and validation, call
|
|
154
|
+
`runtime.invokeProcedure({ procedure, input, caller, cause: { kind: "internal", id } })`.
|
|
155
|
+
Inside a handler, `ctx.invoke(name, input)` does the same and keeps the caller.
|
|
@@ -5,17 +5,15 @@
|
|
|
5
5
|
"text": "Start here",
|
|
6
6
|
"items": [
|
|
7
7
|
{ "text": "Handbook overview", "link": "/start/overview" },
|
|
8
|
-
{ "text": "
|
|
9
|
-
{ "text": "
|
|
10
|
-
{ "text": "Quickstart: authored Worker Admin", "link": "/start/quickstart-admin" },
|
|
11
|
-
{ "text": "When the host is ChatGPT Sites", "link": "/chatgpt-sites/index" }
|
|
8
|
+
{ "text": "Quickstart: a service on Workers", "link": "/start/quickstart-worker" },
|
|
9
|
+
{ "text": "Project layout and CLI", "link": "/start/project-and-cli" }
|
|
12
10
|
]
|
|
13
11
|
},
|
|
14
12
|
{
|
|
15
13
|
"text": "Task guides",
|
|
16
14
|
"items": [
|
|
17
15
|
{ "text": "Agent installation and handoff", "link": "/guides/agent-setup" },
|
|
18
|
-
{ "text": "
|
|
16
|
+
{ "text": "Query from TypeScript", "link": "/guides/typed-queries" },
|
|
19
17
|
{ "text": "Customize Admin from manifests", "link": "/guides/admin-ui" }
|
|
20
18
|
]
|
|
21
19
|
},
|
|
@@ -28,7 +26,7 @@
|
|
|
28
26
|
{ "text": "Writes: Procedures, Triggers and hooks", "link": "/concepts/procedures-and-triggers" },
|
|
29
27
|
{ "text": "Authorization", "link": "/concepts/authorization" },
|
|
30
28
|
{ "text": "MCP and agents", "link": "/concepts/mcp-and-agents" },
|
|
31
|
-
{ "text": "Runtime
|
|
29
|
+
{ "text": "Runtime, Store and dialects", "link": "/concepts/runtime-and-adapters" }
|
|
32
30
|
]
|
|
33
31
|
},
|
|
34
32
|
{
|
|
@@ -46,49 +44,26 @@
|
|
|
46
44
|
{ "text": "HTTP, MCP, CLI and packages", "link": "/reference/surface" }
|
|
47
45
|
]
|
|
48
46
|
},
|
|
49
|
-
{
|
|
50
|
-
"text": "ChatGPT Sites",
|
|
51
|
-
"items": [
|
|
52
|
-
{ "text": "Get started", "link": "/chatgpt-sites/index" },
|
|
53
|
-
{ "text": "Generate a blank app", "link": "/chatgpt-sites/generated-app" },
|
|
54
|
-
{ "text": "Host reference", "link": "/chatgpt-sites/host-reference" },
|
|
55
|
-
{ "text": "Equipment checkout and external APIs", "link": "/chatgpt-sites/equipment-checkout" },
|
|
56
|
-
{ "text": "Earlier guide URL", "link": "/cloudflare/chatgpt-sites" }
|
|
57
|
-
]
|
|
58
|
-
},
|
|
59
47
|
{
|
|
60
48
|
"text": "Cloudflare",
|
|
61
49
|
"items": [
|
|
62
|
-
{ "text": "The
|
|
63
|
-
{ "text": "Bindings and primitives", "link": "/cloudflare/bindings" },
|
|
50
|
+
{ "text": "The service and its entry", "link": "/cloudflare/service-entry" },
|
|
64
51
|
{ "text": "Authentication", "link": "/cloudflare/authentication" },
|
|
65
|
-
{ "text": "Public web, SEO and cache", "link": "/cloudflare/public-web" },
|
|
66
|
-
{ "text": "Site chrome", "link": "/cloudflare/site-chrome" },
|
|
67
|
-
{ "text": "Deferred hooks with Queues", "link": "/cloudflare/deferred-hooks-queues" },
|
|
68
52
|
{ "text": "Media uploads with R2", "link": "/cloudflare/media-r2" },
|
|
69
53
|
{ "text": "Deploy and operate", "link": "/cloudflare/deploy-and-operate" },
|
|
70
|
-
{ "text": "
|
|
54
|
+
{ "text": "Mantle on ChatGPT Sites", "link": "/cloudflare/chatgpt-sites" }
|
|
71
55
|
]
|
|
72
56
|
},
|
|
73
57
|
{
|
|
74
58
|
"text": "Examples",
|
|
75
59
|
"items": [
|
|
76
|
-
{ "text": "Examples
|
|
77
|
-
{ "text": "Intake form (builtin)", "link": "/examples/intake-form" },
|
|
78
|
-
{ "text": "Intake Turnstile and email hooks", "link": "/examples/intake-hooks" },
|
|
79
|
-
{ "text": "Publication", "link": "/examples/publication" },
|
|
80
|
-
{ "text": "Legal documents and consent", "link": "/examples/legal-documents" },
|
|
81
|
-
{ "text": "Reservation requests", "link": "/examples/reservation" },
|
|
82
|
-
{ "text": "Procurement approvals", "link": "/examples/procurement-approvals" },
|
|
83
|
-
{ "text": "Commerce catalog (builtin)", "link": "/examples/commerce" },
|
|
84
|
-
{ "text": "Commerce inventory (DO/Queue)", "link": "/examples/commerce-transaction" },
|
|
85
|
-
{ "text": "Guarded API access", "link": "/examples/guarded-api" }
|
|
60
|
+
{ "text": "Examples", "link": "/examples/hub" }
|
|
86
61
|
]
|
|
87
62
|
},
|
|
88
63
|
{
|
|
89
64
|
"text": "Releases",
|
|
90
65
|
"items": [
|
|
91
|
-
{ "text": "
|
|
66
|
+
{ "text": "Releases", "link": "/releases/index" }
|
|
92
67
|
]
|
|
93
68
|
}
|
|
94
69
|
]
|