@aotter/mantle 0.1.4 → 0.2.0-alpha.1
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 +589 -0
- package/dist/admin/createAdminSurface.js.map +1 -0
- package/dist/admin/developerConsole.d.ts +264 -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 +25 -0
- package/dist/admin/procedureFlow.d.ts.map +1 -0
- package/dist/admin/procedureFlow.js +154 -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 +128 -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 +483 -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 +332 -165
- 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 +352 -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/0021-retire-starter-scaffolding.md +1 -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/0026-progressive-generate.md +36 -0
- package/docs/adr/0027-scheduled-procedure-triggers.md +31 -0
- package/docs/adr/0028-schema-ttl-expiry.md +33 -0
- 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 +26 -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 +96 -299
- 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 -156
- 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 -32
- package/docs/handbook/reference/authorization.md +52 -271
- package/docs/handbook/reference/diagnostics.md +69 -173
- package/docs/handbook/reference/features.md +48 -50
- package/docs/handbook/reference/manifest.md +56 -116
- package/docs/handbook/reference/procedure.md +92 -229
- package/docs/handbook/reference/schema.md +156 -215
- package/docs/handbook/reference/site-config.md +58 -211
- package/docs/handbook/reference/surface.md +69 -181
- package/docs/handbook/reference/trigger.md +73 -162
- package/docs/handbook/reference/view.md +140 -241
- package/docs/handbook/releases/index.md +58 -22
- package/docs/handbook/start/overview.md +59 -48
- package/docs/handbook/start/project-and-cli.md +127 -116
- package/docs/handbook/start/quickstart-worker.md +102 -151
- package/docs/skills/develop/SKILL.md +114 -232
- package/docs/skills/develop/mcp-app.md +79 -0
- package/docs/skills/integrate/SKILL.md +96 -0
- 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 -105
- 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/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 -102
- 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/meta/_journal.json +0 -1
- 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 -9
- package/docs/examples/host-chatgpt-sites/src/chatgpt-auth.ts +0 -63
- 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/host-reference.md +0 -113
- package/docs/handbook/chatgpt-sites/index.md +0 -123
- package/docs/handbook/cloudflare/bindings.md +0 -298
- package/docs/handbook/cloudflare/conventional-worker.md +0 -162
- 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 -50
- 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 -125
- package/skills/develop/SKILL.md +0 -250
- package/skills/install/SKILL.md +0 -149
- 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
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
# Editorial Blog Design Reference (2026-05-05)
|
|
2
|
-
|
|
3
|
-
This document preserves the visual system from the retired
|
|
4
|
-
`blog-editorial-2026-05-05` starter. The runnable starter was removed because
|
|
5
|
-
it looked like a maintained template, but the design work is still useful as a
|
|
6
|
-
reference for future themes.
|
|
7
|
-
|
|
8
|
-
Use this as a design specimen, not as implementation guidance. Apply it through
|
|
9
|
-
the version-matched `mantle:theme` workflow and the generated project's owned
|
|
10
|
-
theme paths, such as `styles/globals.css`, `components/`, and `src/web/`.
|
|
11
|
-
|
|
12
|
-
## Design Thesis
|
|
13
|
-
|
|
14
|
-
The direction was a quiet literary journal: warm paper, dark ink, a narrow
|
|
15
|
-
reading measure, editorial serif typography, and one vermilion accent. The UI
|
|
16
|
-
avoided dashboard styling and treated the site chrome as magazine furniture:
|
|
17
|
-
small caps, rules, careful spacing, and minimal controls.
|
|
18
|
-
|
|
19
|
-
The design was intentionally opinionated. That is why it should be reused as a
|
|
20
|
-
theme preset or design prompt, not shipped as the default blog starter.
|
|
21
|
-
|
|
22
|
-
## Visual Tokens
|
|
23
|
-
|
|
24
|
-
| Token | Light | Dark | Role |
|
|
25
|
-
|---|---:|---:|---|
|
|
26
|
-
| `paper` | `#f6f1e7` | `#1a1814` | Page background |
|
|
27
|
-
| `ink` | `#1a1814` | `#f1ebdf` | Primary text |
|
|
28
|
-
| `rule` | `#d4c8b3` | `#3d342a` | Hairlines, subtle borders |
|
|
29
|
-
| `rule-strong` | `#3d342a` | `#5a4d40` | Form underlines, stronger separators |
|
|
30
|
-
| `mute` | `#7a6d5e` | `#9a8d7e` | Metadata and secondary copy |
|
|
31
|
-
| `accent` | `#a3331f` | `#e6594a` | Links, drop caps, error states, preview banner |
|
|
32
|
-
| `accent-soft` | `#c9614a` | `#c9614a` | Secondary accent |
|
|
33
|
-
| `selection` | `#f0d6a3` | `#4a3520` | Text selection background |
|
|
34
|
-
|
|
35
|
-
Layout tokens:
|
|
36
|
-
|
|
37
|
-
| Token | Value | Role |
|
|
38
|
-
|---|---:|---|
|
|
39
|
-
| `measure` | `38rem` | Main article measure |
|
|
40
|
-
| `main max-width` | `48rem` | Single-column shell, slightly wider than the article |
|
|
41
|
-
| `gutter` | `clamp(1.25rem, 4vw, 3rem)` | Responsive page padding |
|
|
42
|
-
| `base font size` | `18px` | Reading-first default |
|
|
43
|
-
| `line height` | `1.65` | Long-form prose rhythm |
|
|
44
|
-
|
|
45
|
-
## Typography
|
|
46
|
-
|
|
47
|
-
The type system used four families:
|
|
48
|
-
|
|
49
|
-
| Use | Font stack |
|
|
50
|
-
|---|---|
|
|
51
|
-
| Display | `Fraunces`, `Noto Serif TC`, `Source Serif 4`, `Georgia`, `serif` |
|
|
52
|
-
| Body | `Source Serif 4`, `Noto Serif TC`, `Georgia`, `serif` |
|
|
53
|
-
| Mono/meta | `JetBrains Mono`, `ui-monospace`, `SF Mono`, `Menlo`, `monospace` |
|
|
54
|
-
| CJK fallback | `Noto Serif TC` |
|
|
55
|
-
|
|
56
|
-
Important behaviors:
|
|
57
|
-
|
|
58
|
-
- Body text enables `kern`, `liga`, and `onum`.
|
|
59
|
-
- Headings use Fraunces variable optical sizing with `opsz` and `SOFT`.
|
|
60
|
-
- `h1` scales from `2.2rem` to `3.4rem`; hero `h1` scales up to `4rem`.
|
|
61
|
-
- Metadata uses JetBrains Mono at `0.75rem`, uppercase, and `0.04em` tracking.
|
|
62
|
-
- Paragraphs indent after the first paragraph with `p + p { text-indent: 1.5em; }`.
|
|
63
|
-
- Post bodies reset the first paragraph indent and add a vermilion drop cap.
|
|
64
|
-
|
|
65
|
-
## Page Chrome
|
|
66
|
-
|
|
67
|
-
Header:
|
|
68
|
-
|
|
69
|
-
- Sticky top header with a one-pixel rule.
|
|
70
|
-
- Warm translucent paper background using `color-mix`, `saturate(140%)`, and
|
|
71
|
-
`blur(10px)`.
|
|
72
|
-
- Wordmark uses display serif and inserts a vermilion middle dot between the
|
|
73
|
-
first word and the remaining brand words.
|
|
74
|
-
- Navigation is centered, uppercase, display serif, and tracked at `0.18em`.
|
|
75
|
-
- Current nav item is shown by a one-pixel underline in `ink`; hover uses
|
|
76
|
-
`accent`.
|
|
77
|
-
|
|
78
|
-
Controls:
|
|
79
|
-
|
|
80
|
-
- Language and theme are small popovers in the header.
|
|
81
|
-
- Popover trigger typography follows mono/meta styling.
|
|
82
|
-
- The language trigger shows a globe icon, full locale label, and chevron.
|
|
83
|
-
- The theme trigger is icon-only and supports system, light, and dark.
|
|
84
|
-
- Menu items use `menuitemradio` semantics and show a check icon for the active
|
|
85
|
-
value.
|
|
86
|
-
- Popovers close on outside click and `Escape`.
|
|
87
|
-
|
|
88
|
-
Footer:
|
|
89
|
-
|
|
90
|
-
- One-pixel top rule.
|
|
91
|
-
- Mono text at `0.75rem`.
|
|
92
|
-
- Left side shows `site.brand` and `site.description`.
|
|
93
|
-
- Right side links to `mantle`.
|
|
94
|
-
|
|
95
|
-
## Templates
|
|
96
|
-
|
|
97
|
-
Home:
|
|
98
|
-
|
|
99
|
-
- Starts with a `hero` block: mono eyebrow, large display title, muted intro,
|
|
100
|
-
and markdown body.
|
|
101
|
-
- Recent posts appear below the hero as an `entry-list`.
|
|
102
|
-
|
|
103
|
-
Post:
|
|
104
|
-
|
|
105
|
-
- Uses a narrow `article` measure.
|
|
106
|
-
- Header contains optional publish date and title.
|
|
107
|
-
- Optional cover image is bordered by `rule`.
|
|
108
|
-
- Body markdown supports headings, blockquotes, inline code, code blocks, and
|
|
109
|
-
lists.
|
|
110
|
-
- First body paragraph gets an editorial drop cap.
|
|
111
|
-
|
|
112
|
-
Post list:
|
|
113
|
-
|
|
114
|
-
- Reuses the hero grammar with an index eyebrow.
|
|
115
|
-
- Entries render as a two-column grid: fixed `7rem` date rail plus flexible
|
|
116
|
-
title/excerpt column.
|
|
117
|
-
- On narrow screens, entries collapse to one column.
|
|
118
|
-
|
|
119
|
-
Page:
|
|
120
|
-
|
|
121
|
-
- Same article shell as posts.
|
|
122
|
-
- Uses page `intro` as muted mono metadata under the title.
|
|
123
|
-
- `about` and `contact` slugs drive active nav hints.
|
|
124
|
-
|
|
125
|
-
Contact:
|
|
126
|
-
|
|
127
|
-
- Article intro and body are followed by a vertical form.
|
|
128
|
-
- Field labels are uppercase mono.
|
|
129
|
-
- Text inputs use underline-only styling; textarea uses a bordered box.
|
|
130
|
-
- Submit button uses display serif, uppercase tracking, and an inverted
|
|
131
|
-
`ink`/`paper` fill.
|
|
132
|
-
- Cloudflare Turnstile is mounted explicitly so it can re-render when the site
|
|
133
|
-
theme changes.
|
|
134
|
-
|
|
135
|
-
404:
|
|
136
|
-
|
|
137
|
-
- Centered block with a huge display-serif `404` glyph in `accent`.
|
|
138
|
-
- Copy follows the same i18n bundle pattern as the rest of the chrome.
|
|
139
|
-
|
|
140
|
-
## Interaction Model
|
|
141
|
-
|
|
142
|
-
Theme preference is a three-way choice:
|
|
143
|
-
|
|
144
|
-
- `system`: no stored value, follows `prefers-color-scheme`.
|
|
145
|
-
- `light`: explicit localStorage override.
|
|
146
|
-
- `dark`: explicit localStorage override.
|
|
147
|
-
|
|
148
|
-
A bootstrap script runs in `<head>` before paint to avoid theme flash. Runtime
|
|
149
|
-
theme changes dispatch a `mantle:theme` event. The contact page listens to that
|
|
150
|
-
event and re-renders Turnstile with the resolved light/dark value.
|
|
151
|
-
|
|
152
|
-
Language switching rewrites the leading locale segment in the current path. It
|
|
153
|
-
does not translate content itself; it navigates to the equivalent route under
|
|
154
|
-
the selected locale.
|
|
155
|
-
|
|
156
|
-
## I18n Surface
|
|
157
|
-
|
|
158
|
-
The archived design included two UI bundles:
|
|
159
|
-
|
|
160
|
-
| Locale | Label |
|
|
161
|
-
|---|---|
|
|
162
|
-
| `en` | `English` |
|
|
163
|
-
| `zh-TW` | `繁體中文` |
|
|
164
|
-
|
|
165
|
-
The bundles covered:
|
|
166
|
-
|
|
167
|
-
- Header labels: posts, about, contact.
|
|
168
|
-
- Theme labels: auto, light, dark.
|
|
169
|
-
- Language aria label.
|
|
170
|
-
- Home and post-list eyebrows.
|
|
171
|
-
- 404 title, body, and return link.
|
|
172
|
-
- Contact labels, submit states, success message, and error prefix.
|
|
173
|
-
|
|
174
|
-
Content translations were intentionally separate from UI chrome translations.
|
|
175
|
-
Posts and pages came from CMS entries; nav and form labels came from the local
|
|
176
|
-
i18n bundles.
|
|
177
|
-
|
|
178
|
-
## Icons
|
|
179
|
-
|
|
180
|
-
The icon system was deliberately tiny:
|
|
181
|
-
|
|
182
|
-
- Inline SVG strings injected by templates.
|
|
183
|
-
- Monochrome `currentColor` stroke.
|
|
184
|
-
- Default size `16`.
|
|
185
|
-
- Default stroke width `2`, with check icons at `2.5`.
|
|
186
|
-
- No runtime icon dependency until the set grows beyond roughly 20 icons.
|
|
187
|
-
|
|
188
|
-
The archived set included `sun`, `moon`, `monitor`, `globe`,
|
|
189
|
-
`chevron-down`, `check`, `menu`, and `x`.
|
|
190
|
-
|
|
191
|
-
## Reuse With The Current Theme Stack
|
|
192
|
-
|
|
193
|
-
Map the design into the maintained starter layers instead of reviving the old
|
|
194
|
-
runnable starter:
|
|
195
|
-
|
|
196
|
-
| Current layer | What to reuse |
|
|
197
|
-
|---|---|
|
|
198
|
-
| L1 tokens | Colors, font stacks, measure, gutter, base rhythm |
|
|
199
|
-
| L2 components | Popover styling, entry list, post body, drop cap, contact form |
|
|
200
|
-
| L3 slots | Header, footer, language switcher, theme switcher |
|
|
201
|
-
| L4 templates | Home, post, post list, page, contact, 404 composition |
|
|
202
|
-
|
|
203
|
-
Do not copy the old package metadata, Wrangler config, fixtures, workspace
|
|
204
|
-
dependencies, or smoke tests. Those belonged to the removed runnable starter and
|
|
205
|
-
will drift from the maintained SDK packages.
|
|
206
|
-
|
|
207
|
-
## If Reviving This Direction
|
|
208
|
-
|
|
209
|
-
Revive it as one of these:
|
|
210
|
-
|
|
211
|
-
- A documented visual preset selectable during agent seeding.
|
|
212
|
-
- A project-owned theme preset applied through `mantle:theme`.
|
|
213
|
-
- A generated design prompt that tells the provisioning agent how to style a
|
|
214
|
-
user's own brand.
|
|
215
|
-
|
|
216
|
-
Do not bring it back as a runnable starter in this SDK repository. Agents treat
|
|
217
|
-
runnable code as current product surface, so the preserved design belongs only
|
|
218
|
-
in this reference.
|
package/docs/direct-authoring.md
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
# Direct authoring
|
|
2
|
-
|
|
3
|
-
This guide moved into the handbook: [`docs/handbook/start/project-and-cli.md`](handbook/start/project-and-cli.md).
|
|
4
|
-
|
|
5
|
-
The handbook ships inside the `@aotter/mantle` package under `node_modules/@aotter/mantle/docs/handbook/` and describes the installed release.
|
|
@@ -1,269 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: A product catalog and guest orders using only builtin create and update. No Durable Object, Queue, payment provider, or ref handlers.
|
|
3
|
-
---
|
|
4
|
-
# Commerce catalog and orders
|
|
5
|
-
|
|
6
|
-
**Handler class:** builtin · **Builder:** yes · [Examples hub](./README.md). Stock authority, Queue expiry, and a verified payment callback are [Commerce inventory](./cf-primitives-commerce-inventory.md).
|
|
7
|
-
|
|
8
|
-
This example publishes products, lists them publicly, accepts guest orders with builtin `create`, and lets staff mark orders fulfilled or cancelled with builtin `update`. Every Procedure is `handler.kind: builtin`. It does not re-price lines, reserve stock, or talk to a payment provider.
|
|
9
|
-
|
|
10
|
-
## Problem
|
|
11
|
-
|
|
12
|
-
Staff publish products with a price. A guest places an order by sending customer fields, an order number, currency, a total, and line items. Staff see submitted orders and record fulfillment or cancellation. Mantle stores the catalog and the order rows. There is no inventory authority in this Manifest.
|
|
13
|
-
|
|
14
|
-
## Manifest
|
|
15
|
-
|
|
16
|
-
```yaml
|
|
17
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
18
|
-
kind: Schema
|
|
19
|
-
metadata:
|
|
20
|
-
name: products
|
|
21
|
-
spec:
|
|
22
|
-
title: Products
|
|
23
|
-
lifecycle: publishing
|
|
24
|
-
uniqueIndexes:
|
|
25
|
-
- [slug]
|
|
26
|
-
schema:
|
|
27
|
-
type: object
|
|
28
|
-
additionalProperties: false
|
|
29
|
-
required: [slug, title, priceMinor, currency]
|
|
30
|
-
properties:
|
|
31
|
-
slug: { type: string, pattern: "^[a-z0-9-]+$" }
|
|
32
|
-
title: { type: string, minLength: 1, maxLength: 160 }
|
|
33
|
-
summary: { type: string, maxLength: 500 }
|
|
34
|
-
priceMinor: { type: integer, minimum: 0, x-mcp-hint: money-minor }
|
|
35
|
-
currency: { type: string, pattern: "^[A-Z]{3}$" }
|
|
36
|
-
---
|
|
37
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
38
|
-
kind: Schema
|
|
39
|
-
metadata:
|
|
40
|
-
name: orders
|
|
41
|
-
spec:
|
|
42
|
-
title: Orders
|
|
43
|
-
description: Guest orders created and updated only by declared builtin Procedures.
|
|
44
|
-
lifecycle: operational
|
|
45
|
-
uniqueIndexes:
|
|
46
|
-
- [orderNumber]
|
|
47
|
-
indexes:
|
|
48
|
-
- [orderStatus]
|
|
49
|
-
searchableFields: [orderNumber, customerName, customerEmail]
|
|
50
|
-
schema:
|
|
51
|
-
type: object
|
|
52
|
-
additionalProperties: false
|
|
53
|
-
required: [orderNumber, orderStatus, currency, totalMinor, customerName, customerEmail, shippingAddress, items, placedAt]
|
|
54
|
-
properties:
|
|
55
|
-
orderNumber: { type: string, minLength: 1, maxLength: 40 }
|
|
56
|
-
orderStatus: { type: string, enum: [submitted, fulfilled, cancelled] }
|
|
57
|
-
currency: { type: string, pattern: "^[A-Z]{3}$" }
|
|
58
|
-
totalMinor: { type: integer, minimum: 0, x-mcp-hint: money-minor }
|
|
59
|
-
customerName: { type: string, minLength: 1, maxLength: 120 }
|
|
60
|
-
customerEmail: { type: string, format: email }
|
|
61
|
-
shippingAddress: { type: string, minLength: 1, maxLength: 500 }
|
|
62
|
-
items:
|
|
63
|
-
type: array
|
|
64
|
-
minItems: 1
|
|
65
|
-
maxItems: 20
|
|
66
|
-
items:
|
|
67
|
-
type: object
|
|
68
|
-
additionalProperties: false
|
|
69
|
-
required: [productSlug, title, quantity, unitPriceMinor, lineTotalMinor]
|
|
70
|
-
properties:
|
|
71
|
-
productSlug: { type: string, pattern: "^[a-z0-9-]+$" }
|
|
72
|
-
title: { type: string }
|
|
73
|
-
quantity: { type: integer, minimum: 1, maximum: 99 }
|
|
74
|
-
unitPriceMinor: { type: integer, minimum: 0 }
|
|
75
|
-
lineTotalMinor: { type: integer, minimum: 0 }
|
|
76
|
-
trackingNumber: { type: string, maxLength: 120 }
|
|
77
|
-
cancelReason: { type: string, maxLength: 500 }
|
|
78
|
-
placedAt: { type: number, x-mcp-hint: timestamp-ms, x-mantle-bind: now }
|
|
79
|
-
---
|
|
80
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
81
|
-
kind: View
|
|
82
|
-
metadata:
|
|
83
|
-
name: public-products
|
|
84
|
-
spec:
|
|
85
|
-
title: Public products
|
|
86
|
-
surface: public
|
|
87
|
-
from: products
|
|
88
|
-
fields: [id, slug, title, summary, priceMinor, currency, updatedAt]
|
|
89
|
-
filter:
|
|
90
|
-
eq: { field: status, value: published }
|
|
91
|
-
orderBy:
|
|
92
|
-
- { field: slug, direction: asc }
|
|
93
|
-
limit: 100
|
|
94
|
-
---
|
|
95
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
96
|
-
kind: View
|
|
97
|
-
metadata:
|
|
98
|
-
name: submitted-orders
|
|
99
|
-
spec:
|
|
100
|
-
title: Submitted orders
|
|
101
|
-
surface: staff
|
|
102
|
-
from: orders
|
|
103
|
-
fields: [id, version, orderNumber, orderStatus, customerName, customerEmail, shippingAddress, totalMinor, currency, placedAt]
|
|
104
|
-
filter:
|
|
105
|
-
eq: { field: orderStatus, value: submitted }
|
|
106
|
-
orderBy:
|
|
107
|
-
- { field: placedAt, direction: asc }
|
|
108
|
-
limit: 100
|
|
109
|
-
---
|
|
110
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
111
|
-
kind: Procedure
|
|
112
|
-
metadata:
|
|
113
|
-
name: place-order
|
|
114
|
-
spec:
|
|
115
|
-
title: Place order
|
|
116
|
-
input:
|
|
117
|
-
type: object
|
|
118
|
-
additionalProperties: false
|
|
119
|
-
required: [orderNumber, orderStatus, currency, totalMinor, customerName, customerEmail, shippingAddress, items]
|
|
120
|
-
properties:
|
|
121
|
-
orderNumber: { type: string, minLength: 1, maxLength: 40 }
|
|
122
|
-
orderStatus: { type: string, enum: [submitted] }
|
|
123
|
-
currency: { type: string, pattern: "^[A-Z]{3}$" }
|
|
124
|
-
totalMinor: { type: integer, minimum: 0, x-mcp-hint: money-minor }
|
|
125
|
-
customerName: { type: string, minLength: 1, maxLength: 120 }
|
|
126
|
-
customerEmail: { type: string, format: email }
|
|
127
|
-
shippingAddress: { type: string, minLength: 1, maxLength: 500 }
|
|
128
|
-
items:
|
|
129
|
-
type: array
|
|
130
|
-
minItems: 1
|
|
131
|
-
maxItems: 20
|
|
132
|
-
items:
|
|
133
|
-
type: object
|
|
134
|
-
additionalProperties: false
|
|
135
|
-
required: [productSlug, title, quantity, unitPriceMinor, lineTotalMinor]
|
|
136
|
-
properties:
|
|
137
|
-
productSlug: { type: string, pattern: "^[a-z0-9-]+$" }
|
|
138
|
-
title: { type: string }
|
|
139
|
-
quantity: { type: integer, minimum: 1, maximum: 99 }
|
|
140
|
-
unitPriceMinor: { type: integer, minimum: 0 }
|
|
141
|
-
lineTotalMinor: { type: integer, minimum: 0 }
|
|
142
|
-
output: { type: object }
|
|
143
|
-
handler: { kind: builtin, op: create, schema: orders }
|
|
144
|
-
---
|
|
145
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
146
|
-
kind: Procedure
|
|
147
|
-
metadata:
|
|
148
|
-
name: review-order
|
|
149
|
-
spec:
|
|
150
|
-
title: Review order
|
|
151
|
-
requires:
|
|
152
|
-
auth:
|
|
153
|
-
all:
|
|
154
|
-
- { "ctx.staff": [owner, editor] }
|
|
155
|
-
input:
|
|
156
|
-
type: object
|
|
157
|
-
additionalProperties: false
|
|
158
|
-
required: [id, expectedVersion, orderStatus]
|
|
159
|
-
properties:
|
|
160
|
-
id: { type: string }
|
|
161
|
-
expectedVersion: { type: number, minimum: 1 }
|
|
162
|
-
orderStatus: { type: string, enum: [fulfilled, cancelled] }
|
|
163
|
-
trackingNumber: { type: string, maxLength: 120 }
|
|
164
|
-
cancelReason: { type: string, maxLength: 500 }
|
|
165
|
-
output: { type: object }
|
|
166
|
-
handler: { kind: builtin, op: update, schema: orders }
|
|
167
|
-
---
|
|
168
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
169
|
-
kind: Trigger
|
|
170
|
-
metadata:
|
|
171
|
-
name: place-order-http
|
|
172
|
-
spec:
|
|
173
|
-
source: { kind: http, method: POST, path: /api/commerce/orders }
|
|
174
|
-
target: { procedure: place-order }
|
|
175
|
-
---
|
|
176
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
177
|
-
kind: Trigger
|
|
178
|
-
metadata:
|
|
179
|
-
name: place-order-mcp
|
|
180
|
-
spec:
|
|
181
|
-
source: { kind: mcp, surface: public }
|
|
182
|
-
target: { procedure: place-order }
|
|
183
|
-
---
|
|
184
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
185
|
-
kind: Trigger
|
|
186
|
-
metadata:
|
|
187
|
-
name: review-order-mcp
|
|
188
|
-
spec:
|
|
189
|
-
source: { kind: mcp, surface: staff }
|
|
190
|
-
target: { procedure: review-order }
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
Points worth noticing:
|
|
194
|
-
|
|
195
|
-
- `products` is a publishing Schema. Staff draft and publish through Admin or Staff MCP generic lifecycle tools. The public View filters `status: published`.
|
|
196
|
-
- `orders` is operational. `place-order` is builtin `create`; `review-order` is builtin `update` with `id` and `expectedVersion` required. `placedAt` is server-stamped.
|
|
197
|
-
- `orderStatus` on create is narrowed to `submitted`, so this Procedure cannot insert a fulfilled row. Staff `review-order` can only move a row to `fulfilled` or `cancelled`.
|
|
198
|
-
- Line titles, unit prices and `totalMinor` are caller-supplied. This Manifest does not re-price from `products` and does not reserve stock.
|
|
199
|
-
- `review-order` does not set `x-mantle-ref` on `id`. Drive reviews from `submitted-orders` (which exposes `id` and `version`) through Staff MCP or Admin operations. A lone `[orderNumber]` unique index would otherwise make Admin prefill `id` with the order number; see [Procurement approvals](./builtin-procurement.md).
|
|
200
|
-
|
|
201
|
-
## Worker and handlers
|
|
202
|
-
|
|
203
|
-
None. Both Procedures are builtin:
|
|
204
|
-
|
|
205
|
-
```ts
|
|
206
|
-
import { createMantleWorker } from "@aotter/mantle/cloudflare";
|
|
207
|
-
import { plan } from "../.mantle/generated/mantle.js";
|
|
208
|
-
|
|
209
|
-
export default createMantleWorker({ plan });
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
Sign-in for staff review is the conventional Worker's Auth; see [Authentication](../handbook/cloudflare/authentication.md). The [local Admin OTP host](./host-local-admin-otp/README.md) is the opt-in Dev UI path.
|
|
213
|
-
|
|
214
|
-
## Try it
|
|
215
|
-
|
|
216
|
-
Public catalog:
|
|
217
|
-
|
|
218
|
-
```sh
|
|
219
|
-
curl -sS 'http://localhost:8787/api/views/public-products?show=20'
|
|
220
|
-
```
|
|
221
|
-
|
|
222
|
-
Place an order (the body is stored as sent; the server does not re-price):
|
|
223
|
-
|
|
224
|
-
```sh
|
|
225
|
-
curl -sS -X POST http://localhost:8787/api/commerce/orders \
|
|
226
|
-
-H 'content-type: application/json' \
|
|
227
|
-
-d '{"orderNumber":"MNT-20260919-1","orderStatus":"submitted","currency":"TWD","totalMinor":2400,"customerName":"Ada","customerEmail":"ada@example.test","shippingAddress":"1 Shell Lane","items":[{"productSlug":"notebook","title":"Notebook","quantity":2,"unitPriceMinor":1200,"lineTotalMinor":2400}]}'
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
The response is `{ ok: true, data: <EntryRow> }` with `collection: "orders"` and `status: "published"`. A duplicate `orderNumber` is HTTP 409 `CONFLICT`. `orderStatus` other than `submitted` is HTTP 400 `INPUT_VALIDATION_FAILED`.
|
|
231
|
-
|
|
232
|
-
Staff, on `/mcp/staff`, read `query_view_submitted_orders` then:
|
|
233
|
-
|
|
234
|
-
```json
|
|
235
|
-
{
|
|
236
|
-
"jsonrpc": "2.0", "id": 2, "method": "tools/call",
|
|
237
|
-
"params": {
|
|
238
|
-
"name": "review_order",
|
|
239
|
-
"arguments": { "id": "ord_01j...", "expectedVersion": 1, "orderStatus": "fulfilled", "trackingNumber": "TEST-1" }
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
```
|
|
243
|
-
|
|
244
|
-
A second reviewer replaying `expectedVersion: 1` receives `CONFLICT`. A contributor-role session is denied with `AUTH_DENIED`.
|
|
245
|
-
|
|
246
|
-
| Surface | Tool | Origin |
|
|
247
|
-
|---|---|---|
|
|
248
|
-
| `/mcp` | `query_view_public_products` | public View |
|
|
249
|
-
| `/mcp` | `place_order` | `place-order-mcp` Trigger |
|
|
250
|
-
| `/mcp/staff` | `query_view_submitted_orders` | staff View |
|
|
251
|
-
| `/mcp/staff` | `review_order` | staff MCP Trigger |
|
|
252
|
-
| `/mcp/staff` | `create_draft_products`, `update_draft_products`, `request_publish`, ... | publishing Schema `products` |
|
|
253
|
-
| `/mcp/staff` | `create_record_orders`, `update_record_orders` | operational Schema `orders` |
|
|
254
|
-
|
|
255
|
-
## What this deliberately leaves out
|
|
256
|
-
|
|
257
|
-
- **Stock authority.** There is no `inventory` Schema and no Durable Object. Two orders for the last unit both succeed. That story is [Commerce inventory](./cf-primitives-commerce-inventory.md).
|
|
258
|
-
- **Re-pricing.** `totalMinor` and line totals are whatever the caller sent.
|
|
259
|
-
- **Payments.** `submitted` is not `pending_payment`. There is no provider callback and no `pay-order` Procedure.
|
|
260
|
-
- **Queue expiry and cron.** Unpaid reservation release does not apply; there is no reservation.
|
|
261
|
-
- **Picking-list SQL View.** `submitted-orders` is a declared View over `orders`. The `json_each` picking list lives on the cf-primitives page.
|
|
262
|
-
|
|
263
|
-
Related: [Publication](./builtin-publication.md) for localized product copy; [Procurement approvals](./builtin-procurement.md) for `ctx.user`-owned rows and OCC updates.
|
|
264
|
-
|
|
265
|
-
## Source
|
|
266
|
-
|
|
267
|
-
- [Commerce inventory](./cf-primitives-commerce-inventory.md) — DO stock, Queue expiry, payment callback
|
|
268
|
-
- [Schema](../handbook/reference/schema.md), [Procedure](../handbook/reference/procedure.md), and [View](../handbook/reference/view.md) references — publishing vs operational, builtin `create`/`update`
|
|
269
|
-
- [`host-local-admin-otp`](./host-local-admin-otp/README.md) — opt-in Admin host for publishing products
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: A public intake form that creates operational request rows with a builtin handler. No Turnstile or email ref hooks.
|
|
3
|
-
---
|
|
4
|
-
# Intake form
|
|
5
|
-
|
|
6
|
-
**Handler class:** builtin · **Builder:** yes · [Examples hub](./README.md). Turnstile verification and staff email are [Intake Turnstile and email hooks](./cf-primitives-intake-hooks.md).
|
|
7
|
-
|
|
8
|
-
This example collects a public request and lists recent rows for staff. Every Procedure is `handler.kind: builtin`. Read it if you need any form that anonymous visitors submit and you are not wiring bot checks or mailers into the Manifest.
|
|
9
|
-
|
|
10
|
-
## Problem
|
|
11
|
-
|
|
12
|
-
Visitors submit a name, an email address and a message. Staff read recent submissions in Admin, over the staff View REST route, or through Staff MCP. Submissions are live records, not authored content, so the Schema is `operational`.
|
|
13
|
-
|
|
14
|
-
## Manifest
|
|
15
|
-
|
|
16
|
-
```yaml
|
|
17
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
18
|
-
kind: Schema
|
|
19
|
-
metadata:
|
|
20
|
-
name: requests
|
|
21
|
-
spec:
|
|
22
|
-
title: Requests
|
|
23
|
-
description: Requests submitted through the public intake flow.
|
|
24
|
-
lifecycle: operational
|
|
25
|
-
schema:
|
|
26
|
-
type: object
|
|
27
|
-
additionalProperties: false
|
|
28
|
-
required: [name, email, message]
|
|
29
|
-
properties:
|
|
30
|
-
name: { type: string, minLength: 1, maxLength: 120 }
|
|
31
|
-
email: { type: string, format: email }
|
|
32
|
-
message: { type: string, minLength: 1, maxLength: 2000 }
|
|
33
|
-
submittedAt: { type: number, x-mcp-hint: timestamp-ms, x-mantle-bind: now }
|
|
34
|
-
---
|
|
35
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
36
|
-
kind: View
|
|
37
|
-
metadata:
|
|
38
|
-
name: recent-requests
|
|
39
|
-
spec:
|
|
40
|
-
title: Recent requests
|
|
41
|
-
surface: staff
|
|
42
|
-
from: requests
|
|
43
|
-
fields: [id, name, email, message, submittedAt]
|
|
44
|
-
orderBy:
|
|
45
|
-
- { field: submittedAt, direction: desc }
|
|
46
|
-
limit: 50
|
|
47
|
-
---
|
|
48
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
49
|
-
kind: Procedure
|
|
50
|
-
metadata:
|
|
51
|
-
name: submit-request
|
|
52
|
-
spec:
|
|
53
|
-
title: Submit request
|
|
54
|
-
description: Create a new public request.
|
|
55
|
-
input:
|
|
56
|
-
type: object
|
|
57
|
-
additionalProperties: false
|
|
58
|
-
required: [name, email, message]
|
|
59
|
-
properties:
|
|
60
|
-
name: { type: string, minLength: 1, maxLength: 120 }
|
|
61
|
-
email: { type: string, format: email }
|
|
62
|
-
message: { type: string, minLength: 1, maxLength: 2000 }
|
|
63
|
-
output: { type: object }
|
|
64
|
-
handler: { kind: builtin, op: create, schema: requests }
|
|
65
|
-
---
|
|
66
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
67
|
-
kind: Trigger
|
|
68
|
-
metadata:
|
|
69
|
-
name: submit-request-http
|
|
70
|
-
spec:
|
|
71
|
-
source: { kind: http, method: POST, path: /api/requests }
|
|
72
|
-
target: { procedure: submit-request }
|
|
73
|
-
---
|
|
74
|
-
apiVersion: cms.mantle.aotter.net/v1
|
|
75
|
-
kind: Trigger
|
|
76
|
-
metadata:
|
|
77
|
-
name: submit-request-mcp
|
|
78
|
-
spec:
|
|
79
|
-
source: { kind: mcp, surface: public }
|
|
80
|
-
target: { procedure: submit-request }
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
`submittedAt` is stamped by the server (`x-mantle-bind: now`); a caller-supplied value is ignored. It lives in `data` next to the native `createdAt` column so the timestamp travels with the record through MCP output and exports; data properties may not reuse the native column names. The builtin `create` projects `input ∩ Schema.properties`.
|
|
84
|
-
|
|
85
|
-
## Worker and handlers
|
|
86
|
-
|
|
87
|
-
None are required. The Manifest above runs on the minimal Worker:
|
|
88
|
-
|
|
89
|
-
```ts
|
|
90
|
-
import { createMantleWorker } from "@aotter/mantle/cloudflare";
|
|
91
|
-
import { plan } from "../.mantle/generated/mantle.js";
|
|
92
|
-
|
|
93
|
-
export default createMantleWorker({ plan });
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
## Try it
|
|
97
|
-
|
|
98
|
-
```sh
|
|
99
|
-
curl -sS -X POST http://localhost:8787/api/requests \
|
|
100
|
-
-H 'content-type: application/json' \
|
|
101
|
-
-d '{"name":"Ada","email":"ada@example.test","message":"Please call me back."}'
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
```json
|
|
105
|
-
{
|
|
106
|
-
"ok": true,
|
|
107
|
-
"data": {
|
|
108
|
-
"id": "req_01j...",
|
|
109
|
-
"collection": "requests",
|
|
110
|
-
"status": "published",
|
|
111
|
-
"version": 1,
|
|
112
|
-
"data": { "name": "Ada", "email": "ada@example.test", "message": "Please call me back.", "submittedAt": 1788879363492 },
|
|
113
|
-
"authorId": null,
|
|
114
|
-
"createdAt": 1788879363492,
|
|
115
|
-
"updatedAt": 1788879363492
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
The builtin `create` returns the `EntryRow`; `status` is `published` immediately because the Schema is operational. A missing `name` is HTTP 400 `INPUT_VALIDATION_FAILED`.
|
|
121
|
-
|
|
122
|
-
Staff read the queue at `GET /admin/api/views/recent-requests?page=1&show=50` with a staff session; the envelope is `{ ok, data: { rows, page, show, hasMore } }`.
|
|
123
|
-
|
|
124
|
-
MCP tools:
|
|
125
|
-
|
|
126
|
-
| Surface | Tool | Origin |
|
|
127
|
-
|---|---|---|
|
|
128
|
-
| `/mcp` | `submit_request` | `submit-request-mcp` Trigger |
|
|
129
|
-
| `/mcp/staff` | `query_view_recent_requests` | `recent-requests` View |
|
|
130
|
-
| `/mcp/staff` | `create_record_requests`, `update_record_requests` | operational Schema `requests` |
|
|
131
|
-
|
|
132
|
-
## What this deliberately leaves out
|
|
133
|
-
|
|
134
|
-
- **Bot check and notification.** Those are `ref` lifecycle hooks in [Intake Turnstile and email hooks](./cf-primitives-intake-hooks.md). They are not in this Manifest; Builder must not ingest that page.
|
|
135
|
-
- **Deduplication.** Two identical submissions create two rows.
|
|
136
|
-
- **Rate limiting.** The adapter applies its own request limits to Auth and Admin routes, not a per-form quota.
|
|
137
|
-
|
|
138
|
-
Related: [Reservation requests](./builtin-reservation.md) uses the same builtin-create shape; [Procurement approvals](./builtin-procurement.md) adds member and staff roles.
|
|
139
|
-
|
|
140
|
-
## Source
|
|
141
|
-
|
|
142
|
-
- [Procedure reference](../handbook/reference/procedure.md) — builtin `create`
|
|
143
|
-
- [Intake Turnstile and email hooks](./cf-primitives-intake-hooks.md) — Turnstile and email `ref` hooks on the same Schema
|