@astrale-os/sdk 0.4.19 → 0.5.0-beta.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 +5 -3
- package/dist/auth/exchange.d.ts +11 -0
- package/dist/auth/exchange.d.ts.map +1 -0
- package/dist/auth/exchange.js +8 -0
- package/dist/auth/exchange.js.map +1 -0
- package/dist/auth/index.d.ts +4 -15
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +3 -10
- package/dist/auth/index.js.map +1 -1
- package/dist/capability/client.d.ts +25 -0
- package/dist/capability/client.d.ts.map +1 -0
- package/dist/capability/client.js +147 -0
- package/dist/capability/client.js.map +1 -0
- package/dist/capability/contract.d.ts +70 -0
- package/dist/capability/contract.d.ts.map +1 -0
- package/dist/capability/contract.js +3 -0
- package/dist/capability/contract.js.map +1 -0
- package/dist/capability/define.d.ts +14 -0
- package/dist/capability/define.d.ts.map +1 -0
- package/dist/capability/define.js +145 -0
- package/dist/capability/define.js.map +1 -0
- package/dist/capability/index.d.ts +3 -0
- package/dist/capability/index.d.ts.map +1 -0
- package/dist/capability/index.js +2 -0
- package/dist/capability/index.js.map +1 -0
- package/dist/cli/arguments.d.ts +21 -0
- package/dist/cli/arguments.d.ts.map +1 -0
- package/dist/cli/arguments.js +220 -0
- package/dist/cli/arguments.js.map +1 -0
- package/dist/cli/dotenv.d.ts +1 -4
- package/dist/cli/dotenv.d.ts.map +1 -1
- package/dist/cli/dotenv.js +6 -15
- package/dist/cli/dotenv.js.map +1 -1
- package/dist/cli/index.d.ts +4 -5
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +4 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/run.d.ts +4 -79
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +47 -326
- package/dist/cli/run.js.map +1 -1
- package/dist/deployment/artifact/bindings.d.ts +7 -0
- package/dist/deployment/artifact/bindings.d.ts.map +1 -0
- package/dist/deployment/artifact/bindings.js +44 -0
- package/dist/deployment/artifact/bindings.js.map +1 -0
- package/dist/deployment/artifact/deployment.d.ts +35 -0
- package/dist/deployment/artifact/deployment.d.ts.map +1 -0
- package/dist/deployment/artifact/deployment.js +91 -0
- package/dist/deployment/artifact/deployment.js.map +1 -0
- package/dist/deployment/artifact/index.d.ts +5 -0
- package/dist/deployment/artifact/index.d.ts.map +1 -0
- package/dist/deployment/artifact/index.js +4 -0
- package/dist/deployment/artifact/index.js.map +1 -0
- package/dist/deployment/check/check.d.ts +8 -0
- package/dist/deployment/check/check.d.ts.map +1 -0
- package/dist/deployment/check/check.js +94 -0
- package/dist/deployment/check/check.js.map +1 -0
- package/dist/deployment/check/contract.d.ts +29 -0
- package/dist/deployment/check/contract.d.ts.map +1 -0
- package/dist/deployment/check/contract.js +2 -0
- package/dist/deployment/check/contract.js.map +1 -0
- package/dist/deployment/check/index.d.ts +3 -0
- package/dist/deployment/check/index.d.ts.map +1 -0
- package/dist/deployment/check/index.js +2 -0
- package/dist/deployment/check/index.js.map +1 -0
- package/dist/deployment/index.d.ts +7 -0
- package/dist/deployment/index.d.ts.map +1 -0
- package/dist/deployment/index.js +4 -0
- package/dist/deployment/index.js.map +1 -0
- package/dist/deployment/provider/adapter.d.ts +56 -0
- package/dist/deployment/provider/adapter.d.ts.map +1 -0
- package/dist/deployment/provider/adapter.js +84 -0
- package/dist/deployment/provider/adapter.js.map +1 -0
- package/dist/deployment/provider/config.d.ts +10 -0
- package/dist/deployment/provider/config.d.ts.map +1 -0
- package/dist/deployment/provider/config.js +8 -0
- package/dist/deployment/provider/config.js.map +1 -0
- package/dist/deployment/provider/index.d.ts +5 -0
- package/dist/deployment/provider/index.d.ts.map +1 -0
- package/dist/deployment/provider/index.js +3 -0
- package/dist/deployment/provider/index.js.map +1 -0
- package/dist/domain/app.d.ts +34 -0
- package/dist/domain/app.d.ts.map +1 -0
- package/dist/domain/app.js +2 -0
- package/dist/domain/app.js.map +1 -0
- package/dist/domain/context.d.ts +68 -0
- package/dist/domain/context.d.ts.map +1 -0
- package/dist/domain/context.js +2 -0
- package/dist/domain/context.js.map +1 -0
- package/dist/domain/define.d.ts +99 -65
- package/dist/domain/define.d.ts.map +1 -1
- package/dist/domain/define.js +78 -60
- package/dist/domain/define.js.map +1 -1
- package/dist/domain/handlers.d.ts +53 -0
- package/dist/domain/handlers.d.ts.map +1 -0
- package/dist/domain/handlers.js +88 -0
- package/dist/domain/handlers.js.map +1 -0
- package/dist/domain/implement.d.ts +5 -0
- package/dist/domain/implement.d.ts.map +1 -0
- package/dist/domain/implement.js +23 -0
- package/dist/domain/implement.js.map +1 -0
- package/dist/domain/index.d.ts +13 -4
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +7 -3
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/requirements.d.ts +26 -0
- package/dist/domain/requirements.d.ts.map +1 -0
- package/dist/domain/requirements.js +98 -0
- package/dist/domain/requirements.js.map +1 -0
- package/dist/graph/class/index.d.ts +3 -0
- package/dist/graph/class/index.d.ts.map +1 -0
- package/dist/graph/class/index.js +3 -0
- package/dist/graph/class/index.js.map +1 -0
- package/dist/graph/edge/index.d.ts +3 -0
- package/dist/graph/edge/index.d.ts.map +1 -0
- package/dist/graph/edge/index.js +3 -0
- package/dist/graph/edge/index.js.map +1 -0
- package/dist/graph/index.d.ts +10 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +9 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/graph/model/index.d.ts +3 -0
- package/dist/graph/model/index.d.ts.map +1 -0
- package/dist/graph/model/index.js +3 -0
- package/dist/graph/model/index.js.map +1 -0
- package/dist/graph/node/index.d.ts +3 -0
- package/dist/graph/node/index.d.ts.map +1 -0
- package/dist/graph/node/index.js +3 -0
- package/dist/graph/node/index.js.map +1 -0
- package/dist/graph/path/index.d.ts +3 -0
- package/dist/graph/path/index.d.ts.map +1 -0
- package/dist/graph/path/index.js +3 -0
- package/dist/graph/path/index.js.map +1 -0
- package/dist/graph/properties/index.d.ts +3 -0
- package/dist/graph/properties/index.d.ts.map +1 -0
- package/dist/graph/properties/index.js +3 -0
- package/dist/graph/properties/index.js.map +1 -0
- package/dist/index.d.ts +20 -27
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -47
- package/dist/index.js.map +1 -1
- package/dist/invocation/handler.d.ts +51 -0
- package/dist/invocation/handler.d.ts.map +1 -0
- package/dist/invocation/handler.js +289 -0
- package/dist/invocation/handler.js.map +1 -0
- package/dist/invocation/index.d.ts +3 -0
- package/dist/invocation/index.d.ts.map +1 -0
- package/dist/invocation/index.js +2 -0
- package/dist/invocation/index.js.map +1 -0
- package/dist/invocation/receiver.d.ts +5 -0
- package/dist/invocation/receiver.d.ts.map +1 -0
- package/dist/invocation/receiver.js +70 -0
- package/dist/invocation/receiver.js.map +1 -0
- package/dist/invocation/result.d.ts +5 -0
- package/dist/invocation/result.d.ts.map +1 -0
- package/dist/invocation/result.js +146 -0
- package/dist/invocation/result.js.map +1 -0
- package/dist/invocation/selection.d.ts +21 -0
- package/dist/invocation/selection.d.ts.map +1 -0
- package/dist/invocation/selection.js +107 -0
- package/dist/invocation/selection.js.map +1 -0
- package/dist/linter/adapters/typescript/discover.d.ts +4 -0
- package/dist/linter/adapters/typescript/discover.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/discover.js +412 -0
- package/dist/linter/adapters/typescript/discover.js.map +1 -0
- package/dist/linter/adapters/typescript/evidence-admission.d.ts +5 -0
- package/dist/linter/adapters/typescript/evidence-admission.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/evidence-admission.js +22 -0
- package/dist/linter/adapters/typescript/evidence-admission.js.map +1 -0
- package/dist/linter/adapters/typescript/imports.d.ts +7 -0
- package/dist/linter/adapters/typescript/imports.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/imports.js +171 -0
- package/dist/linter/adapters/typescript/imports.js.map +1 -0
- package/dist/linter/adapters/typescript/index.d.ts +48 -0
- package/dist/linter/adapters/typescript/index.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/index.js +8 -0
- package/dist/linter/adapters/typescript/index.js.map +1 -0
- package/dist/linter/adapters/typescript/query-observation.d.ts +4 -0
- package/dist/linter/adapters/typescript/query-observation.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/query-observation.js +172 -0
- package/dist/linter/adapters/typescript/query-observation.js.map +1 -0
- package/dist/linter/adapters/typescript/suppression-directives.d.ts +5 -0
- package/dist/linter/adapters/typescript/suppression-directives.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/suppression-directives.js +85 -0
- package/dist/linter/adapters/typescript/suppression-directives.js.map +1 -0
- package/dist/linter/adapters/typescript/syntax.d.ts +39 -0
- package/dist/linter/adapters/typescript/syntax.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/syntax.js +183 -0
- package/dist/linter/adapters/typescript/syntax.js.map +1 -0
- package/dist/linter/adapters/typescript/type-universe.d.ts +2 -0
- package/dist/linter/adapters/typescript/type-universe.d.ts.map +1 -0
- package/dist/linter/adapters/typescript/type-universe.js +265 -0
- package/dist/linter/adapters/typescript/type-universe.js.map +1 -0
- package/dist/linter/catalog/compile.d.ts +3 -0
- package/dist/linter/catalog/compile.d.ts.map +1 -0
- package/dist/linter/catalog/compile.js +111 -0
- package/dist/linter/catalog/compile.js.map +1 -0
- package/dist/linter/catalog/index.d.ts +19 -0
- package/dist/linter/catalog/index.d.ts.map +1 -0
- package/dist/linter/catalog/index.js +3 -0
- package/dist/linter/catalog/index.js.map +1 -0
- package/dist/linter/catalog/revision.d.ts +7 -0
- package/dist/linter/catalog/revision.d.ts.map +1 -0
- package/dist/linter/catalog/revision.js +13 -0
- package/dist/linter/catalog/revision.js.map +1 -0
- package/dist/linter/diagnostics/error.d.ts +10 -0
- package/dist/linter/diagnostics/error.d.ts.map +1 -0
- package/dist/linter/diagnostics/error.js +10 -0
- package/dist/linter/diagnostics/error.js.map +1 -0
- package/dist/linter/diagnostics/index.d.ts +29 -0
- package/dist/linter/diagnostics/index.d.ts.map +1 -0
- package/dist/linter/diagnostics/index.js +3 -0
- package/dist/linter/diagnostics/index.js.map +1 -0
- package/dist/linter/diagnostics/sort.d.ts +3 -0
- package/dist/linter/diagnostics/sort.d.ts.map +1 -0
- package/dist/linter/diagnostics/sort.js +27 -0
- package/dist/linter/diagnostics/sort.js.map +1 -0
- package/dist/linter/evaluation/binding/bind.d.ts +5 -0
- package/dist/linter/evaluation/binding/bind.d.ts.map +1 -0
- package/dist/linter/evaluation/binding/bind.js +356 -0
- package/dist/linter/evaluation/binding/bind.js.map +1 -0
- package/dist/linter/evaluation/binding/diagnostic.d.ts +5 -0
- package/dist/linter/evaluation/binding/diagnostic.d.ts.map +1 -0
- package/dist/linter/evaluation/binding/diagnostic.js +17 -0
- package/dist/linter/evaluation/binding/diagnostic.js.map +1 -0
- package/dist/linter/evaluation/binding/index.d.ts +2 -0
- package/dist/linter/evaluation/binding/index.d.ts.map +1 -0
- package/dist/linter/evaluation/binding/index.js +2 -0
- package/dist/linter/evaluation/binding/index.js.map +1 -0
- package/dist/linter/evaluation/contract/availability.d.ts +28 -0
- package/dist/linter/evaluation/contract/availability.d.ts.map +1 -0
- package/dist/linter/evaluation/contract/availability.js +2 -0
- package/dist/linter/evaluation/contract/availability.js.map +1 -0
- package/dist/linter/evaluation/contract/decision.d.ts +26 -0
- package/dist/linter/evaluation/contract/decision.d.ts.map +1 -0
- package/dist/linter/evaluation/contract/decision.js +2 -0
- package/dist/linter/evaluation/contract/decision.js.map +1 -0
- package/dist/linter/evaluation/contract/evidence.d.ts +12 -0
- package/dist/linter/evaluation/contract/evidence.d.ts.map +1 -0
- package/dist/linter/evaluation/contract/evidence.js +2 -0
- package/dist/linter/evaluation/contract/evidence.js.map +1 -0
- package/dist/linter/evaluation/contract/implementation.d.ts +22 -0
- package/dist/linter/evaluation/contract/implementation.d.ts.map +1 -0
- package/dist/linter/evaluation/contract/implementation.js +2 -0
- package/dist/linter/evaluation/contract/implementation.js.map +1 -0
- package/dist/linter/evaluation/contract/index.d.ts +5 -0
- package/dist/linter/evaluation/contract/index.d.ts.map +1 -0
- package/dist/linter/evaluation/contract/index.js +2 -0
- package/dist/linter/evaluation/contract/index.js.map +1 -0
- package/dist/linter/evaluation/index.d.ts +3 -0
- package/dist/linter/evaluation/index.d.ts.map +1 -0
- package/dist/linter/evaluation/index.js +2 -0
- package/dist/linter/evaluation/index.js.map +1 -0
- package/dist/linter/implementations/source/capabilities.d.ts +3 -0
- package/dist/linter/implementations/source/capabilities.d.ts.map +1 -0
- package/dist/linter/implementations/source/capabilities.js +41 -0
- package/dist/linter/implementations/source/capabilities.js.map +1 -0
- package/dist/linter/implementations/source/contract.d.ts +17 -0
- package/dist/linter/implementations/source/contract.d.ts.map +1 -0
- package/dist/linter/implementations/source/contract.js +53 -0
- package/dist/linter/implementations/source/contract.js.map +1 -0
- package/dist/linter/implementations/source/functions.d.ts +3 -0
- package/dist/linter/implementations/source/functions.d.ts.map +1 -0
- package/dist/linter/implementations/source/functions.js +102 -0
- package/dist/linter/implementations/source/functions.js.map +1 -0
- package/dist/linter/implementations/source/global.d.ts +3 -0
- package/dist/linter/implementations/source/global.d.ts.map +1 -0
- package/dist/linter/implementations/source/global.js +812 -0
- package/dist/linter/implementations/source/global.js.map +1 -0
- package/dist/linter/implementations/source/index.d.ts +4 -0
- package/dist/linter/implementations/source/index.d.ts.map +1 -0
- package/dist/linter/implementations/source/index.js +4 -0
- package/dist/linter/implementations/source/index.js.map +1 -0
- package/dist/linter/implementations/source/integrations.d.ts +3 -0
- package/dist/linter/implementations/source/integrations.d.ts.map +1 -0
- package/dist/linter/implementations/source/integrations.js +186 -0
- package/dist/linter/implementations/source/integrations.js.map +1 -0
- package/dist/linter/implementations/source/migrations.d.ts +3 -0
- package/dist/linter/implementations/source/migrations.d.ts.map +1 -0
- package/dist/linter/implementations/source/migrations.js +115 -0
- package/dist/linter/implementations/source/migrations.js.map +1 -0
- package/dist/linter/implementations/source/mutations.d.ts +3 -0
- package/dist/linter/implementations/source/mutations.d.ts.map +1 -0
- package/dist/linter/implementations/source/mutations.js +185 -0
- package/dist/linter/implementations/source/mutations.js.map +1 -0
- package/dist/linter/implementations/source/queries.d.ts +3 -0
- package/dist/linter/implementations/source/queries.d.ts.map +1 -0
- package/dist/linter/implementations/source/queries.js +1000 -0
- package/dist/linter/implementations/source/queries.js.map +1 -0
- package/dist/linter/implementations/source/rules.d.ts +3 -0
- package/dist/linter/implementations/source/rules.d.ts.map +1 -0
- package/dist/linter/implementations/source/rules.js +141 -0
- package/dist/linter/implementations/source/rules.js.map +1 -0
- package/dist/linter/implementations/source/schema.d.ts +3 -0
- package/dist/linter/implementations/source/schema.d.ts.map +1 -0
- package/dist/linter/implementations/source/schema.js +105 -0
- package/dist/linter/implementations/source/schema.js.map +1 -0
- package/dist/linter/implementations/source/shared.d.ts +42 -0
- package/dist/linter/implementations/source/shared.d.ts.map +1 -0
- package/dist/linter/implementations/source/shared.js +239 -0
- package/dist/linter/implementations/source/shared.js.map +1 -0
- package/dist/linter/implementations/source/states.d.ts +3 -0
- package/dist/linter/implementations/source/states.d.ts.map +1 -0
- package/dist/linter/implementations/source/states.js +2 -0
- package/dist/linter/implementations/source/states.js.map +1 -0
- package/dist/linter/implementations/source/tests.d.ts +3 -0
- package/dist/linter/implementations/source/tests.d.ts.map +1 -0
- package/dist/linter/implementations/source/tests.js +28 -0
- package/dist/linter/implementations/source/tests.js.map +1 -0
- package/dist/linter/implementations/source/ui.d.ts +3 -0
- package/dist/linter/implementations/source/ui.d.ts.map +1 -0
- package/dist/linter/implementations/source/ui.js +21 -0
- package/dist/linter/implementations/source/ui.js.map +1 -0
- package/dist/linter/implementations/source/utils.d.ts +3 -0
- package/dist/linter/implementations/source/utils.d.ts.map +1 -0
- package/dist/linter/implementations/source/utils.js +29 -0
- package/dist/linter/implementations/source/utils.js.map +1 -0
- package/dist/linter/implementations/source/verifiers.d.ts +3 -0
- package/dist/linter/implementations/source/verifiers.d.ts.map +1 -0
- package/dist/linter/implementations/source/verifiers.js +33 -0
- package/dist/linter/implementations/source/verifiers.js.map +1 -0
- package/dist/linter/implementations/source/views.d.ts +3 -0
- package/dist/linter/implementations/source/views.d.ts.map +1 -0
- package/dist/linter/implementations/source/views.js +36 -0
- package/dist/linter/implementations/source/views.js.map +1 -0
- package/dist/linter/implementations/source/workflows.d.ts +3 -0
- package/dist/linter/implementations/source/workflows.d.ts.map +1 -0
- package/dist/linter/implementations/source/workflows.js +308 -0
- package/dist/linter/implementations/source/workflows.js.map +1 -0
- package/dist/linter/index.d.ts +7 -8
- package/dist/linter/index.d.ts.map +1 -1
- package/dist/linter/index.js +2 -4
- package/dist/linter/index.js.map +1 -1
- package/dist/linter/lint.d.ts +22 -8
- package/dist/linter/lint.d.ts.map +1 -1
- package/dist/linter/lint.js +58 -15
- package/dist/linter/lint.js.map +1 -1
- package/dist/linter/oxlint/index.d.ts +4 -0
- package/dist/linter/oxlint/index.d.ts.map +1 -0
- package/dist/linter/oxlint/index.js +2 -0
- package/dist/linter/oxlint/index.js.map +1 -0
- package/dist/linter/oxlint/process.d.ts +6 -6
- package/dist/linter/oxlint/process.d.ts.map +1 -1
- package/dist/linter/oxlint/process.js +1 -1
- package/dist/linter/oxlint/process.js.map +1 -1
- package/dist/linter/oxlint/run.d.ts +5 -5
- package/dist/linter/oxlint/run.d.ts.map +1 -1
- package/dist/linter/oxlint/run.js +140 -20
- package/dist/linter/oxlint/run.js.map +1 -1
- package/dist/linter/oxlint-config/ignore-patterns.d.ts +6 -0
- package/dist/linter/oxlint-config/ignore-patterns.d.ts.map +1 -0
- package/dist/linter/oxlint-config/ignore-patterns.js +10 -0
- package/dist/linter/oxlint-config/ignore-patterns.js.map +1 -0
- package/dist/linter/oxlint-config/index.d.ts +5 -0
- package/dist/linter/oxlint-config/index.d.ts.map +1 -0
- package/dist/linter/oxlint-config/index.js +18 -0
- package/dist/linter/oxlint-config/index.js.map +1 -0
- package/dist/linter/packs/domain.d.ts +3 -0
- package/dist/linter/packs/domain.d.ts.map +1 -0
- package/dist/linter/packs/domain.js +8 -0
- package/dist/linter/packs/domain.js.map +1 -0
- package/dist/linter/packs/index.d.ts +9 -0
- package/dist/linter/packs/index.d.ts.map +1 -0
- package/dist/linter/packs/index.js +2 -0
- package/dist/linter/packs/index.js.map +1 -0
- package/dist/linter/policy/compile.d.ts +3 -0
- package/dist/linter/policy/compile.d.ts.map +1 -0
- package/dist/linter/policy/compile.js +256 -0
- package/dist/linter/policy/compile.js.map +1 -0
- package/dist/linter/policy/generated.d.ts +5 -0
- package/dist/linter/policy/generated.d.ts.map +1 -0
- package/dist/linter/policy/generated.js +764 -0
- package/dist/linter/policy/generated.js.map +1 -0
- package/dist/linter/policy/index.d.ts +43 -0
- package/dist/linter/policy/index.d.ts.map +1 -0
- package/dist/linter/policy/index.js +3 -0
- package/dist/linter/policy/index.js.map +1 -0
- package/dist/linter/qualification/index.d.ts +11 -0
- package/dist/linter/qualification/index.d.ts.map +1 -0
- package/dist/linter/qualification/index.js +3 -0
- package/dist/linter/qualification/index.js.map +1 -0
- package/dist/linter/qualification/query-fixtures.d.ts +3 -0
- package/dist/linter/qualification/query-fixtures.d.ts.map +1 -0
- package/dist/linter/qualification/query-fixtures.js +69 -0
- package/dist/linter/qualification/query-fixtures.js.map +1 -0
- package/dist/linter/qualification/runner.d.ts +4 -0
- package/dist/linter/qualification/runner.d.ts.map +1 -0
- package/dist/linter/qualification/runner.js +7 -0
- package/dist/linter/qualification/runner.js.map +1 -0
- package/dist/linter/report/format.d.ts +4 -0
- package/dist/linter/report/format.d.ts.map +1 -0
- package/dist/linter/report/format.js +33 -0
- package/dist/linter/report/format.js.map +1 -0
- package/dist/linter/report/index.d.ts +3 -0
- package/dist/linter/report/index.d.ts.map +1 -0
- package/dist/linter/report/index.js +2 -0
- package/dist/linter/report/index.js.map +1 -0
- package/dist/linter/requirements/index.d.ts +3 -0
- package/dist/linter/requirements/index.d.ts.map +1 -0
- package/dist/linter/requirements/index.js +2 -0
- package/dist/linter/requirements/index.js.map +1 -0
- package/dist/linter/requirements/model.d.ts +9 -0
- package/dist/linter/requirements/model.d.ts.map +1 -0
- package/dist/linter/requirements/model.js +2 -0
- package/dist/linter/requirements/model.js.map +1 -0
- package/dist/linter/requirements/registry.d.ts +4 -0
- package/dist/linter/requirements/registry.d.ts.map +1 -0
- package/dist/linter/requirements/registry.js +188 -0
- package/dist/linter/requirements/registry.js.map +1 -0
- package/dist/linter/semantics/query/decision.d.ts +5 -0
- package/dist/linter/semantics/query/decision.d.ts.map +1 -0
- package/dist/linter/semantics/query/decision.js +74 -0
- package/dist/linter/semantics/query/decision.js.map +1 -0
- package/dist/linter/semantics/query/index.d.ts +4 -0
- package/dist/linter/semantics/query/index.d.ts.map +1 -0
- package/dist/linter/semantics/query/index.js +3 -0
- package/dist/linter/semantics/query/index.js.map +1 -0
- package/dist/linter/semantics/query/observation.d.ts +36 -0
- package/dist/linter/semantics/query/observation.d.ts.map +1 -0
- package/dist/linter/semantics/query/observation.js +13 -0
- package/dist/linter/semantics/query/observation.js.map +1 -0
- package/dist/linter/suppression/apply.d.ts +4 -0
- package/dist/linter/suppression/apply.d.ts.map +1 -0
- package/dist/linter/suppression/apply.js +48 -0
- package/dist/linter/suppression/apply.js.map +1 -0
- package/dist/linter/suppression/directive.d.ts +11 -0
- package/dist/linter/suppression/directive.d.ts.map +1 -0
- package/dist/linter/suppression/directive.js +2 -0
- package/dist/linter/suppression/directive.js.map +1 -0
- package/dist/linter/suppression/index.d.ts +14 -0
- package/dist/linter/suppression/index.d.ts.map +1 -0
- package/dist/linter/suppression/index.js +2 -0
- package/dist/linter/suppression/index.js.map +1 -0
- package/dist/mutation/contract.d.ts +134 -0
- package/dist/mutation/contract.d.ts.map +1 -0
- package/dist/mutation/contract.js +2 -0
- package/dist/mutation/contract.js.map +1 -0
- package/dist/mutation/define.d.ts +9 -0
- package/dist/mutation/define.d.ts.map +1 -0
- package/dist/mutation/define.js +24 -0
- package/dist/mutation/define.js.map +1 -0
- package/dist/mutation/errors.d.ts +3 -0
- package/dist/mutation/errors.d.ts.map +1 -0
- package/dist/mutation/errors.js +30 -0
- package/dist/mutation/errors.js.map +1 -0
- package/dist/mutation/execute.d.ts +11 -0
- package/dist/mutation/execute.d.ts.map +1 -0
- package/dist/mutation/execute.js +24 -0
- package/dist/mutation/execute.js.map +1 -0
- package/dist/mutation/index.d.ts +8 -0
- package/dist/mutation/index.d.ts.map +1 -0
- package/dist/mutation/index.js +5 -0
- package/dist/mutation/index.js.map +1 -0
- package/dist/mutation/rich.d.ts +4 -0
- package/dist/mutation/rich.d.ts.map +1 -0
- package/dist/mutation/rich.js +147 -0
- package/dist/mutation/rich.js.map +1 -0
- package/dist/query/composite/contract.d.ts +37 -0
- package/dist/query/composite/contract.d.ts.map +1 -0
- package/dist/query/composite/contract.js +2 -0
- package/dist/query/composite/contract.js.map +1 -0
- package/dist/query/composite/errors.d.ts +8 -0
- package/dist/query/composite/errors.d.ts.map +1 -0
- package/dist/query/composite/errors.js +9 -0
- package/dist/query/composite/errors.js.map +1 -0
- package/dist/query/composite/index.d.ts +6 -0
- package/dist/query/composite/index.d.ts.map +1 -0
- package/dist/query/composite/index.js +3 -0
- package/dist/query/composite/index.js.map +1 -0
- package/dist/query/composite/plan.d.ts +38 -0
- package/dist/query/composite/plan.d.ts.map +1 -0
- package/dist/query/composite/plan.js +225 -0
- package/dist/query/composite/plan.js.map +1 -0
- package/dist/query/contract.d.ts +58 -0
- package/dist/query/contract.d.ts.map +1 -0
- package/dist/query/contract.js +2 -0
- package/dist/query/contract.js.map +1 -0
- package/dist/query/define.d.ts +3 -0
- package/dist/query/define.d.ts.map +1 -0
- package/dist/query/define.js +90 -0
- package/dist/query/define.js.map +1 -0
- package/dist/query/definition.d.ts +29 -0
- package/dist/query/definition.d.ts.map +1 -0
- package/dist/query/definition.js +2 -0
- package/dist/query/definition.js.map +1 -0
- package/dist/query/errors.d.ts +9 -0
- package/dist/query/errors.d.ts.map +1 -0
- package/dist/query/errors.js +15 -0
- package/dist/query/errors.js.map +1 -0
- package/dist/query/execute.d.ts +20 -0
- package/dist/query/execute.d.ts.map +1 -0
- package/dist/query/execute.js +97 -0
- package/dist/query/execute.js.map +1 -0
- package/dist/query/index.d.ts +15 -0
- package/dist/query/index.d.ts.map +1 -0
- package/dist/query/index.js +8 -0
- package/dist/query/index.js.map +1 -0
- package/dist/query/node.d.ts +109 -0
- package/dist/query/node.d.ts.map +1 -0
- package/dist/query/node.js +164 -0
- package/dist/query/node.js.map +1 -0
- package/dist/query/result/contract.d.ts +23 -0
- package/dist/query/result/contract.d.ts.map +1 -0
- package/dist/query/result/contract.js +2 -0
- package/dist/query/result/contract.js.map +1 -0
- package/dist/query/result/index.d.ts +3 -0
- package/dist/query/result/index.d.ts.map +1 -0
- package/dist/query/result/index.js +2 -0
- package/dist/query/result/index.js.map +1 -0
- package/dist/query/result/projection.d.ts +3 -0
- package/dist/query/result/projection.d.ts.map +1 -0
- package/dist/query/result/projection.js +100 -0
- package/dist/query/result/projection.js.map +1 -0
- package/dist/query/selection.d.ts +4 -0
- package/dist/query/selection.d.ts.map +1 -0
- package/dist/query/selection.js +25 -0
- package/dist/query/selection.js.map +1 -0
- package/dist/react/compile.d.ts +9 -0
- package/dist/react/compile.d.ts.map +1 -0
- package/dist/react/compile.js +64 -0
- package/dist/react/compile.js.map +1 -0
- package/dist/react/define.d.ts +8 -0
- package/dist/react/define.d.ts.map +1 -0
- package/dist/react/define.js +89 -0
- package/dist/react/define.js.map +1 -0
- package/dist/react/definition.d.ts +69 -0
- package/dist/react/definition.d.ts.map +1 -0
- package/dist/react/definition.js +2 -0
- package/dist/react/definition.js.map +1 -0
- package/dist/react/index.d.ts +4 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +3 -0
- package/dist/react/index.js.map +1 -0
- package/dist/result/index.d.ts +3 -0
- package/dist/result/index.d.ts.map +1 -0
- package/dist/result/index.js +2 -0
- package/dist/result/index.js.map +1 -0
- package/dist/result/result.d.ts +10 -0
- package/dist/result/result.d.ts.map +1 -0
- package/dist/result/result.js +7 -0
- package/dist/result/result.js.map +1 -0
- package/dist/schema/index.d.ts +3 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +3 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/kernel/index.d.ts +3 -0
- package/dist/schema/kernel/index.d.ts.map +1 -0
- package/dist/schema/kernel/index.js +3 -0
- package/dist/schema/kernel/index.js.map +1 -0
- package/dist/schema/v1/index.d.ts +3 -0
- package/dist/schema/v1/index.d.ts.map +1 -0
- package/dist/schema/v1/index.js +3 -0
- package/dist/schema/v1/index.js.map +1 -0
- package/dist/server/application.d.ts +36 -0
- package/dist/server/application.d.ts.map +1 -0
- package/dist/server/application.js +126 -0
- package/dist/server/application.js.map +1 -0
- package/dist/server/index.d.ts +4 -13
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -8
- package/dist/server/index.js.map +1 -1
- package/dist/server/node/index.d.ts +3 -0
- package/dist/server/node/index.d.ts.map +1 -0
- package/dist/server/node/index.js +2 -0
- package/dist/server/node/index.js.map +1 -0
- package/dist/server/node/server.d.ts +14 -0
- package/dist/server/node/server.d.ts.map +1 -0
- package/dist/server/node/server.js +71 -0
- package/dist/server/node/server.js.map +1 -0
- package/dist/server/remote.d.ts +56 -0
- package/dist/server/remote.d.ts.map +1 -0
- package/dist/server/remote.js +798 -0
- package/dist/server/remote.js.map +1 -0
- package/dist/server/source.d.ts +13 -0
- package/dist/server/source.d.ts.map +1 -0
- package/dist/server/source.js +38 -0
- package/dist/server/source.js.map +1 -0
- package/dist/state/index.d.ts +4 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +2 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/machine.d.ts +28 -0
- package/dist/state/machine.d.ts.map +1 -0
- package/dist/state/machine.js +32 -0
- package/dist/state/machine.js.map +1 -0
- package/dist/state/relation.d.ts +28 -0
- package/dist/state/relation.d.ts.map +1 -0
- package/dist/state/relation.js +48 -0
- package/dist/state/relation.js.map +1 -0
- package/dist/value/index.d.ts +3 -0
- package/dist/value/index.d.ts.map +1 -0
- package/dist/value/index.js +3 -0
- package/dist/value/index.js.map +1 -0
- package/dist/view/admission.d.ts +6 -0
- package/dist/view/admission.d.ts.map +1 -0
- package/dist/view/admission.js +43 -0
- package/dist/view/admission.js.map +1 -0
- package/dist/view/compile.d.ts +15 -0
- package/dist/view/compile.d.ts.map +1 -0
- package/dist/view/compile.js +189 -0
- package/dist/view/compile.js.map +1 -0
- package/dist/view/define.d.ts +20 -0
- package/dist/view/define.d.ts.map +1 -0
- package/dist/view/define.js +236 -0
- package/dist/view/define.js.map +1 -0
- package/dist/view/definition.d.ts +96 -0
- package/dist/view/definition.d.ts.map +1 -0
- package/dist/view/definition.js +2 -0
- package/dist/view/definition.js.map +1 -0
- package/dist/view/index.d.ts +4 -0
- package/dist/view/index.d.ts.map +1 -0
- package/dist/view/index.js +3 -0
- package/dist/view/index.js.map +1 -0
- package/dist/workflow/binding.d.ts +43 -0
- package/dist/workflow/binding.d.ts.map +1 -0
- package/dist/workflow/binding.js +32 -0
- package/dist/workflow/binding.js.map +1 -0
- package/dist/workflow/contract.d.ts +57 -0
- package/dist/workflow/contract.d.ts.map +1 -0
- package/dist/workflow/contract.js +2 -0
- package/dist/workflow/contract.js.map +1 -0
- package/dist/workflow/define.d.ts +4 -0
- package/dist/workflow/define.d.ts.map +1 -0
- package/dist/workflow/define.js +57 -0
- package/dist/workflow/define.js.map +1 -0
- package/dist/workflow/index.d.ts +7 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +4 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/runner.d.ts +4 -0
- package/dist/workflow/runner.d.ts.map +1 -0
- package/dist/workflow/runner.js +24 -0
- package/dist/workflow/runner.js.map +1 -0
- package/dist/workflow/step/index.d.ts +3 -0
- package/dist/workflow/step/index.d.ts.map +1 -0
- package/dist/workflow/step/index.js +2 -0
- package/dist/workflow/step/index.js.map +1 -0
- package/dist/workflow/step/inline.d.ts +6 -0
- package/dist/workflow/step/inline.d.ts.map +1 -0
- package/dist/workflow/step/inline.js +44 -0
- package/dist/workflow/step/inline.js.map +1 -0
- package/dist/workflow/step/step.d.ts +5 -0
- package/dist/workflow/step/step.d.ts.map +1 -0
- package/dist/workflow/step/step.js +2 -0
- package/dist/workflow/step/step.js.map +1 -0
- package/package.json +117 -24
- package/dist/auth/authenticate.d.ts +0 -24
- package/dist/auth/authenticate.d.ts.map +0 -1
- package/dist/auth/authenticate.js +0 -29
- package/dist/auth/authenticate.js.map +0 -1
- package/dist/auth/check.d.ts +0 -38
- package/dist/auth/check.d.ts.map +0 -1
- package/dist/auth/check.js +0 -50
- package/dist/auth/check.js.map +0 -1
- package/dist/auth/compose.d.ts +0 -41
- package/dist/auth/compose.d.ts.map +0 -1
- package/dist/auth/compose.js +0 -45
- package/dist/auth/compose.js.map +0 -1
- package/dist/auth/errors.d.ts +0 -16
- package/dist/auth/errors.d.ts.map +0 -1
- package/dist/auth/errors.js +0 -26
- package/dist/auth/errors.js.map +0 -1
- package/dist/auth/function-context.d.ts +0 -28
- package/dist/auth/function-context.d.ts.map +0 -1
- package/dist/auth/function-context.js +0 -47
- package/dist/auth/function-context.js.map +0 -1
- package/dist/auth/identity.d.ts +0 -18
- package/dist/auth/identity.d.ts.map +0 -1
- package/dist/auth/identity.js +0 -2
- package/dist/auth/identity.js.map +0 -1
- package/dist/auth/issuer-mint.d.ts +0 -53
- package/dist/auth/issuer-mint.d.ts.map +0 -1
- package/dist/auth/issuer-mint.js +0 -35
- package/dist/auth/issuer-mint.js.map +0 -1
- package/dist/auth/kernel-client.d.ts +0 -37
- package/dist/auth/kernel-client.d.ts.map +0 -1
- package/dist/auth/kernel-client.js +0 -111
- package/dist/auth/kernel-client.js.map +0 -1
- package/dist/auth/resolve.d.ts +0 -19
- package/dist/auth/resolve.d.ts.map +0 -1
- package/dist/auth/resolve.js +0 -43
- package/dist/auth/resolve.js.map +0 -1
- package/dist/auth/sign.d.ts +0 -15
- package/dist/auth/sign.d.ts.map +0 -1
- package/dist/auth/sign.js +0 -24
- package/dist/auth/sign.js.map +0 -1
- package/dist/auth/verify.d.ts +0 -28
- package/dist/auth/verify.d.ts.map +0 -1
- package/dist/auth/verify.js +0 -151
- package/dist/auth/verify.js.map +0 -1
- package/dist/cli/spec.d.ts +0 -19
- package/dist/cli/spec.d.ts.map +0 -1
- package/dist/cli/spec.js +0 -33
- package/dist/cli/spec.js.map +0 -1
- package/dist/config/adapter.d.ts +0 -148
- package/dist/config/adapter.d.ts.map +0 -1
- package/dist/config/adapter.js +0 -40
- package/dist/config/adapter.js.map +0 -1
- package/dist/config/define-domain.d.ts +0 -177
- package/dist/config/define-domain.d.ts.map +0 -1
- package/dist/config/define-domain.js +0 -145
- package/dist/config/define-domain.js.map +0 -1
- package/dist/config/deploy.d.ts +0 -28
- package/dist/config/deploy.d.ts.map +0 -1
- package/dist/config/deploy.js +0 -24
- package/dist/config/deploy.js.map +0 -1
- package/dist/config/index.d.ts +0 -21
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -18
- package/dist/config/index.js.map +0 -1
- package/dist/define/index.d.ts +0 -5
- package/dist/define/index.d.ts.map +0 -1
- package/dist/define/index.js +0 -3
- package/dist/define/index.js.map +0 -1
- package/dist/define/remote-function.d.ts +0 -120
- package/dist/define/remote-function.d.ts.map +0 -1
- package/dist/define/remote-function.js +0 -26
- package/dist/define/remote-function.js.map +0 -1
- package/dist/define/view.d.ts +0 -104
- package/dist/define/view.d.ts.map +0 -1
- package/dist/define/view.js +0 -30
- package/dist/define/view.js.map +0 -1
- package/dist/deploy/check.d.ts +0 -30
- package/dist/deploy/check.d.ts.map +0 -1
- package/dist/deploy/check.js +0 -82
- package/dist/deploy/check.js.map +0 -1
- package/dist/deploy/index.d.ts +0 -3
- package/dist/deploy/index.d.ts.map +0 -1
- package/dist/deploy/index.js +0 -3
- package/dist/deploy/index.js.map +0 -1
- package/dist/deploy/meta.d.ts +0 -29
- package/dist/deploy/meta.d.ts.map +0 -1
- package/dist/deploy/meta.js +0 -45
- package/dist/deploy/meta.js.map +0 -1
- package/dist/dispatch/authorize.d.ts +0 -14
- package/dist/dispatch/authorize.d.ts.map +0 -1
- package/dist/dispatch/authorize.js +0 -24
- package/dist/dispatch/authorize.js.map +0 -1
- package/dist/dispatch/dispatcher.d.ts +0 -59
- package/dist/dispatch/dispatcher.d.ts.map +0 -1
- package/dist/dispatch/dispatcher.js +0 -237
- package/dist/dispatch/dispatcher.js.map +0 -1
- package/dist/dispatch/errors.d.ts +0 -47
- package/dist/dispatch/errors.d.ts.map +0 -1
- package/dist/dispatch/errors.js +0 -76
- package/dist/dispatch/errors.js.map +0 -1
- package/dist/dispatch/execute.d.ts +0 -44
- package/dist/dispatch/execute.d.ts.map +0 -1
- package/dist/dispatch/execute.js +0 -29
- package/dist/dispatch/execute.js.map +0 -1
- package/dist/dispatch/identity.d.ts +0 -75
- package/dist/dispatch/identity.d.ts.map +0 -1
- package/dist/dispatch/identity.js +0 -101
- package/dist/dispatch/identity.js.map +0 -1
- package/dist/dispatch/index.d.ts +0 -7
- package/dist/dispatch/index.d.ts.map +0 -1
- package/dist/dispatch/index.js +0 -7
- package/dist/dispatch/index.js.map +0 -1
- package/dist/dispatch/resolve.d.ts +0 -27
- package/dist/dispatch/resolve.d.ts.map +0 -1
- package/dist/dispatch/resolve.js +0 -65
- package/dist/dispatch/resolve.js.map +0 -1
- package/dist/dispatch/self.d.ts +0 -51
- package/dist/dispatch/self.d.ts.map +0 -1
- package/dist/dispatch/self.js +0 -116
- package/dist/dispatch/self.js.map +0 -1
- package/dist/dispatch/validate.d.ts +0 -35
- package/dist/dispatch/validate.d.ts.map +0 -1
- package/dist/dispatch/validate.js +0 -27
- package/dist/dispatch/validate.js.map +0 -1
- package/dist/domain/binding.d.ts +0 -18
- package/dist/domain/binding.d.ts.map +0 -1
- package/dist/domain/binding.js +0 -29
- package/dist/domain/binding.js.map +0 -1
- package/dist/domain/build-spec.d.ts +0 -37
- package/dist/domain/build-spec.d.ts.map +0 -1
- package/dist/domain/build-spec.js +0 -114
- package/dist/domain/build-spec.js.map +0 -1
- package/dist/domain/contract.d.ts +0 -17
- package/dist/domain/contract.d.ts.map +0 -1
- package/dist/domain/contract.js +0 -26
- package/dist/domain/contract.js.map +0 -1
- package/dist/domain/extend-functions.d.ts +0 -48
- package/dist/domain/extend-functions.d.ts.map +0 -1
- package/dist/domain/extend-functions.js +0 -85
- package/dist/domain/extend-functions.js.map +0 -1
- package/dist/domain/extend-views.d.ts +0 -45
- package/dist/domain/extend-views.d.ts.map +0 -1
- package/dist/domain/extend-views.js +0 -116
- package/dist/domain/extend-views.js.map +0 -1
- package/dist/linter/analyze.d.ts +0 -6
- package/dist/linter/analyze.d.ts.map +0 -1
- package/dist/linter/analyze.js +0 -12
- package/dist/linter/analyze.js.map +0 -1
- package/dist/linter/diagnostic.d.ts +0 -38
- package/dist/linter/diagnostic.d.ts.map +0 -1
- package/dist/linter/diagnostic.js +0 -37
- package/dist/linter/diagnostic.js.map +0 -1
- package/dist/linter/oxlint/config.d.ts +0 -15
- package/dist/linter/oxlint/config.d.ts.map +0 -1
- package/dist/linter/oxlint/config.js +0 -23
- package/dist/linter/oxlint/config.js.map +0 -1
- package/dist/linter/oxlint/ignore-patterns.d.ts +0 -9
- package/dist/linter/oxlint/ignore-patterns.d.ts.map +0 -1
- package/dist/linter/oxlint/ignore-patterns.js +0 -18
- package/dist/linter/oxlint/ignore-patterns.js.map +0 -1
- package/dist/linter/oxlint/plugin.d.ts +0 -13
- package/dist/linter/oxlint/plugin.d.ts.map +0 -1
- package/dist/linter/oxlint/plugin.js +0 -14
- package/dist/linter/oxlint/plugin.js.map +0 -1
- package/dist/linter/preflight.d.ts +0 -2
- package/dist/linter/preflight.d.ts.map +0 -1
- package/dist/linter/preflight.js +0 -162
- package/dist/linter/preflight.js.map +0 -1
- package/dist/linter/project.d.ts +0 -18
- package/dist/linter/project.d.ts.map +0 -1
- package/dist/linter/project.js +0 -150
- package/dist/linter/project.js.map +0 -1
- package/dist/linter/report.d.ts +0 -4
- package/dist/linter/report.d.ts.map +0 -1
- package/dist/linter/report.js +0 -22
- package/dist/linter/report.js.map +0 -1
- package/dist/linter/rules/catalog.d.ts +0 -56
- package/dist/linter/rules/catalog.d.ts.map +0 -1
- package/dist/linter/rules/catalog.js +0 -53
- package/dist/linter/rules/catalog.js.map +0 -1
- package/dist/linter/rules/core-has-no-async.d.ts +0 -3
- package/dist/linter/rules/core-has-no-async.d.ts.map +0 -1
- package/dist/linter/rules/core-has-no-async.js +0 -43
- package/dist/linter/rules/core-has-no-async.js.map +0 -1
- package/dist/linter/rules/core-is-pure.d.ts +0 -3
- package/dist/linter/rules/core-is-pure.d.ts.map +0 -1
- package/dist/linter/rules/core-is-pure.js +0 -74
- package/dist/linter/rules/core-is-pure.js.map +0 -1
- package/dist/linter/rules/no-nested-steps.d.ts +0 -3
- package/dist/linter/rules/no-nested-steps.d.ts.map +0 -1
- package/dist/linter/rules/no-nested-steps.js +0 -32
- package/dist/linter/rules/no-nested-steps.js.map +0 -1
- package/dist/linter/rules/no-read-inside-mutate.d.ts +0 -3
- package/dist/linter/rules/no-read-inside-mutate.d.ts.map +0 -1
- package/dist/linter/rules/no-read-inside-mutate.js +0 -64
- package/dist/linter/rules/no-read-inside-mutate.js.map +0 -1
- package/dist/linter/rules/one-remote-definition-per-file.d.ts +0 -3
- package/dist/linter/rules/one-remote-definition-per-file.d.ts.map +0 -1
- package/dist/linter/rules/one-remote-definition-per-file.js +0 -23
- package/dist/linter/rules/one-remote-definition-per-file.js.map +0 -1
- package/dist/linter/rules/oxlint-ast.d.ts +0 -30
- package/dist/linter/rules/oxlint-ast.d.ts.map +0 -1
- package/dist/linter/rules/oxlint-ast.js +0 -104
- package/dist/linter/rules/oxlint-ast.js.map +0 -1
- package/dist/linter/rules/oxlint-rule.d.ts +0 -45
- package/dist/linter/rules/oxlint-rule.d.ts.map +0 -1
- package/dist/linter/rules/oxlint-rule.js +0 -2
- package/dist/linter/rules/oxlint-rule.js.map +0 -1
- package/dist/linter/rules/project-rule.d.ts +0 -10
- package/dist/linter/rules/project-rule.d.ts.map +0 -1
- package/dist/linter/rules/project-rule.js +0 -24
- package/dist/linter/rules/project-rule.js.map +0 -1
- package/dist/linter/rules/thin-schema-composition-root.d.ts +0 -3
- package/dist/linter/rules/thin-schema-composition-root.d.ts.map +0 -1
- package/dist/linter/rules/thin-schema-composition-root.js +0 -23
- package/dist/linter/rules/thin-schema-composition-root.js.map +0 -1
- package/dist/linter/source.d.ts +0 -24
- package/dist/linter/source.d.ts.map +0 -1
- package/dist/linter/source.js +0 -279
- package/dist/linter/source.js.map +0 -1
- package/dist/linter/suppression.d.ts +0 -3
- package/dist/linter/suppression.d.ts.map +0 -1
- package/dist/linter/suppression.js +0 -11
- package/dist/linter/suppression.js.map +0 -1
- package/dist/method/class.d.ts +0 -71
- package/dist/method/class.d.ts.map +0 -1
- package/dist/method/class.js +0 -26
- package/dist/method/class.js.map +0 -1
- package/dist/method/context.d.ts +0 -99
- package/dist/method/context.d.ts.map +0 -1
- package/dist/method/context.js +0 -11
- package/dist/method/context.js.map +0 -1
- package/dist/method/index.d.ts +0 -6
- package/dist/method/index.d.ts.map +0 -1
- package/dist/method/index.js +0 -3
- package/dist/method/index.js.map +0 -1
- package/dist/method/single.d.ts +0 -81
- package/dist/method/single.d.ts.map +0 -1
- package/dist/method/single.js +0 -8
- package/dist/method/single.js.map +0 -1
- package/dist/server/auxiliary-routes.d.ts +0 -48
- package/dist/server/auxiliary-routes.d.ts.map +0 -1
- package/dist/server/auxiliary-routes.js +0 -322
- package/dist/server/auxiliary-routes.js.map +0 -1
- package/dist/server/config.d.ts +0 -83
- package/dist/server/config.d.ts.map +0 -1
- package/dist/server/config.js +0 -8
- package/dist/server/config.js.map +0 -1
- package/dist/server/create.d.ts +0 -8
- package/dist/server/create.d.ts.map +0 -1
- package/dist/server/create.js +0 -171
- package/dist/server/create.js.map +0 -1
- package/dist/server/domain-entry.d.ts +0 -77
- package/dist/server/domain-entry.d.ts.map +0 -1
- package/dist/server/domain-entry.js +0 -60
- package/dist/server/domain-entry.js.map +0 -1
- package/dist/server/handle.d.ts +0 -35
- package/dist/server/handle.d.ts.map +0 -1
- package/dist/server/handle.js +0 -9
- package/dist/server/handle.js.map +0 -1
- package/dist/server/jwks.d.ts +0 -11
- package/dist/server/jwks.d.ts.map +0 -1
- package/dist/server/jwks.js +0 -15
- package/dist/server/jwks.js.map +0 -1
- package/dist/server/require-env.d.ts +0 -15
- package/dist/server/require-env.d.ts.map +0 -1
- package/dist/server/require-env.js +0 -21
- package/dist/server/require-env.js.map +0 -1
- package/dist/server/service-entry.d.ts +0 -32
- package/dist/server/service-entry.d.ts.map +0 -1
- package/dist/server/service-entry.js +0 -150
- package/dist/server/service-entry.js.map +0 -1
- package/dist/server/serving-url.d.ts +0 -14
- package/dist/server/serving-url.d.ts.map +0 -1
- package/dist/server/serving-url.js +0 -28
- package/dist/server/serving-url.js.map +0 -1
- package/dist/server/start.d.ts +0 -11
- package/dist/server/start.d.ts.map +0 -1
- package/dist/server/start.js +0 -34
- package/dist/server/start.js.map +0 -1
- package/dist/server/worker-entry.d.ts +0 -157
- package/dist/server/worker-entry.d.ts.map +0 -1
- package/dist/server/worker-entry.js +0 -201
- package/dist/server/worker-entry.js.map +0 -1
- package/dist/service/functions.d.ts +0 -148
- package/dist/service/functions.d.ts.map +0 -1
- package/dist/service/functions.js +0 -115
- package/dist/service/functions.js.map +0 -1
- package/dist/service/index.d.ts +0 -3
- package/dist/service/index.d.ts.map +0 -1
- package/dist/service/index.js +0 -2
- package/dist/service/index.js.map +0 -1
- package/dist/step/index.d.ts +0 -5
- package/dist/step/index.d.ts.map +0 -1
- package/dist/step/index.js +0 -3
- package/dist/step/index.js.map +0 -1
- package/dist/step/inline.d.ts +0 -8
- package/dist/step/inline.d.ts.map +0 -1
- package/dist/step/inline.js +0 -22
- package/dist/step/inline.js.map +0 -1
- package/dist/step/step.d.ts +0 -28
- package/dist/step/step.d.ts.map +0 -1
- package/dist/step/step.js +0 -53
- package/dist/step/step.js.map +0 -1
- package/src/auth/authenticate.ts +0 -51
- package/src/auth/check.ts +0 -69
- package/src/auth/compose.ts +0 -56
- package/src/auth/errors.ts +0 -32
- package/src/auth/function-context.ts +0 -108
- package/src/auth/identity.ts +0 -17
- package/src/auth/index.ts +0 -19
- package/src/auth/issuer-mint.ts +0 -76
- package/src/auth/kernel-client.ts +0 -153
- package/src/auth/resolve.ts +0 -63
- package/src/auth/sign.ts +0 -36
- package/src/auth/verify.ts +0 -199
- package/src/cli/bin.ts +0 -15
- package/src/cli/dotenv.ts +0 -65
- package/src/cli/index.ts +0 -15
- package/src/cli/log.ts +0 -18
- package/src/cli/publish.ts +0 -341
- package/src/cli/run.ts +0 -769
- package/src/cli/spec.ts +0 -44
- package/src/config/adapter.ts +0 -177
- package/src/config/define-domain.ts +0 -354
- package/src/config/deploy.ts +0 -35
- package/src/config/index.ts +0 -31
- package/src/define/index.ts +0 -10
- package/src/define/remote-function.ts +0 -184
- package/src/define/view.ts +0 -112
- package/src/deploy/check.ts +0 -124
- package/src/deploy/index.ts +0 -2
- package/src/deploy/meta.ts +0 -50
- package/src/dispatch/authorize.ts +0 -29
- package/src/dispatch/dispatcher.ts +0 -321
- package/src/dispatch/errors.ts +0 -94
- package/src/dispatch/execute.ts +0 -67
- package/src/dispatch/identity.ts +0 -143
- package/src/dispatch/index.ts +0 -16
- package/src/dispatch/resolve.ts +0 -78
- package/src/dispatch/self.ts +0 -198
- package/src/dispatch/validate.ts +0 -41
- package/src/domain/binding.ts +0 -37
- package/src/domain/build-spec.ts +0 -156
- package/src/domain/contract.ts +0 -41
- package/src/domain/define.ts +0 -162
- package/src/domain/extend-functions.ts +0 -110
- package/src/domain/extend-views.ts +0 -151
- package/src/domain/index.ts +0 -4
- package/src/index.ts +0 -165
- package/src/linter/analyze.ts +0 -17
- package/src/linter/diagnostic.ts +0 -85
- package/src/linter/docs/DIAGNOSTICS.md +0 -47
- package/src/linter/docs/JUDGMENT.md +0 -81
- package/src/linter/docs/PRINCIPLES.md +0 -97
- package/src/linter/docs/README.md +0 -38
- package/src/linter/docs/RULE-AUTHORING.md +0 -144
- package/src/linter/docs/RULES.md +0 -153
- package/src/linter/index.ts +0 -15
- package/src/linter/lint.ts +0 -34
- package/src/linter/oxlint/astrale-ox.d.ts +0 -5
- package/src/linter/oxlint/config.ts +0 -24
- package/src/linter/oxlint/ignore-patterns.ts +0 -17
- package/src/linter/oxlint/plugin.js +0 -16
- package/src/linter/oxlint/process.ts +0 -219
- package/src/linter/oxlint/run.ts +0 -175
- package/src/linter/preflight.ts +0 -182
- package/src/linter/project.ts +0 -190
- package/src/linter/report.ts +0 -25
- package/src/linter/rules/catalog.ts +0 -67
- package/src/linter/rules/core-has-no-async.js +0 -43
- package/src/linter/rules/core-is-pure.ts +0 -103
- package/src/linter/rules/no-nested-steps.js +0 -37
- package/src/linter/rules/no-read-inside-mutate.js +0 -72
- package/src/linter/rules/one-remote-definition-per-file.ts +0 -29
- package/src/linter/rules/oxlint-ast.js +0 -110
- package/src/linter/rules/oxlint-rule.ts +0 -35
- package/src/linter/rules/project-rule.ts +0 -37
- package/src/linter/rules/thin-schema-composition-root.ts +0 -26
- package/src/linter/source.ts +0 -323
- package/src/linter/suppression.ts +0 -11
- package/src/method/class.ts +0 -163
- package/src/method/context.ts +0 -135
- package/src/method/index.ts +0 -19
- package/src/method/single.ts +0 -166
- package/src/server/auxiliary-routes.ts +0 -456
- package/src/server/config.ts +0 -85
- package/src/server/create.ts +0 -210
- package/src/server/domain-entry.ts +0 -125
- package/src/server/handle.ts +0 -37
- package/src/server/index.ts +0 -19
- package/src/server/jwks.ts +0 -18
- package/src/server/require-env.ts +0 -19
- package/src/server/service-entry.ts +0 -209
- package/src/server/serving-url.ts +0 -28
- package/src/server/start.ts +0 -42
- package/src/server/worker-entry.ts +0 -286
- package/src/service/functions.ts +0 -164
- package/src/service/index.ts +0 -18
- package/src/step/index.ts +0 -4
- package/src/step/inline.ts +0 -38
- package/src/step/step.ts +0 -95
|
@@ -1,456 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Mount worker-side routes for `defineView` and `defineRemoteFunction` entries.
|
|
3
|
-
*
|
|
4
|
-
* Each entry's effective `FunctionBinding` is resolved once at boot (host
|
|
5
|
-
* pattern, path, http verb) and a Hono route is registered that runs the
|
|
6
|
-
* shared SDK auth pipeline (verify inbound credential, optionally enforce /
|
|
7
|
-
* optional / public), Zod validation of input AND output (RemoteFunction
|
|
8
|
-
* only — Views are transport-only), the author's `authorize` hook, and
|
|
9
|
-
* finally `render` / `execute`.
|
|
10
|
-
*
|
|
11
|
-
* Bindings whose host is not a sub-domain of this worker's host are skipped
|
|
12
|
-
* (the graph node was still materialized; the route lives elsewhere).
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
import type { FnMap } from '@astrale-os/kernel-client'
|
|
16
|
-
import type { BoundClientSessionView } from '@astrale-os/kernel-client/session'
|
|
17
|
-
import type { AuthContext } from '@astrale-os/kernel-core'
|
|
18
|
-
import type { Context, Hono } from 'hono'
|
|
19
|
-
|
|
20
|
-
import {
|
|
21
|
-
decodeKernelRequest,
|
|
22
|
-
isKernelErrorClassifiable,
|
|
23
|
-
KERNEL_CONTENT_TYPE_JSON,
|
|
24
|
-
KERNEL_CONTENT_TYPE_MSGPACK,
|
|
25
|
-
KERNEL_ERROR_CODES,
|
|
26
|
-
kernelErrorHttpStatus,
|
|
27
|
-
resolveCodec,
|
|
28
|
-
type KernelErrorPayload,
|
|
29
|
-
type RequestId,
|
|
30
|
-
} from '@astrale-os/kernel-api'
|
|
31
|
-
import {
|
|
32
|
-
isSubdomainOf,
|
|
33
|
-
matchHost,
|
|
34
|
-
compileHostMatcher,
|
|
35
|
-
parseUrlTemplate,
|
|
36
|
-
type FunctionBinding,
|
|
37
|
-
type AuthPolicy,
|
|
38
|
-
} from '@astrale-os/kernel-api/routed'
|
|
39
|
-
import {
|
|
40
|
-
buildCorsHeaders,
|
|
41
|
-
createCapabilityLifecycle,
|
|
42
|
-
honoCapabilityHost,
|
|
43
|
-
type CorsConfig,
|
|
44
|
-
} from '@astrale-os/kernel-server'
|
|
45
|
-
|
|
46
|
-
import type { RemoteIdentityConfig } from '../auth/identity.js'
|
|
47
|
-
import type { AnyRemoteFunctionDef } from '../define/remote-function.js'
|
|
48
|
-
import type { ViewDef } from '../define/view.js'
|
|
49
|
-
import type { AuxIdentityMap } from '../dispatch/identity.js'
|
|
50
|
-
|
|
51
|
-
import { makeFunctionContext } from '../auth/function-context.js'
|
|
52
|
-
import { makeDomainAuthority } from '../auth/issuer-mint.js'
|
|
53
|
-
import { resolveInboundAuth } from '../auth/resolve.js'
|
|
54
|
-
import { runAuthorize } from '../dispatch/authorize.js'
|
|
55
|
-
import { SdkResultValidationError, SdkValidationError } from '../dispatch/errors.js'
|
|
56
|
-
import { validateParams, validateResult } from '../dispatch/validate.js'
|
|
57
|
-
import { createInlineStep } from '../step/index.js'
|
|
58
|
-
|
|
59
|
-
export type AuxiliaryRoutesConfig<TDeps> = {
|
|
60
|
-
app: Hono
|
|
61
|
-
/** This worker's serving URL — used to filter bindings that point elsewhere. */
|
|
62
|
-
url: string
|
|
63
|
-
views?: Record<string, ViewDef<TDeps>>
|
|
64
|
-
viewBindings?: Record<string, FunctionBinding>
|
|
65
|
-
remoteFunctions?: Record<string, AnyRemoteFunctionDef>
|
|
66
|
-
remoteFunctionBindings?: Record<string, FunctionBinding>
|
|
67
|
-
deps: TDeps
|
|
68
|
-
/**
|
|
69
|
-
* Per-route identity configs (keyed by slug) — one entry per View and
|
|
70
|
-
* one per RemoteFunction. Build via `buildAuxIdentityMap(compiled, key, issuer)`
|
|
71
|
-
* from `sdk/src/dispatch/identity.ts`.
|
|
72
|
-
*/
|
|
73
|
-
identities?: AuxIdentityMap
|
|
74
|
-
/** Resolve an identity lazily. Service-hosted Functions use this to read the
|
|
75
|
-
* Function node registered during deploy and reuse the Service signing key. */
|
|
76
|
-
resolveIdentity?: (
|
|
77
|
-
kind: 'view' | 'remoteFunction',
|
|
78
|
-
slug: string,
|
|
79
|
-
) => RemoteIdentityConfig | Promise<RemoteIdentityConfig>
|
|
80
|
-
/**
|
|
81
|
-
* CORS policy applied to every mounted route: per-route `app.options(...)`
|
|
82
|
-
* preflight and `Access-Control-Allow-*` headers on success + error
|
|
83
|
-
* responses. Required so callers (always `createRemoteServer`) keep the
|
|
84
|
-
* kernel-envelope and aux-route policies in sync.
|
|
85
|
-
*/
|
|
86
|
-
cors: CorsConfig
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export function mountAuxiliaryRoutes<TDeps>(config: AuxiliaryRoutesConfig<TDeps>): void {
|
|
90
|
-
const {
|
|
91
|
-
app,
|
|
92
|
-
url,
|
|
93
|
-
views,
|
|
94
|
-
viewBindings,
|
|
95
|
-
remoteFunctions,
|
|
96
|
-
remoteFunctionBindings,
|
|
97
|
-
deps,
|
|
98
|
-
identities,
|
|
99
|
-
resolveIdentity,
|
|
100
|
-
cors,
|
|
101
|
-
} = config
|
|
102
|
-
|
|
103
|
-
const workerHost = parseUrlTemplate(url).hostPattern
|
|
104
|
-
const corsHeaders = buildCorsHeaders(cors)
|
|
105
|
-
|
|
106
|
-
if (views && viewBindings) {
|
|
107
|
-
for (const [slug, def] of Object.entries(views)) {
|
|
108
|
-
const binding = viewBindings[slug]
|
|
109
|
-
if (!binding || !def.render) continue
|
|
110
|
-
const identity = identityResolver('view', slug, identities?.views[slug], resolveIdentity)
|
|
111
|
-
mountEntry({
|
|
112
|
-
app,
|
|
113
|
-
binding,
|
|
114
|
-
workerHost,
|
|
115
|
-
defaultMethod: 'GET',
|
|
116
|
-
auth: def.auth,
|
|
117
|
-
identity,
|
|
118
|
-
corsHeaders,
|
|
119
|
-
// Views are transport-only (iframe HTML/redirect). SERVER-rendered
|
|
120
|
-
// views that read the graph use `ctx.fn.kernel()`: the view's own
|
|
121
|
-
// identity, with narrow grants.
|
|
122
|
-
run: async ({ c, params, auth, kernel, identity }) => {
|
|
123
|
-
const inboundIss = auth?.credential?.verified?.iss as string | undefined
|
|
124
|
-
const kernelUrl = kernel?.default ?? inboundIss
|
|
125
|
-
const ctx = {
|
|
126
|
-
c,
|
|
127
|
-
params,
|
|
128
|
-
auth,
|
|
129
|
-
deps,
|
|
130
|
-
env: { url },
|
|
131
|
-
fn: makeFunctionContext(identity, deps, {
|
|
132
|
-
ref: `view.${slug}`,
|
|
133
|
-
...(kernelUrl !== undefined ? { defaultKernelUrl: kernelUrl } : {}),
|
|
134
|
-
}),
|
|
135
|
-
}
|
|
136
|
-
if (def.authorize) await runAuthorize(def.authorize, ctx)
|
|
137
|
-
return def.render!(ctx)
|
|
138
|
-
},
|
|
139
|
-
})
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
if (remoteFunctions && remoteFunctionBindings) {
|
|
144
|
-
for (const [slug, def] of Object.entries(remoteFunctions)) {
|
|
145
|
-
const binding = remoteFunctionBindings[slug]
|
|
146
|
-
if (!binding) continue
|
|
147
|
-
const identity = identityResolver(
|
|
148
|
-
'remoteFunction',
|
|
149
|
-
slug,
|
|
150
|
-
identities?.remoteFunctions[slug],
|
|
151
|
-
resolveIdentity,
|
|
152
|
-
)
|
|
153
|
-
mountEntry({
|
|
154
|
-
app,
|
|
155
|
-
binding,
|
|
156
|
-
workerHost,
|
|
157
|
-
defaultMethod: 'POST',
|
|
158
|
-
auth: def.auth,
|
|
159
|
-
identity,
|
|
160
|
-
corsHeaders,
|
|
161
|
-
run: async ({ c, auth, kernel, identity }) => {
|
|
162
|
-
const input = await readRemoteFunctionInput(c)
|
|
163
|
-
const validation = validateParams(def.inputSchema, input.params)
|
|
164
|
-
if (!validation.ok) {
|
|
165
|
-
throw new SdkValidationError(validation.issues as SdkValidationError['issues'])
|
|
166
|
-
}
|
|
167
|
-
const inboundIss = auth?.credential?.verified?.iss as string | undefined
|
|
168
|
-
const kernelUrl = kernel?.default ?? inboundIss
|
|
169
|
-
const caller =
|
|
170
|
-
auth && inboundIss
|
|
171
|
-
? {
|
|
172
|
-
iss: inboundIss,
|
|
173
|
-
url: kernelUrl ?? inboundIss,
|
|
174
|
-
}
|
|
175
|
-
: undefined
|
|
176
|
-
const ctx = {
|
|
177
|
-
params: validation.data,
|
|
178
|
-
c,
|
|
179
|
-
auth,
|
|
180
|
-
deps,
|
|
181
|
-
env: { url },
|
|
182
|
-
kernel,
|
|
183
|
-
...(caller !== undefined ? { caller } : {}),
|
|
184
|
-
domain: makeDomainAuthority(identity),
|
|
185
|
-
fn: makeFunctionContext(identity, deps, {
|
|
186
|
-
ref: `function.${slug}`,
|
|
187
|
-
...(kernelUrl !== undefined ? { defaultKernelUrl: kernelUrl } : {}),
|
|
188
|
-
}),
|
|
189
|
-
}
|
|
190
|
-
if (def.authorize) await runAuthorize(def.authorize, ctx)
|
|
191
|
-
const lifecycle = createCapabilityLifecycle(honoCapabilityHost(c))
|
|
192
|
-
const result = await (async () => {
|
|
193
|
-
try {
|
|
194
|
-
return await def.execute({
|
|
195
|
-
...ctx,
|
|
196
|
-
step: createInlineStep({
|
|
197
|
-
scope: { kind: 'function', ref: `function.${slug}`, slug },
|
|
198
|
-
}),
|
|
199
|
-
defer: lifecycle.capabilities.defer,
|
|
200
|
-
sleep: lifecycle.capabilities.sleep,
|
|
201
|
-
})
|
|
202
|
-
} finally {
|
|
203
|
-
await lifecycle.settle()
|
|
204
|
-
}
|
|
205
|
-
})()
|
|
206
|
-
const outValidation = validateResult(def.outputSchema, result)
|
|
207
|
-
if (!outValidation.ok) {
|
|
208
|
-
throw new SdkResultValidationError(
|
|
209
|
-
outValidation.issues as SdkResultValidationError['issues'],
|
|
210
|
-
`function.${slug}`,
|
|
211
|
-
)
|
|
212
|
-
}
|
|
213
|
-
return c.json({
|
|
214
|
-
result: outValidation.data,
|
|
215
|
-
...(input.enveloped ? { id: input.id ?? null } : {}),
|
|
216
|
-
})
|
|
217
|
-
},
|
|
218
|
-
})
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
// ── Internal ───────────────────────────────────────────────────────────────
|
|
224
|
-
|
|
225
|
-
/**
|
|
226
|
-
* Every materialized aux callable must have an identity in the install-time
|
|
227
|
-
* `subs` claim — a missing one means the build pipeline passed a compiled
|
|
228
|
-
* domain that doesn't include this callable to `buildAuxIdentityMap()`.
|
|
229
|
-
*/
|
|
230
|
-
function requireAuxIdentity(
|
|
231
|
-
kind: 'view' | 'remote function',
|
|
232
|
-
slug: string,
|
|
233
|
-
identity: RemoteIdentityConfig | undefined,
|
|
234
|
-
): RemoteIdentityConfig {
|
|
235
|
-
if (identity) return identity
|
|
236
|
-
throw new Error(
|
|
237
|
-
`mountAuxiliaryRoutes: no identity registered for ${kind} "${slug}". ` +
|
|
238
|
-
`Pass a compiled domain that includes this ${kind} to buildAuxIdentityMap().`,
|
|
239
|
-
)
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
function identityResolver(
|
|
243
|
-
kind: 'view' | 'remoteFunction',
|
|
244
|
-
slug: string,
|
|
245
|
-
identity: RemoteIdentityConfig | undefined,
|
|
246
|
-
resolveIdentity: AuxiliaryRoutesConfig<unknown>['resolveIdentity'],
|
|
247
|
-
): () => Promise<RemoteIdentityConfig> {
|
|
248
|
-
if (resolveIdentity) return async () => resolveIdentity(kind, slug)
|
|
249
|
-
const label = kind === 'view' ? 'view' : 'remote function'
|
|
250
|
-
const required = requireAuxIdentity(label, slug, identity)
|
|
251
|
-
return async () => required
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
type RunArgs = {
|
|
255
|
-
c: Context
|
|
256
|
-
params: Record<string, string>
|
|
257
|
-
auth: AuthContext | null
|
|
258
|
-
kernel: BoundClientSessionView<FnMap> | null
|
|
259
|
-
identity: RemoteIdentityConfig
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
type MountEntryArgs = {
|
|
263
|
-
app: Hono
|
|
264
|
-
binding: FunctionBinding
|
|
265
|
-
workerHost: string
|
|
266
|
-
defaultMethod: 'GET' | 'POST'
|
|
267
|
-
run: (args: RunArgs) => Promise<Response>
|
|
268
|
-
auth?: AuthPolicy
|
|
269
|
-
identity: () => Promise<RemoteIdentityConfig>
|
|
270
|
-
corsHeaders: Record<string, string>
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
const PLACEHOLDER_RE = /\{(\w+)([+*])?\}/g
|
|
274
|
-
|
|
275
|
-
function mountEntry(args: MountEntryArgs): void {
|
|
276
|
-
const { app, binding, workerHost, defaultMethod, run, auth, identity, corsHeaders } = args
|
|
277
|
-
|
|
278
|
-
const remoteUrl = binding.remoteUrl
|
|
279
|
-
if (!remoteUrl) return
|
|
280
|
-
|
|
281
|
-
const parsed = parseUrlTemplate(remoteUrl)
|
|
282
|
-
if (parsed.hostPattern && !isSubdomainOf(parsed.hostPattern, workerHost)) return
|
|
283
|
-
|
|
284
|
-
const fullPath = joinPath(parsed.basePath, binding.route?.path ?? '')
|
|
285
|
-
const honoPath = toHonoPath(fullPath)
|
|
286
|
-
const httpMethod = binding.route?.method ?? defaultMethod
|
|
287
|
-
// `route.method` can be any `HttpMethod` (PUT/PATCH/DELETE/*), but only GET
|
|
288
|
-
// and POST are wired below. Fail loudly at mount time rather than silently
|
|
289
|
-
// registering no handler (which would 404 the real request while the OPTIONS
|
|
290
|
-
// preflight still reports the route exists).
|
|
291
|
-
if (httpMethod !== 'GET' && httpMethod !== 'POST') {
|
|
292
|
-
throw new Error(
|
|
293
|
-
`mountAuxiliaryRoutes: unsupported HTTP method "${httpMethod}" for route "${honoPath}". ` +
|
|
294
|
-
`Aux routes (views / remote functions) support only GET and POST.`,
|
|
295
|
-
)
|
|
296
|
-
}
|
|
297
|
-
// Local-dev requests target literal `localhost`, but bindings reference a
|
|
298
|
-
// logical host (`example.localhost`) — so only enforce a Host-header match
|
|
299
|
-
// when the binding has actual placeholders to extract.
|
|
300
|
-
const hostMatcher =
|
|
301
|
-
parsed.hostPlaceholders.length > 0 ? compileHostMatcher(parsed.hostPattern) : null
|
|
302
|
-
const pathParamNames = collectPlaceholderNames(fullPath)
|
|
303
|
-
|
|
304
|
-
const handler = async (c: Context): Promise<Response> => {
|
|
305
|
-
// Apply CORS to every response. `c.json(...)` / `c.body(...)` pick up the
|
|
306
|
-
// headers via the Hono context; raw `Response` objects — a View's `render`
|
|
307
|
-
// return, and `errorResponse` in the catch — do NOT, so the final returned
|
|
308
|
-
// Response is also passed through `applyCorsToResponse`.
|
|
309
|
-
applyCorsToContext(c, corsHeaders)
|
|
310
|
-
try {
|
|
311
|
-
let hostParams: Record<string, string> = {}
|
|
312
|
-
if (hostMatcher) {
|
|
313
|
-
const match = matchHost(hostMatcher, c.req.header('host') ?? '')
|
|
314
|
-
if (!match) return c.notFound()
|
|
315
|
-
hostParams = match
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
const pathParams: Record<string, string> = {}
|
|
319
|
-
for (const name of pathParamNames) {
|
|
320
|
-
const value = c.req.param(name)
|
|
321
|
-
if (value !== undefined) pathParams[name] = decodeURIComponent(value)
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
const resolvedIdentity = await identity()
|
|
325
|
-
const { auth: resolvedAuth, kernel } = await resolveInboundAuth(
|
|
326
|
-
stripBearerPrefix(c.req.header('authorization') ?? ''),
|
|
327
|
-
auth,
|
|
328
|
-
resolvedIdentity,
|
|
329
|
-
)
|
|
330
|
-
|
|
331
|
-
const response = await run({
|
|
332
|
-
c,
|
|
333
|
-
params: { ...hostParams, ...pathParams },
|
|
334
|
-
auth: resolvedAuth,
|
|
335
|
-
kernel,
|
|
336
|
-
identity: resolvedIdentity,
|
|
337
|
-
})
|
|
338
|
-
return applyCorsToResponse(response, corsHeaders)
|
|
339
|
-
} catch (err) {
|
|
340
|
-
return applyCorsToResponse(errorResponse(err), corsHeaders)
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
if (httpMethod === 'GET') app.get(honoPath, handler)
|
|
345
|
-
else if (httpMethod === 'POST') app.post(honoPath, handler)
|
|
346
|
-
|
|
347
|
-
// Per-route preflight — mirrors `createKernelApp`'s per-route
|
|
348
|
-
// `app.options(...)` pattern (kernel/server/app/create.ts:112,145). Avoid
|
|
349
|
-
// a wildcard `app.options('*', ...)`: it would intercept the kernel
|
|
350
|
-
// envelope's own preflights mounted later on this same Hono instance.
|
|
351
|
-
app.options(honoPath, (c) => {
|
|
352
|
-
applyCorsToContext(c, corsHeaders)
|
|
353
|
-
return c.body(null, 204)
|
|
354
|
-
})
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
type RemoteFunctionInput = {
|
|
358
|
-
params: unknown
|
|
359
|
-
enveloped: boolean
|
|
360
|
-
id?: RequestId
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
/**
|
|
364
|
-
* A Function binding is reached in two legitimate ways:
|
|
365
|
-
* - kernel-client follows a graph redirect and sends the canonical kernel envelope;
|
|
366
|
-
* - an external webhook caller POSTs its raw JSON contract directly.
|
|
367
|
-
*
|
|
368
|
-
* The vendor content type is the discriminator. Shape-sniffing would break a valid
|
|
369
|
-
* webhook whose own payload happens to contain `method` and `params` fields.
|
|
370
|
-
*/
|
|
371
|
-
async function readRemoteFunctionInput(c: Context): Promise<RemoteFunctionInput> {
|
|
372
|
-
const contentType = c.req.header('content-type') ?? ''
|
|
373
|
-
const isJsonEnvelope = contentType.includes(KERNEL_CONTENT_TYPE_JSON)
|
|
374
|
-
const isMsgpackEnvelope = contentType.includes(KERNEL_CONTENT_TYPE_MSGPACK)
|
|
375
|
-
|
|
376
|
-
if (isJsonEnvelope || isMsgpackEnvelope) {
|
|
377
|
-
const bytes = new Uint8Array(await c.req.raw.clone().arrayBuffer())
|
|
378
|
-
const codec = resolveCodec(isMsgpackEnvelope ? 'msgpack' : 'json')
|
|
379
|
-
const request = decodeKernelRequest(codec.decode(bytes))
|
|
380
|
-
return { params: request.params, enveloped: true, id: request.id }
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
const params: unknown = await c.req.raw
|
|
384
|
-
.clone()
|
|
385
|
-
.json()
|
|
386
|
-
.catch(() => ({}))
|
|
387
|
-
return { params, enveloped: false }
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
function applyCorsToContext(c: Context, headers: Record<string, string>): void {
|
|
391
|
-
for (const [name, value] of Object.entries(headers)) c.header(name, value)
|
|
392
|
-
}
|
|
393
|
-
|
|
394
|
-
function applyCorsToResponse(response: Response, headers: Record<string, string>): Response {
|
|
395
|
-
try {
|
|
396
|
-
for (const [name, value] of Object.entries(headers)) response.headers.set(name, value)
|
|
397
|
-
return response
|
|
398
|
-
} catch {
|
|
399
|
-
// Some Responses have immutable headers — notably `Response.redirect(...)`,
|
|
400
|
-
// which a View's `render` is documented to return. Rebuild with a mutable
|
|
401
|
-
// header copy so CORS still applies (status / body / location preserved).
|
|
402
|
-
const merged = new Headers(response.headers)
|
|
403
|
-
for (const [name, value] of Object.entries(headers)) merged.set(name, value)
|
|
404
|
-
return new Response(response.body, {
|
|
405
|
-
status: response.status,
|
|
406
|
-
statusText: response.statusText,
|
|
407
|
-
headers: merged,
|
|
408
|
-
})
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
function collectPlaceholderNames(path: string): string[] {
|
|
413
|
-
return [...path.matchAll(PLACEHOLDER_RE)].map((m) => m[1]!)
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
/**
|
|
417
|
-
* Serialize an error as the canonical kernel error envelope
|
|
418
|
-
* `{ error: { code, message, data } }` with the matching HTTP status. This is
|
|
419
|
-
* the exact shape the routed client (`kernel-client` HttpRoutedTransport.
|
|
420
|
-
* decodeError) parses — it routes on `error.code` and reads `error.data` for
|
|
421
|
-
* field-level detail (a flat `{ error: '<string>' }` body silently degrades to
|
|
422
|
-
* a generic INTERNAL_ERROR client-side). Every SDK error class (AuthMissingError,
|
|
423
|
-
* SdkValidationError, SdkResultValidationError, AuthorizationDeniedError, …) plus
|
|
424
|
-
* the kernel-core errors `resolveInboundAuth` rethrows all implement
|
|
425
|
-
* `toKernelErrorPayload`, so one branch covers them; only a raw non-classifiable
|
|
426
|
-
* Error falls back to 500.
|
|
427
|
-
*/
|
|
428
|
-
function errorResponse(err: unknown): Response {
|
|
429
|
-
const payload: KernelErrorPayload = isKernelErrorClassifiable(err)
|
|
430
|
-
? err.toKernelErrorPayload()
|
|
431
|
-
: {
|
|
432
|
-
code: KERNEL_ERROR_CODES.INTERNAL_ERROR,
|
|
433
|
-
message: err instanceof Error ? err.message : 'Internal error',
|
|
434
|
-
}
|
|
435
|
-
return Response.json({ error: payload }, { status: kernelErrorHttpStatus(payload.code) })
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
function joinPath(a: string, b: string): string {
|
|
439
|
-
if (!b) return a
|
|
440
|
-
if (!a) return b
|
|
441
|
-
const left = a.endsWith('/') ? a.slice(0, -1) : a
|
|
442
|
-
const right = b.startsWith('/') ? b : `/${b}`
|
|
443
|
-
return `${left}${right}` || '/'
|
|
444
|
-
}
|
|
445
|
-
|
|
446
|
-
/** Convert `/foo/{id}` / `/{name+}` / `/{name*}` to Hono syntax. */
|
|
447
|
-
function toHonoPath(path: string): string {
|
|
448
|
-
return path
|
|
449
|
-
.replace(/\{(\w+)\+\}/g, ':$1{.+}')
|
|
450
|
-
.replace(/\{(\w+)\*\}/g, ':$1{.*}')
|
|
451
|
-
.replace(/\{(\w+)\}/g, ':$1')
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
function stripBearerPrefix(value: string): string {
|
|
455
|
-
return value.trim().replace(/^Bearer\s+/i, '')
|
|
456
|
-
}
|
package/src/server/config.ts
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `RemoteServerConfig` — input shape for `createRemoteServer`.
|
|
3
|
-
*
|
|
4
|
-
* Identity is per-function: `iss` = the worker's serving URL (`config.url`),
|
|
5
|
-
* `sub` = the function path, signed on each dispatch. No single `subject`.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
import type { CorsConfig, WsAdapter } from '@astrale-os/kernel-server'
|
|
9
|
-
import type { Context } from 'hono'
|
|
10
|
-
import type { Hono } from 'hono'
|
|
11
|
-
|
|
12
|
-
import type { RemoteDomain } from '../domain/define.js'
|
|
13
|
-
|
|
14
|
-
export type RemoteServerConfig<TDeps> = {
|
|
15
|
-
/** Domain produced by `defineRemoteDomain(...)`. */
|
|
16
|
-
domain: RemoteDomain
|
|
17
|
-
/** Dependency container passed to every handler as `ctx.deps`. */
|
|
18
|
-
deps: TDeps
|
|
19
|
-
/**
|
|
20
|
-
* Server URL — the serving location AND the worker's JWT issuer identity
|
|
21
|
-
* (`iss`), decoupled from the addressing `origin` slug.
|
|
22
|
-
*
|
|
23
|
-
* The server's public key is published at `<url>/.well-known/jwks.json`
|
|
24
|
-
* so downstream verifiers can validate credentials signed by this server.
|
|
25
|
-
*/
|
|
26
|
-
url: string
|
|
27
|
-
/** Private key used to sign outbound credentials. Public form is exposed via JWKS. */
|
|
28
|
-
privateKey: JsonWebKey
|
|
29
|
-
/** Allowed transports. `'http'` is mandatory. `'ws'` is opt-in. Defaults to `['http']`. */
|
|
30
|
-
transports?: readonly ('http' | 'ws')[]
|
|
31
|
-
/**
|
|
32
|
-
* Runtime-specific WS adapter (from `hono/bun`, `@hono/node-ws`, `hono/deno`).
|
|
33
|
-
* Required when `transports` includes `'ws'`.
|
|
34
|
-
*/
|
|
35
|
-
ws?: WsAdapter
|
|
36
|
-
/** CORS configuration. Defaults to `{ origin: '*' }`. */
|
|
37
|
-
cors?: CorsConfig
|
|
38
|
-
/** Optional health endpoint path (defaults to `/health`; `false` disables). */
|
|
39
|
-
health?: string | false
|
|
40
|
-
/** Pre-existing Hono app to attach to (for nesting the SDK under a parent router). */
|
|
41
|
-
app?: Hono
|
|
42
|
-
/**
|
|
43
|
-
* Provenance stamped onto the auto-mounted `/meta` endpoint. Typically
|
|
44
|
-
* injected at build time by the bundler so downstream tooling can detect
|
|
45
|
-
* version drift between deployed server and expected schema.
|
|
46
|
-
*/
|
|
47
|
-
meta?: {
|
|
48
|
-
sdkCommit?: string
|
|
49
|
-
schemaHash?: string
|
|
50
|
-
domainName?: string
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Typed colon-path to a callable the installing kernel calls ONCE as the
|
|
54
|
-
* system identity, immediately after the domain installs. Use it to seed
|
|
55
|
-
* nodes and self-grant. Must be a semantic domain path under this domain's
|
|
56
|
-
* own origin (`/:origin:class.X:seed` / `/:origin:interface.Ops:seed`) — the
|
|
57
|
-
* kernel's origin guard refuses absolute tree paths, which cannot prove
|
|
58
|
-
* their origin from the string alone. Returned verbatim in the install
|
|
59
|
-
* bundle (a routing hint — the signed `graph_hash` already constrains what
|
|
60
|
-
* the callable can be).
|
|
61
|
-
*
|
|
62
|
-
* Example: `/:crm.acme.dev:class.Note:seed`
|
|
63
|
-
*/
|
|
64
|
-
postInstall?: string
|
|
65
|
-
/**
|
|
66
|
-
* Cross-domain dependencies by origin. Returned in the install bundle; the
|
|
67
|
-
* kernel verifies each origin is already present on the instance before
|
|
68
|
-
* installing, and refuses with a clear error if one is missing.
|
|
69
|
-
*/
|
|
70
|
-
requires?: readonly string[]
|
|
71
|
-
/**
|
|
72
|
-
* Optional private install hook. Throw to deny the install request.
|
|
73
|
-
* The public URL install contract still receives no caller kernel
|
|
74
|
-
* credential; private installs use the bearer token only.
|
|
75
|
-
*/
|
|
76
|
-
install?: {
|
|
77
|
-
authorize?: (args: {
|
|
78
|
-
c: Context
|
|
79
|
-
token?: string
|
|
80
|
-
kernelIssuer: string
|
|
81
|
-
nonce: string
|
|
82
|
-
deps: TDeps
|
|
83
|
-
}) => void | Promise<void>
|
|
84
|
-
}
|
|
85
|
-
}
|