@astrale-os/sdk 0.4.19 → 0.5.0-beta.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 +5 -3
- package/dist/auth/index.d.ts +3 -15
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +2 -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 +90 -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 +66 -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 +91 -65
- package/dist/domain/define.d.ts.map +1 -1
- package/dist/domain/define.js +74 -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 +11 -4
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +6 -3
- package/dist/domain/index.js.map +1 -1
- 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 +266 -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 +113 -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 +16 -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 +156 -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 +35 -0
- package/dist/server/application.d.ts.map +1 -0
- package/dist/server/application.js +124 -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 +51 -0
- package/dist/server/remote.d.ts.map +1 -0
- package/dist/server/remote.js +631 -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 +56 -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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.js","sourceRoot":"","sources":["../../../../src/linter/implementations/source/global.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SourceProject } from '../../adapters/typescript/index.js';
|
|
2
|
+
import type { RuleImplementation } from '../../evaluation/index.js';
|
|
3
|
+
export declare const sourceRuleImplementations: readonly RuleImplementation<SourceProject>[];
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/linter/implementations/source/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAKnE,eAAO,MAAM,yBAAyB,EAAE,SAAS,kBAAkB,CAAC,aAAa,CAAC,EACpB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/linter/implementations/source/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,CAAC,MAAM,yBAAyB,GACpC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../../../src/linter/implementations/source/integrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,eAAe,CAAA;AA0B3E,eAAO,MAAM,gBAAgB,EAAE,SAAS,kBAAkB,EA+EzD,CAAA"}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { importedSymbol, propertyChain, resolveImportedSymbol, resolveProjectImport, unwrap, visit, } from '../../adapters/typescript/index.js';
|
|
3
|
+
import { ambiguity, production, violation } from './shared.js';
|
|
4
|
+
const LOCAL_DOMAIN_LAYERS = new Set([
|
|
5
|
+
'functions',
|
|
6
|
+
'mutations',
|
|
7
|
+
'queries',
|
|
8
|
+
'rules',
|
|
9
|
+
'schema',
|
|
10
|
+
'states',
|
|
11
|
+
'ui',
|
|
12
|
+
'views',
|
|
13
|
+
'workflows',
|
|
14
|
+
]);
|
|
15
|
+
const GRAPH_OPERATIONS = new Set(['mutate', 'query', 'invoke', 'bindWorkflow', 'defineWorkflow']);
|
|
16
|
+
export const integrationRules = [
|
|
17
|
+
{
|
|
18
|
+
id: 'INT-XDOM-TYPED',
|
|
19
|
+
ruleRevision: '9bbe6b265c3a251accb0d90e0103fc703fe61bd06f96683fe8f995c1380128e0',
|
|
20
|
+
evaluate(project) {
|
|
21
|
+
const evidence = [];
|
|
22
|
+
for (const file of production(project, 'integrations')) {
|
|
23
|
+
visit(file.source, (node) => {
|
|
24
|
+
if (ts.isCallExpression(node)) {
|
|
25
|
+
const symbol = resolveImportedSymbol(file, node.expression);
|
|
26
|
+
if (symbol.kind === 'resolved' &&
|
|
27
|
+
symbol.name === 'bindDomain' &&
|
|
28
|
+
isKernelClientModule(symbol.module) &&
|
|
29
|
+
node.arguments.length < 2) {
|
|
30
|
+
evidence.push(violation(file, node, 'Remote Domain binding omits the exact public Domain schema.'));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (ts.isAsExpression(node) &&
|
|
34
|
+
node.type.kind === ts.SyntaxKind.NeverKeyword &&
|
|
35
|
+
enclosingInvoke(node)) {
|
|
36
|
+
evidence.push(violation(file, node, 'Remote Domain invocation fabricates a never cast instead of using the typed public facade.'));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return evidence;
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
id: 'INT-NO-DOMAIN',
|
|
45
|
+
ruleRevision: 'ea8f58e1488c0951242141c0e4f10d2e37fdb8eaf4458a3f0d6d94bd76389b98',
|
|
46
|
+
evaluate(project) {
|
|
47
|
+
const evidence = [];
|
|
48
|
+
for (const file of production(project, 'integrations')) {
|
|
49
|
+
for (const sourceImport of file.imports) {
|
|
50
|
+
const target = resolveProjectImport(project, file, sourceImport.specifier);
|
|
51
|
+
if (target?.layer && LOCAL_DOMAIN_LAYERS.has(target.layer)) {
|
|
52
|
+
evidence.push(violation(file, sourceImport.node, `Integration imports local Domain layer ${target.layer}.`));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
visit(file.source, (node) => {
|
|
56
|
+
if (!ts.isCallExpression(node))
|
|
57
|
+
return;
|
|
58
|
+
const chain = propertyChain(node.expression);
|
|
59
|
+
const name = chain?.at(-1);
|
|
60
|
+
if (name && GRAPH_OPERATIONS.has(name) && !remoteDomainInvoke(file, node)) {
|
|
61
|
+
evidence.push(ambiguity(file, node, `Integration call ${chain?.join('.')} resembles a local Domain operation but its receiver is opaque.`));
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
return evidence;
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
function remoteDomainInvoke(file, call) {
|
|
70
|
+
const expression = unwrap(call.expression);
|
|
71
|
+
if (!ts.isPropertyAccessExpression(expression) ||
|
|
72
|
+
expression.name.text !== 'invoke' ||
|
|
73
|
+
!ts.isIdentifier(unwrap(expression.expression))) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
const receiver = unwrap(expression.expression);
|
|
77
|
+
const binding = lexicalBinding(receiver);
|
|
78
|
+
return Boolean(binding.found && binding.type && isDomainBindingType(file, binding.type));
|
|
79
|
+
}
|
|
80
|
+
function lexicalBinding(identifier) {
|
|
81
|
+
let current = identifier.parent;
|
|
82
|
+
while (current) {
|
|
83
|
+
if (ts.isFunctionLike(current)) {
|
|
84
|
+
for (const parameter of current.parameters) {
|
|
85
|
+
if (ts.isIdentifier(parameter.name) && parameter.name.text === identifier.text) {
|
|
86
|
+
return { found: true, ...(parameter.type ? { type: parameter.type } : {}) };
|
|
87
|
+
}
|
|
88
|
+
if (bindingContains(parameter.name, identifier.text))
|
|
89
|
+
return { found: true };
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (ts.isCatchClause(current) &&
|
|
93
|
+
current.variableDeclaration &&
|
|
94
|
+
bindingContains(current.variableDeclaration.name, identifier.text)) {
|
|
95
|
+
return { found: true };
|
|
96
|
+
}
|
|
97
|
+
if (ts.isBlock(current) || ts.isSourceFile(current) || ts.isModuleBlock(current)) {
|
|
98
|
+
for (const statement of current.statements) {
|
|
99
|
+
const binding = statementBinding(statement, identifier.text);
|
|
100
|
+
if (binding.found)
|
|
101
|
+
return binding;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
if ((ts.isForStatement(current) ||
|
|
105
|
+
ts.isForInStatement(current) ||
|
|
106
|
+
ts.isForOfStatement(current)) &&
|
|
107
|
+
current.initializer &&
|
|
108
|
+
ts.isVariableDeclarationList(current.initializer)) {
|
|
109
|
+
for (const declaration of current.initializer.declarations) {
|
|
110
|
+
if (bindingContains(declaration.name, identifier.text)) {
|
|
111
|
+
return { found: true, ...(declaration.type ? { type: declaration.type } : {}) };
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
current = current.parent;
|
|
116
|
+
}
|
|
117
|
+
return { found: false };
|
|
118
|
+
}
|
|
119
|
+
function statementBinding(statement, name) {
|
|
120
|
+
if (ts.isVariableStatement(statement)) {
|
|
121
|
+
for (const declaration of statement.declarationList.declarations) {
|
|
122
|
+
if (bindingContains(declaration.name, name)) {
|
|
123
|
+
return { found: true, ...(declaration.type ? { type: declaration.type } : {}) };
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
if (((ts.isFunctionDeclaration(statement) ||
|
|
128
|
+
ts.isClassDeclaration(statement) ||
|
|
129
|
+
ts.isEnumDeclaration(statement) ||
|
|
130
|
+
ts.isModuleDeclaration(statement)) &&
|
|
131
|
+
statement.name?.text === name) ||
|
|
132
|
+
(ts.isImportDeclaration(statement) && importDeclares(statement, name))) {
|
|
133
|
+
return { found: true };
|
|
134
|
+
}
|
|
135
|
+
return { found: false };
|
|
136
|
+
}
|
|
137
|
+
function importDeclares(statement, name) {
|
|
138
|
+
const clause = statement.importClause;
|
|
139
|
+
if (!clause)
|
|
140
|
+
return false;
|
|
141
|
+
if (clause.name?.text === name)
|
|
142
|
+
return true;
|
|
143
|
+
const bindings = clause.namedBindings;
|
|
144
|
+
if (bindings && ts.isNamespaceImport(bindings))
|
|
145
|
+
return bindings.name.text === name;
|
|
146
|
+
return Boolean(bindings && bindings.elements.some((element) => element.name.text === name));
|
|
147
|
+
}
|
|
148
|
+
function bindingContains(binding, name) {
|
|
149
|
+
if (ts.isIdentifier(binding))
|
|
150
|
+
return binding.text === name;
|
|
151
|
+
return binding.elements.some((element) => !ts.isOmittedExpression(element) && bindingContains(element.name, name));
|
|
152
|
+
}
|
|
153
|
+
function isDomainBindingType(file, type) {
|
|
154
|
+
if (!ts.isTypeReferenceNode(type))
|
|
155
|
+
return false;
|
|
156
|
+
let module;
|
|
157
|
+
let name;
|
|
158
|
+
if (ts.isIdentifier(type.typeName)) {
|
|
159
|
+
const symbol = importedSymbol(file, type.typeName);
|
|
160
|
+
module = symbol?.module;
|
|
161
|
+
name = symbol?.name;
|
|
162
|
+
}
|
|
163
|
+
else if (ts.isQualifiedName(type.typeName) && ts.isIdentifier(type.typeName.left)) {
|
|
164
|
+
const namespaceName = type.typeName.left.text;
|
|
165
|
+
const sourceImport = file.imports.find(({ namespace }) => namespace === namespaceName);
|
|
166
|
+
module = sourceImport?.specifier;
|
|
167
|
+
name = type.typeName.right.text;
|
|
168
|
+
}
|
|
169
|
+
return Boolean(name === 'DomainBinding' && module && isKernelClientModule(module));
|
|
170
|
+
}
|
|
171
|
+
function isKernelClientModule(module) {
|
|
172
|
+
return module === '@astrale-os/kernel-client' || module === '@astrale-os/kernel-client/domain';
|
|
173
|
+
}
|
|
174
|
+
function enclosingInvoke(node) {
|
|
175
|
+
let current = node.parent;
|
|
176
|
+
while (current && !ts.isStatement(current)) {
|
|
177
|
+
if (ts.isCallExpression(current)) {
|
|
178
|
+
const expression = unwrap(current.expression);
|
|
179
|
+
if (ts.isPropertyAccessExpression(expression) && expression.name.text === 'invoke')
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
182
|
+
current = current.parent;
|
|
183
|
+
}
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
//# sourceMappingURL=integrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../../../src/linter/implementations/source/integrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../../src/linter/implementations/source/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,eAAe,CAAA;AAiC3E,eAAO,MAAM,cAAc,EAAE,SAAS,kBAAkB,EAoGvD,CAAA"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { importedSymbol, propertyChain, resolveProjectImport, unwrap, visit, } from '../../adapters/typescript/index.js';
|
|
3
|
+
import { ambiguity, definitionOriginAmbiguity, definitionObjects, forbiddenIoImport, production, propertyExpression, violation, } from './shared.js';
|
|
4
|
+
const FORBIDDEN_LAYERS = new Set([
|
|
5
|
+
'capabilities',
|
|
6
|
+
'functions',
|
|
7
|
+
'integrations',
|
|
8
|
+
'mutations',
|
|
9
|
+
'queries',
|
|
10
|
+
'scripts',
|
|
11
|
+
'ui',
|
|
12
|
+
'views',
|
|
13
|
+
'workflows',
|
|
14
|
+
]);
|
|
15
|
+
export const migrationRules = [
|
|
16
|
+
{
|
|
17
|
+
id: 'MIG-EXACT-REVS',
|
|
18
|
+
ruleRevision: '2353d23e19e0afa948b8c8c15b906a2e1427622cea441001d7e28c6fea81c860',
|
|
19
|
+
evaluate(project) {
|
|
20
|
+
const evidence = [];
|
|
21
|
+
const origins = schemaOrigins(project);
|
|
22
|
+
for (const file of production(project, 'migrations')) {
|
|
23
|
+
for (const definition of definitionObjects(file, 'defineMigration')) {
|
|
24
|
+
const uncertain = definitionOriginAmbiguity(file, definition, 'Migration definition');
|
|
25
|
+
if (uncertain) {
|
|
26
|
+
evidence.push(uncertain);
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
const { call, object } = definition;
|
|
30
|
+
if (!object) {
|
|
31
|
+
evidence.push(ambiguity(file, call, 'Migration descriptor is not a static object literal.'));
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
const from = propertyExpression(object, 'from');
|
|
35
|
+
const to = propertyExpression(object, 'to');
|
|
36
|
+
if (!from || !to) {
|
|
37
|
+
evidence.push(violation(file, object, 'Migration must declare exactly one from and one to revision.'));
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
const fromSchema = revisionSchema(file, from);
|
|
41
|
+
const toSchema = revisionSchema(file, to);
|
|
42
|
+
if (!fromSchema || !toSchema) {
|
|
43
|
+
evidence.push(ambiguity(file, !fromSchema ? from : to, 'Migration revision is not one static schema.revision binding.'));
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
if (fromSchema === toSchema) {
|
|
47
|
+
evidence.push(violation(file, to, `Migration source and target are both ${toSchema}.`));
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const fromOrigin = origins.get(fromSchema);
|
|
51
|
+
const toOrigin = origins.get(toSchema);
|
|
52
|
+
if (!fromOrigin || !toOrigin) {
|
|
53
|
+
evidence.push(ambiguity(file, object, `Cannot establish origins for ${fromSchema} and ${toSchema}.`));
|
|
54
|
+
}
|
|
55
|
+
else if (fromOrigin !== toOrigin) {
|
|
56
|
+
evidence.push(violation(file, object, `Migration crosses Domain origins ${fromOrigin} and ${toOrigin}.`));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return evidence;
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
id: 'MIG-DEDICATED-CTX',
|
|
65
|
+
ruleRevision: 'b8e1985f0cd18646ca40a9f03c3cc683968849142c387772a2251b1787d5552e',
|
|
66
|
+
evaluate(project) {
|
|
67
|
+
const evidence = [];
|
|
68
|
+
for (const file of production(project, 'migrations')) {
|
|
69
|
+
for (const sourceImport of file.imports) {
|
|
70
|
+
const target = resolveProjectImport(project, file, sourceImport.specifier);
|
|
71
|
+
const layer = target?.layer ?? sourceImport.specifier.match(/^#([^/]+)\//)?.[1];
|
|
72
|
+
if ((layer && FORBIDDEN_LAYERS.has(layer)) ||
|
|
73
|
+
forbiddenIoImport(sourceImport.specifier) ||
|
|
74
|
+
sourceImport.specifier.startsWith('@astrale-os/adapter-')) {
|
|
75
|
+
evidence.push(violation(file, sourceImport.node, `Migration imports forbidden boundary ${sourceImport.specifier}.`));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return evidence;
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
function revisionSchema(file, expression) {
|
|
84
|
+
const target = unwrap(expression);
|
|
85
|
+
if (!ts.isCallExpression(target) || target.arguments.length !== 1)
|
|
86
|
+
return undefined;
|
|
87
|
+
const chain = propertyChain(target.expression);
|
|
88
|
+
if (chain?.at(-1) !== 'revision')
|
|
89
|
+
return undefined;
|
|
90
|
+
const schema = unwrap(target.arguments[0]);
|
|
91
|
+
if (!ts.isIdentifier(schema))
|
|
92
|
+
return undefined;
|
|
93
|
+
const symbol = importedSymbol(file, schema);
|
|
94
|
+
return symbol?.name ?? schema.text;
|
|
95
|
+
}
|
|
96
|
+
function schemaOrigins(project) {
|
|
97
|
+
const result = new Map();
|
|
98
|
+
for (const file of production(project, 'schema')) {
|
|
99
|
+
visit(file.source, (node) => {
|
|
100
|
+
if (!ts.isVariableDeclaration(node) || !ts.isIdentifier(node.name) || !node.initializer)
|
|
101
|
+
return;
|
|
102
|
+
const value = unwrap(node.initializer);
|
|
103
|
+
if (!ts.isCallExpression(value))
|
|
104
|
+
return;
|
|
105
|
+
const symbol = importedSymbol(file, value.expression);
|
|
106
|
+
if (symbol?.name !== 'defineSchema')
|
|
107
|
+
return;
|
|
108
|
+
const origin = value.arguments[0];
|
|
109
|
+
if (origin && ts.isStringLiteral(unwrap(origin)))
|
|
110
|
+
result.set(node.name.text, unwrap(origin).text);
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
return result;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=migrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../../src/linter/implementations/source/migrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutations.d.ts","sourceRoot":"","sources":["../../../../src/linter/implementations/source/mutations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,eAAe,CAAA;AAwB3E,eAAO,MAAM,aAAa,EAAE,SAAS,kBAAkB,EA8MtD,CAAA"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { importedSymbol, propertyChain, unwrap, visit } from '../../adapters/typescript/index.js';
|
|
3
|
+
import { ambiguity, callback, definitionOriginAmbiguity, definitionObjects, forbiddenIoImport, hasForbiddenGlobalCall, production, returnedExpressions, violation, } from './shared.js';
|
|
4
|
+
const FORBIDDEN_LAYERS = new Set([
|
|
5
|
+
'capabilities',
|
|
6
|
+
'functions',
|
|
7
|
+
'integrations',
|
|
8
|
+
'queries',
|
|
9
|
+
'workflows',
|
|
10
|
+
]);
|
|
11
|
+
const FORBIDDEN_CALLS = new Set(['invoke', 'query', 'retry', 'run', 'submit']);
|
|
12
|
+
export const mutationRules = [
|
|
13
|
+
{
|
|
14
|
+
id: 'MUT-CANON',
|
|
15
|
+
ruleRevision: '02de3e2ece6aed702fd85bd16214f967cf74a516600247c4e6b1393139814c7a',
|
|
16
|
+
evaluate(project) {
|
|
17
|
+
const evidence = [];
|
|
18
|
+
for (const file of production(project, 'mutations')) {
|
|
19
|
+
for (const definition of definitionObjects(file, 'defineMutation')) {
|
|
20
|
+
const uncertain = definitionOriginAmbiguity(file, definition, 'Mutation definition');
|
|
21
|
+
if (uncertain) {
|
|
22
|
+
evidence.push(uncertain);
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
const { call, object } = definition;
|
|
26
|
+
if (!object) {
|
|
27
|
+
evidence.push(ambiguity(file, call, 'Mutation definition is not a static object literal.'));
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
const build = callback(object, 'build');
|
|
31
|
+
if (!build) {
|
|
32
|
+
evidence.push(violation(file, object, 'Mutation definition has no build callback.'));
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const returns = returnedExpressions(build);
|
|
36
|
+
if (returns.length !== 1) {
|
|
37
|
+
evidence.push(violation(file, build, `Mutation build exposes ${returns.length} author callbacks; expected one.`));
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
const author = returns[0];
|
|
41
|
+
if (!ts.isArrowFunction(author) && !ts.isFunctionExpression(author)) {
|
|
42
|
+
evidence.push(ts.isIdentifier(author)
|
|
43
|
+
? ambiguity(file, author, 'MutationAuthor helper cannot be proven from the local callback body.')
|
|
44
|
+
: violation(file, author, 'Mutation build does not return an inline MutationAuthor callback.'));
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
if (author.modifiers?.some(({ kind }) => kind === ts.SyntaxKind.AsyncKeyword)) {
|
|
48
|
+
evidence.push(violation(file, author, 'MutationAuthor callback is async.'));
|
|
49
|
+
}
|
|
50
|
+
let nestedBuilds = 0;
|
|
51
|
+
visit(author.body, (node) => {
|
|
52
|
+
if (!ts.isCallExpression(node))
|
|
53
|
+
return;
|
|
54
|
+
const symbol = importedSymbol(file, node.expression);
|
|
55
|
+
const chain = propertyChain(node.expression);
|
|
56
|
+
if (symbol?.name === 'MutationAST' ||
|
|
57
|
+
(chain?.includes('MutationAST') && chain.at(-1) === 'build')) {
|
|
58
|
+
nestedBuilds += 1;
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
if (nestedBuilds > 0) {
|
|
62
|
+
evidence.push(violation(file, author, 'Mutation definition constructs a nested MutationAST.'));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return evidence;
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
id: 'MUT-FRAGMENTS',
|
|
71
|
+
ruleRevision: '6102ea4dbe2e461ef38b98afcfbe28639f4f472ee6a83e44ce6aad7de3c3c7ef',
|
|
72
|
+
evaluate(project) {
|
|
73
|
+
const evidence = [];
|
|
74
|
+
for (const file of production(project, 'mutations')) {
|
|
75
|
+
for (const definition of definitionObjects(file, 'defineMutation')) {
|
|
76
|
+
const uncertain = definitionOriginAmbiguity(file, definition, 'Mutation definition');
|
|
77
|
+
if (uncertain) {
|
|
78
|
+
evidence.push(uncertain);
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
const { object } = definition;
|
|
82
|
+
const build = object && callback(object, 'build');
|
|
83
|
+
const authorExpression = build && returnedExpressions(build)[0];
|
|
84
|
+
if (!authorExpression ||
|
|
85
|
+
(!ts.isArrowFunction(authorExpression) && !ts.isFunctionExpression(authorExpression)))
|
|
86
|
+
continue;
|
|
87
|
+
const builderName = authorExpression.parameters[0]?.name;
|
|
88
|
+
if (!builderName || !ts.isIdentifier(builderName)) {
|
|
89
|
+
evidence.push(ambiguity(file, authorExpression, 'MutationAuthor builder parameter is not an identifier.'));
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
visitOwnBody(authorExpression, (node) => {
|
|
93
|
+
if (ts.isReturnStatement(node) && node.expression) {
|
|
94
|
+
evidence.push(violation(file, node, 'Mutation fragment author callback returns a value or escaped builder.'));
|
|
95
|
+
}
|
|
96
|
+
if (!ts.isCallExpression(node))
|
|
97
|
+
return;
|
|
98
|
+
const chain = propertyChain(node.expression);
|
|
99
|
+
if (chain?.[0] === builderName.text)
|
|
100
|
+
return;
|
|
101
|
+
if (!referencesIdentifier(node.arguments, builderName.text))
|
|
102
|
+
return;
|
|
103
|
+
const first = node.arguments[0];
|
|
104
|
+
if (!first ||
|
|
105
|
+
!ts.isIdentifier(unwrap(first)) ||
|
|
106
|
+
unwrap(first).text !== builderName.text) {
|
|
107
|
+
evidence.push(violation(file, node, `Mutation fragment must receive ${builderName.text} as its first argument.`));
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return evidence;
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
id: 'MUT-PURE',
|
|
117
|
+
ruleRevision: '0101d7edd7d34e69338aaec7129a14df40d3395b6a58b40265ccb5448e739170',
|
|
118
|
+
evaluate(project) {
|
|
119
|
+
const evidence = [];
|
|
120
|
+
for (const file of production(project, 'mutations')) {
|
|
121
|
+
for (const sourceImport of file.imports) {
|
|
122
|
+
const targetLayer = sourceImport.specifier.match(/^#([^/]+)\//)?.[1];
|
|
123
|
+
if ((targetLayer && FORBIDDEN_LAYERS.has(targetLayer)) ||
|
|
124
|
+
forbiddenIoImport(sourceImport.specifier) ||
|
|
125
|
+
sourceImport.specifier.startsWith('@astrale-os/adapter-')) {
|
|
126
|
+
evidence.push(violation(file, sourceImport.node, `Mutation imports effect boundary ${sourceImport.specifier}.`));
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
for (const { node, name } of hasForbiddenGlobalCall(file)) {
|
|
130
|
+
evidence.push(violation(file, node, `Mutation definition calls effectful global ${name}.`));
|
|
131
|
+
}
|
|
132
|
+
for (const definition of definitionObjects(file, 'defineMutation')) {
|
|
133
|
+
const uncertain = definitionOriginAmbiguity(file, definition, 'Mutation definition');
|
|
134
|
+
if (uncertain) {
|
|
135
|
+
evidence.push(uncertain);
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
const { object } = definition;
|
|
139
|
+
const build = object && callback(object, 'build');
|
|
140
|
+
if (!build)
|
|
141
|
+
continue;
|
|
142
|
+
visitOwnBody(build, (node) => {
|
|
143
|
+
if (!ts.isCallExpression(node))
|
|
144
|
+
return;
|
|
145
|
+
const symbol = importedSymbol(file, node.expression);
|
|
146
|
+
const chain = propertyChain(node.expression);
|
|
147
|
+
const name = symbol?.name;
|
|
148
|
+
if (name && FORBIDDEN_CALLS.has(name)) {
|
|
149
|
+
evidence.push(violation(file, node, `Mutation definition invokes ${name}.`));
|
|
150
|
+
}
|
|
151
|
+
else if (!symbol &&
|
|
152
|
+
chain &&
|
|
153
|
+
chain.length > 1 &&
|
|
154
|
+
FORBIDDEN_CALLS.has(chain.at(-1) ?? '')) {
|
|
155
|
+
evidence.push(ambiguity(file, node, `Mutation call ${chain.join('.')} resembles an excluded operation but its receiver is opaque.`));
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return evidence;
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
];
|
|
164
|
+
function referencesIdentifier(arguments_, name) {
|
|
165
|
+
let found = false;
|
|
166
|
+
for (const argument of arguments_) {
|
|
167
|
+
visit(argument, (node) => {
|
|
168
|
+
if (ts.isIdentifier(node) && node.text === name)
|
|
169
|
+
found = true;
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
return found;
|
|
173
|
+
}
|
|
174
|
+
function visitOwnBody(fn, callback) {
|
|
175
|
+
if (!fn.body)
|
|
176
|
+
return;
|
|
177
|
+
const walk = (node) => {
|
|
178
|
+
callback(node);
|
|
179
|
+
if (node !== fn.body && ts.isFunctionLike(node))
|
|
180
|
+
return;
|
|
181
|
+
node.forEachChild(walk);
|
|
182
|
+
};
|
|
183
|
+
walk(fn.body);
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=mutations.js.map
|