@intentius/chant 0.7.0 → 0.8.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/dist/attrref.d.ts +35 -0
- package/dist/attrref.d.ts.map +1 -0
- package/dist/audit/catalog.d.ts +65 -0
- package/dist/audit/catalog.d.ts.map +1 -0
- package/dist/audit/core.d.ts +76 -0
- package/dist/audit/core.d.ts.map +1 -0
- package/dist/audit/discover.d.ts +76 -0
- package/dist/audit/discover.d.ts.map +1 -0
- package/dist/audit/fetch.d.ts +90 -0
- package/dist/audit/fetch.d.ts.map +1 -0
- package/dist/audit/proof.d.ts +53 -0
- package/dist/audit/proof.d.ts.map +1 -0
- package/dist/audit/report-html.d.ts +32 -0
- package/dist/audit/report-html.d.ts.map +1 -0
- package/dist/audit/report-model.d.ts +119 -0
- package/dist/audit/report-model.d.ts.map +1 -0
- package/dist/audit/report.d.ts +31 -0
- package/dist/audit/report.d.ts.map +1 -0
- package/dist/audit/rules-doc.d.ts +11 -0
- package/dist/audit/rules-doc.d.ts.map +1 -0
- package/dist/build.d.ts +120 -0
- package/dist/build.d.ts.map +1 -0
- package/dist/builder.d.ts +56 -0
- package/dist/builder.d.ts.map +1 -0
- package/dist/child-project.d.ts +34 -0
- package/dist/child-project.d.ts.map +1 -0
- package/dist/cli/commands/audit.d.ts +60 -0
- package/dist/cli/commands/audit.d.ts.map +1 -0
- package/dist/cli/commands/build.d.ts +70 -0
- package/dist/cli/commands/build.d.ts.map +1 -0
- package/dist/cli/commands/check-lexicon.d.ts +19 -0
- package/dist/cli/commands/check-lexicon.d.ts.map +1 -0
- package/dist/cli/commands/describe.d.ts +39 -0
- package/dist/cli/commands/describe.d.ts.map +1 -0
- package/dist/cli/commands/diff.d.ts +32 -0
- package/dist/cli/commands/diff.d.ts.map +1 -0
- package/dist/cli/commands/doctor.d.ts +11 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/import.d.ts +68 -0
- package/dist/cli/commands/import.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/codegen.d.ts +9 -0
- package/dist/cli/commands/init-lexicon/templates/codegen.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/docs.d.ts +9 -0
- package/dist/cli/commands/init-lexicon/templates/docs.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/examples.d.ts +8 -0
- package/dist/cli/commands/init-lexicon/templates/examples.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/lint.d.ts +8 -0
- package/dist/cli/commands/init-lexicon/templates/lint.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/lsp.d.ts +6 -0
- package/dist/cli/commands/init-lexicon/templates/lsp.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/plugin.d.ts +12 -0
- package/dist/cli/commands/init-lexicon/templates/plugin.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/project.d.ts +19 -0
- package/dist/cli/commands/init-lexicon/templates/project.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/spec.d.ts +6 -0
- package/dist/cli/commands/init-lexicon/templates/spec.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon/templates/tests.d.ts +12 -0
- package/dist/cli/commands/init-lexicon/templates/tests.d.ts.map +1 -0
- package/dist/cli/commands/init-lexicon.d.ts +37 -0
- package/dist/cli/commands/init-lexicon.d.ts.map +1 -0
- package/dist/cli/commands/init.d.ts +48 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/licenses.d.ts +23 -0
- package/dist/cli/commands/licenses.d.ts.map +1 -0
- package/dist/cli/commands/lint.d.ts +52 -0
- package/dist/cli/commands/lint.d.ts.map +1 -0
- package/dist/cli/commands/list.d.ts +38 -0
- package/dist/cli/commands/list.d.ts.map +1 -0
- package/dist/cli/commands/migrate.d.ts +51 -0
- package/dist/cli/commands/migrate.d.ts.map +1 -0
- package/dist/cli/commands/onboard.d.ts +19 -0
- package/dist/cli/commands/onboard.d.ts.map +1 -0
- package/dist/cli/commands/update.d.ts +29 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/vendor.d.ts +84 -0
- package/dist/cli/commands/vendor.d.ts.map +1 -0
- package/dist/cli/conflict-check.d.ts +18 -0
- package/dist/cli/conflict-check.d.ts.map +1 -0
- package/dist/cli/debug.d.ts +5 -0
- package/dist/cli/debug.d.ts.map +1 -0
- package/dist/cli/format.d.ts +36 -0
- package/dist/cli/format.d.ts.map +1 -0
- package/dist/cli/handlers/build.d.ts +3 -0
- package/dist/cli/handlers/build.d.ts.map +1 -0
- package/dist/cli/handlers/dev.d.ts +7 -0
- package/dist/cli/handlers/dev.d.ts.map +1 -0
- package/dist/cli/handlers/graph.d.ts +8 -0
- package/dist/cli/handlers/graph.d.ts.map +1 -0
- package/dist/cli/handlers/init.d.ts +4 -0
- package/dist/cli/handlers/init.d.ts.map +1 -0
- package/dist/cli/handlers/lifecycle.d.ts +39 -0
- package/dist/cli/handlers/lifecycle.d.ts.map +1 -0
- package/dist/cli/handlers/lint.d.ts +3 -0
- package/dist/cli/handlers/lint.d.ts.map +1 -0
- package/dist/cli/handlers/migrate.d.ts +3 -0
- package/dist/cli/handlers/migrate.d.ts.map +1 -0
- package/dist/cli/handlers/misc.d.ts +8 -0
- package/dist/cli/handlers/misc.d.ts.map +1 -0
- package/dist/cli/handlers/run-client.d.ts +107 -0
- package/dist/cli/handlers/run-client.d.ts.map +1 -0
- package/dist/cli/handlers/run-report.d.ts +5 -0
- package/dist/cli/handlers/run-report.d.ts.map +1 -0
- package/dist/cli/handlers/run.d.ts +27 -0
- package/dist/cli/handlers/run.d.ts.map +1 -0
- package/dist/cli/handlers/serve.d.ts +5 -0
- package/dist/cli/handlers/serve.d.ts.map +1 -0
- package/dist/cli/handlers/vendor.d.ts +9 -0
- package/dist/cli/handlers/vendor.d.ts.map +1 -0
- package/dist/cli/index.d.ts +4 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/lsp/capabilities.d.ts +21 -0
- package/dist/cli/lsp/capabilities.d.ts.map +1 -0
- package/dist/cli/lsp/diagnostics.d.ts +30 -0
- package/dist/cli/lsp/diagnostics.d.ts.map +1 -0
- package/dist/cli/lsp/server.d.ts +106 -0
- package/dist/cli/lsp/server.d.ts.map +1 -0
- package/dist/cli/main.d.ts +7 -0
- package/dist/cli/main.d.ts.map +1 -0
- package/dist/cli/mcp/lifecycle-tools.d.ts +15 -0
- package/dist/cli/mcp/lifecycle-tools.d.ts.map +1 -0
- package/dist/cli/mcp/op-tools.d.ts +7 -0
- package/dist/cli/mcp/op-tools.d.ts.map +1 -0
- package/dist/cli/mcp/resource-handlers.d.ts +28 -0
- package/dist/cli/mcp/resource-handlers.d.ts.map +1 -0
- package/dist/cli/mcp/resources/context.d.ts +6 -0
- package/dist/cli/mcp/resources/context.d.ts.map +1 -0
- package/dist/cli/mcp/server.d.ts +44 -0
- package/dist/cli/mcp/server.d.ts.map +1 -0
- package/dist/cli/mcp/tools/build.d.ts +31 -0
- package/dist/cli/mcp/tools/build.d.ts.map +1 -0
- package/dist/cli/mcp/tools/explain.d.ts +27 -0
- package/dist/cli/mcp/tools/explain.d.ts.map +1 -0
- package/dist/cli/mcp/tools/import.d.ts +26 -0
- package/dist/cli/mcp/tools/import.d.ts.map +1 -0
- package/dist/cli/mcp/tools/lint.d.ts +26 -0
- package/dist/cli/mcp/tools/lint.d.ts.map +1 -0
- package/dist/cli/mcp/tools/scaffold.d.ts +31 -0
- package/dist/cli/mcp/tools/scaffold.d.ts.map +1 -0
- package/dist/cli/mcp/tools/search.d.ts +31 -0
- package/dist/cli/mcp/tools/search.d.ts.map +1 -0
- package/dist/cli/mcp/types.d.ts +42 -0
- package/dist/cli/mcp/types.d.ts.map +1 -0
- package/dist/cli/plugins.d.ts +21 -0
- package/dist/cli/plugins.d.ts.map +1 -0
- package/dist/cli/registry.d.ts +100 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/reporters/stylish.d.ts +26 -0
- package/dist/cli/reporters/stylish.d.ts.map +1 -0
- package/dist/cli/watch.d.ts +29 -0
- package/dist/cli/watch.d.ts.map +1 -0
- package/dist/codegen/bound-property-types.d.ts +38 -0
- package/dist/codegen/bound-property-types.d.ts.map +1 -0
- package/dist/codegen/coverage.d.ts +57 -0
- package/dist/codegen/coverage.d.ts.map +1 -0
- package/dist/codegen/docs-file-markers.d.ts +16 -0
- package/dist/codegen/docs-file-markers.d.ts.map +1 -0
- package/dist/codegen/docs-rule-scanning.d.ts +14 -0
- package/dist/codegen/docs-rule-scanning.d.ts.map +1 -0
- package/dist/codegen/docs-rules.d.ts +17 -0
- package/dist/codegen/docs-rules.d.ts.map +1 -0
- package/dist/codegen/docs-sections.d.ts +11 -0
- package/dist/codegen/docs-sections.d.ts.map +1 -0
- package/dist/codegen/docs-sidebar.d.ts +6 -0
- package/dist/codegen/docs-sidebar.d.ts.map +1 -0
- package/dist/codegen/docs-types.d.ts +84 -0
- package/dist/codegen/docs-types.d.ts.map +1 -0
- package/dist/codegen/docs.d.ts +28 -0
- package/dist/codegen/docs.d.ts.map +1 -0
- package/dist/codegen/fetch.d.ts +76 -0
- package/dist/codegen/fetch.d.ts.map +1 -0
- package/dist/codegen/generate-post-synth-barrel.d.ts +32 -0
- package/dist/codegen/generate-post-synth-barrel.d.ts.map +1 -0
- package/dist/codegen/generate-registry.d.ts +40 -0
- package/dist/codegen/generate-registry.d.ts.map +1 -0
- package/dist/codegen/generate-runtime-index.d.ts +40 -0
- package/dist/codegen/generate-runtime-index.d.ts.map +1 -0
- package/dist/codegen/generate-typescript.d.ts +48 -0
- package/dist/codegen/generate-typescript.d.ts.map +1 -0
- package/dist/codegen/generate.d.ts +92 -0
- package/dist/codegen/generate.d.ts.map +1 -0
- package/dist/codegen/json-patch.d.ts +12 -0
- package/dist/codegen/json-patch.d.ts.map +1 -0
- package/dist/codegen/json-schema.d.ts +82 -0
- package/dist/codegen/json-schema.d.ts.map +1 -0
- package/dist/codegen/naming.d.ts +64 -0
- package/dist/codegen/naming.d.ts.map +1 -0
- package/dist/codegen/package.d.ts +64 -0
- package/dist/codegen/package.d.ts.map +1 -0
- package/dist/codegen/topo-sort.d.ts +13 -0
- package/dist/codegen/topo-sort.d.ts.map +1 -0
- package/dist/codegen/typecheck.d.ts +10 -0
- package/dist/codegen/typecheck.d.ts.map +1 -0
- package/dist/codegen/validate.d.ts +45 -0
- package/dist/codegen/validate.d.ts.map +1 -0
- package/dist/composite.d.ts +116 -0
- package/dist/composite.d.ts.map +1 -0
- package/dist/config.d.ts +78 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/declarable.d.ts +34 -0
- package/dist/declarable.d.ts.map +1 -0
- package/dist/detectLexicon.d.ts +10 -0
- package/dist/detectLexicon.d.ts.map +1 -0
- package/dist/discovery/cache.d.ts +36 -0
- package/dist/discovery/cache.d.ts.map +1 -0
- package/dist/discovery/collect.d.ts +17 -0
- package/dist/discovery/collect.d.ts.map +1 -0
- package/dist/discovery/cycles.d.ts +23 -0
- package/dist/discovery/cycles.d.ts.map +1 -0
- package/dist/discovery/files.d.ts +7 -0
- package/dist/discovery/files.d.ts.map +1 -0
- package/dist/discovery/graph.d.ts +8 -0
- package/dist/discovery/graph.d.ts.map +1 -0
- package/dist/discovery/import.d.ts +9 -0
- package/dist/discovery/import.d.ts.map +1 -0
- package/dist/discovery/index.d.ts +25 -0
- package/dist/discovery/index.d.ts.map +1 -0
- package/dist/discovery/resolve.d.ts +10 -0
- package/dist/discovery/resolve.d.ts.map +1 -0
- package/dist/errors.d.ts +49 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/import/base-parser.d.ts +19 -0
- package/dist/import/base-parser.d.ts.map +1 -0
- package/dist/import/generator.d.ts +20 -0
- package/dist/import/generator.d.ts.map +1 -0
- package/dist/import/ir-utils.d.ts +25 -0
- package/dist/import/ir-utils.d.ts.map +1 -0
- package/dist/import/parser.d.ts +39 -0
- package/dist/import/parser.d.ts.map +1 -0
- package/dist/index.d.ts +66 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/intrinsic-interpolation.d.ts +24 -0
- package/dist/intrinsic-interpolation.d.ts.map +1 -0
- package/dist/intrinsic.d.ts +24 -0
- package/dist/intrinsic.d.ts.map +1 -0
- package/dist/lexicon-integrity.d.ts +25 -0
- package/dist/lexicon-integrity.d.ts.map +1 -0
- package/dist/lexicon-manifest.d.ts +9 -0
- package/dist/lexicon-manifest.d.ts.map +1 -0
- package/dist/lexicon-output.d.ts +66 -0
- package/dist/lexicon-output.d.ts.map +1 -0
- package/dist/lexicon-plugin-helpers.d.ts +59 -0
- package/dist/lexicon-plugin-helpers.d.ts.map +1 -0
- package/dist/lexicon-schema.d.ts +82 -0
- package/dist/lexicon-schema.d.ts.map +1 -0
- package/dist/lexicon.d.ts +383 -0
- package/dist/lexicon.d.ts.map +1 -0
- package/dist/lifecycle/affected.d.ts +57 -0
- package/dist/lifecycle/affected.d.ts.map +1 -0
- package/dist/lifecycle/change-set.d.ts +90 -0
- package/dist/lifecycle/change-set.d.ts.map +1 -0
- package/dist/lifecycle/digest.d.ts +21 -0
- package/dist/lifecycle/digest.d.ts.map +1 -0
- package/dist/lifecycle/git.d.ts +72 -0
- package/dist/lifecycle/git.d.ts.map +1 -0
- package/dist/lifecycle/index.d.ts +8 -0
- package/dist/lifecycle/index.d.ts.map +1 -0
- package/dist/lifecycle/live-diff.d.ts +67 -0
- package/dist/lifecycle/live-diff.d.ts.map +1 -0
- package/dist/lifecycle/snapshot.d.ts +20 -0
- package/dist/lifecycle/snapshot.d.ts.map +1 -0
- package/dist/lifecycle/types.d.ts +61 -0
- package/dist/lifecycle/types.d.ts.map +1 -0
- package/dist/lint/config.d.ts +100 -0
- package/dist/lint/config.d.ts.map +1 -0
- package/dist/lint/declarative.d.ts +56 -0
- package/dist/lint/declarative.d.ts.map +1 -0
- package/dist/lint/discover.d.ts +35 -0
- package/dist/lint/discover.d.ts.map +1 -0
- package/dist/lint/engine.d.ts +21 -0
- package/dist/lint/engine.d.ts.map +1 -0
- package/dist/lint/named-checks.d.ts +19 -0
- package/dist/lint/named-checks.d.ts.map +1 -0
- package/dist/lint/parser.d.ts +9 -0
- package/dist/lint/parser.d.ts.map +1 -0
- package/dist/lint/policy.d.ts +22 -0
- package/dist/lint/policy.d.ts.map +1 -0
- package/dist/lint/post-synth.d.ts +69 -0
- package/dist/lint/post-synth.d.ts.map +1 -0
- package/dist/lint/presets/strict.json +19 -0
- package/dist/lint/rule-loader.d.ts +16 -0
- package/dist/lint/rule-loader.d.ts.map +1 -0
- package/dist/lint/rule-registry.d.ts +37 -0
- package/dist/lint/rule-registry.d.ts.map +1 -0
- package/dist/lint/rule.d.ts +82 -0
- package/dist/lint/rule.d.ts.map +1 -0
- package/dist/lint/rules/composite-scope.d.ts +18 -0
- package/dist/lint/rules/composite-scope.d.ts.map +1 -0
- package/dist/lint/rules/cor017-composite-name-match.d.ts +3 -0
- package/dist/lint/rules/cor017-composite-name-match.d.ts.map +1 -0
- package/dist/lint/rules/cor018-composite-prefer-lexicon-type.d.ts +3 -0
- package/dist/lint/rules/cor018-composite-prefer-lexicon-type.d.ts.map +1 -0
- package/dist/lint/rules/declarable-naming-convention.d.ts +3 -0
- package/dist/lint/rules/declarable-naming-convention.d.ts.map +1 -0
- package/dist/lint/rules/evl001-non-literal-expression.d.ts +3 -0
- package/dist/lint/rules/evl001-non-literal-expression.d.ts.map +1 -0
- package/dist/lint/rules/evl002-control-flow-resource.d.ts +3 -0
- package/dist/lint/rules/evl002-control-flow-resource.d.ts.map +1 -0
- package/dist/lint/rules/evl003-dynamic-property-access.d.ts +3 -0
- package/dist/lint/rules/evl003-dynamic-property-access.d.ts.map +1 -0
- package/dist/lint/rules/evl004-spread-non-const.d.ts +3 -0
- package/dist/lint/rules/evl004-spread-non-const.d.ts.map +1 -0
- package/dist/lint/rules/evl005-resource-block-body.d.ts +3 -0
- package/dist/lint/rules/evl005-resource-block-body.d.ts.map +1 -0
- package/dist/lint/rules/evl007-invalid-siblings.d.ts +3 -0
- package/dist/lint/rules/evl007-invalid-siblings.d.ts.map +1 -0
- package/dist/lint/rules/evl009-composite-no-constant.d.ts +3 -0
- package/dist/lint/rules/evl009-composite-no-constant.d.ts.map +1 -0
- package/dist/lint/rules/evl010-composite-no-transform.d.ts +3 -0
- package/dist/lint/rules/evl010-composite-no-transform.d.ts.map +1 -0
- package/dist/lint/rules/export-required.d.ts +3 -0
- package/dist/lint/rules/export-required.d.ts.map +1 -0
- package/dist/lint/rules/file-declarable-limit.d.ts +3 -0
- package/dist/lint/rules/file-declarable-limit.d.ts.map +1 -0
- package/dist/lint/rules/flat-declarations.d.ts +3 -0
- package/dist/lint/rules/flat-declarations.d.ts.map +1 -0
- package/dist/lint/rules/index.d.ts +31 -0
- package/dist/lint/rules/index.d.ts.map +1 -0
- package/dist/lint/rules/no-cyclic-declarable-ref.d.ts +3 -0
- package/dist/lint/rules/no-cyclic-declarable-ref.d.ts.map +1 -0
- package/dist/lint/rules/no-redundant-type-import.d.ts +10 -0
- package/dist/lint/rules/no-redundant-type-import.d.ts.map +1 -0
- package/dist/lint/rules/no-redundant-value-cast.d.ts +3 -0
- package/dist/lint/rules/no-redundant-value-cast.d.ts.map +1 -0
- package/dist/lint/rules/no-string-ref.d.ts +3 -0
- package/dist/lint/rules/no-string-ref.d.ts.map +1 -0
- package/dist/lint/rules/no-unused-declarable-import.d.ts +3 -0
- package/dist/lint/rules/no-unused-declarable-import.d.ts.map +1 -0
- package/dist/lint/rules/no-unused-declarable.d.ts +3 -0
- package/dist/lint/rules/no-unused-declarable.d.ts.map +1 -0
- package/dist/lint/rules/single-concern-file.d.ts +3 -0
- package/dist/lint/rules/single-concern-file.d.ts.map +1 -0
- package/dist/lint/selectors.d.ts +21 -0
- package/dist/lint/selectors.d.ts.map +1 -0
- package/dist/lsp/lexicon-providers.d.ts +61 -0
- package/dist/lsp/lexicon-providers.d.ts.map +1 -0
- package/dist/lsp/types.d.ts +64 -0
- package/dist/lsp/types.d.ts.map +1 -0
- package/dist/mcp/types.d.ts +21 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/op/activity-registry.d.ts +57 -0
- package/dist/op/activity-registry.d.ts.map +1 -0
- package/dist/op/builders.d.ts +69 -0
- package/dist/op/builders.d.ts.map +1 -0
- package/dist/op/discover.d.ts +16 -0
- package/dist/op/discover.d.ts.map +1 -0
- package/dist/op/index.d.ts +11 -0
- package/dist/op/index.d.ts.map +1 -0
- package/dist/op/local-executor.d.ts +54 -0
- package/dist/op/local-executor.d.ts.map +1 -0
- package/dist/op/local-output.d.ts +16 -0
- package/dist/op/local-output.d.ts.map +1 -0
- package/dist/op/resource.d.ts +7 -0
- package/dist/op/resource.d.ts.map +1 -0
- package/dist/op/types.d.ts +71 -0
- package/dist/op/types.d.ts.map +1 -0
- package/dist/ownership.d.ts +75 -0
- package/dist/ownership.d.ts.map +1 -0
- package/dist/project-validation.d.ts +28 -0
- package/dist/project-validation.d.ts.map +1 -0
- package/dist/provenance.d.ts +26 -0
- package/dist/provenance.d.ts.map +1 -0
- package/dist/pseudo-parameter.d.ts +32 -0
- package/dist/pseudo-parameter.d.ts.map +1 -0
- package/dist/resource-attributes.d.ts +17 -0
- package/dist/resource-attributes.d.ts.map +1 -0
- package/dist/runtime-adapter.d.ts +41 -0
- package/dist/runtime-adapter.d.ts.map +1 -0
- package/dist/runtime.d.ts +23 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/serializer-walker.d.ts +21 -0
- package/dist/serializer-walker.d.ts.map +1 -0
- package/dist/serializer.d.ts +64 -0
- package/dist/serializer.d.ts.map +1 -0
- package/dist/sort.d.ts +8 -0
- package/dist/sort.d.ts.map +1 -0
- package/dist/stack-output.d.ts +52 -0
- package/dist/stack-output.d.ts.map +1 -0
- package/dist/toml-emit.d.ts +22 -0
- package/dist/toml-emit.d.ts.map +1 -0
- package/dist/toml-parse.d.ts +14 -0
- package/dist/toml-parse.d.ts.map +1 -0
- package/dist/toml-utils.d.ts +20 -0
- package/dist/toml-utils.d.ts.map +1 -0
- package/dist/toml.d.ts +9 -0
- package/dist/toml.d.ts.map +1 -0
- package/dist/types.d.ts +47 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils.d.ts +30 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/validation.d.ts +42 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/yaml.d.ts +42 -0
- package/dist/yaml.d.ts.map +1 -0
- package/package.json +31 -6
- package/src/audit/bundle-decoupling.test.ts +56 -0
- package/src/audit/catalog.test.ts +16 -1
- package/src/audit/catalog.ts +244 -4
- package/src/audit/core.test.ts +15 -0
- package/src/audit/core.ts +0 -0
- package/src/audit/detect-bundle.test.ts +35 -0
- package/src/audit/discover.test.ts +72 -0
- package/src/audit/discover.ts +329 -0
- package/src/audit/edge-init-safety.test.ts +43 -0
- package/src/audit/fetch.test.ts +136 -55
- package/src/audit/fetch.ts +175 -91
- package/src/audit/remote-discovery.test.ts +80 -0
- package/src/audit/report-html.ts +14 -6
- package/src/audit/report-model.ts +13 -1
- package/src/audit/report.test.ts +3 -1
- package/src/audit/report.ts +13 -5
- package/src/cli/commands/__fixtures__/audit-mixed/.github/workflows/ci.yml +5 -0
- package/src/cli/commands/__fixtures__/audit-mixed/Dockerfile +2 -0
- package/src/cli/commands/__fixtures__/audit-mixed/cfn/template.json +1 -0
- package/src/cli/commands/__fixtures__/audit-mixed/k8s/deploy.yaml +12 -0
- package/src/cli/commands/audit.test.ts +27 -19
- package/src/cli/commands/audit.ts +28 -272
- package/src/codegen/bound-property-types.test.ts +57 -0
- package/src/codegen/bound-property-types.ts +110 -0
- package/src/codegen/generate-post-synth-barrel.test.ts +37 -0
- package/src/codegen/generate-post-synth-barrel.ts +75 -0
- package/src/codegen/post-synth-barrel-guards.test.ts +63 -0
- package/src/codegen/validate.ts +13 -1
- package/src/lint/discover.ts +1 -1
- package/src/meta/peer-deps.test.ts +29 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { OpResource } from "./resource.js";
|
|
2
|
+
import type { OpConfig, PhaseDefinition, StepDefinition, ActivityStep, GateStep } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Declare a named, phased Temporal workflow.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* export default Op({
|
|
9
|
+
* name: "alb-deploy",
|
|
10
|
+
* overview: "Build and deploy the ALB multi-service stack",
|
|
11
|
+
* phases: [
|
|
12
|
+
* phase("Build", [build("examples/gitlab-aws-alb-infra")], { parallel: true }),
|
|
13
|
+
* phase("Deploy", [kubectlApply("dist/alb-infra.yaml")]),
|
|
14
|
+
* ],
|
|
15
|
+
* });
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare function Op(config: OpConfig): InstanceType<typeof OpResource>;
|
|
19
|
+
/** Define a named execution phase containing one or more steps. */
|
|
20
|
+
export declare function phase(name: string, steps: StepDefinition[], opts?: {
|
|
21
|
+
parallel?: boolean;
|
|
22
|
+
}): PhaseDefinition;
|
|
23
|
+
/** Reference a pre-built or custom activity by function name. */
|
|
24
|
+
export declare function activity(fn: string, args?: Record<string, unknown>, profile?: ActivityStep["profile"]): ActivityStep;
|
|
25
|
+
/** Insert a human gate — the workflow pauses until the named signal is received. */
|
|
26
|
+
export declare function gate(signalName: string, opts?: {
|
|
27
|
+
timeout?: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
}): GateStep;
|
|
30
|
+
/** Run `npm run build` (or `chant build`) in the given project directory. */
|
|
31
|
+
export declare const build: (path: string, opts?: Record<string, unknown>) => ActivityStep;
|
|
32
|
+
/** Run `kubectl apply -f <manifest>`. Defaults to the `longInfra` profile (override via `opts.profile`). */
|
|
33
|
+
export declare const kubectlApply: (manifest: string, opts?: Record<string, unknown>) => ActivityStep;
|
|
34
|
+
/** Run `helm upgrade --install`. Defaults to the `longInfra` profile (override via `opts.profile`). */
|
|
35
|
+
export declare const helmInstall: (name: string, chart: string, opts?: {
|
|
36
|
+
values?: string;
|
|
37
|
+
namespace?: string;
|
|
38
|
+
profile?: ActivityStep["profile"];
|
|
39
|
+
[k: string]: unknown;
|
|
40
|
+
}) => ActivityStep;
|
|
41
|
+
/** Poll for stack readiness (kubectl rollout, CloudFormation complete, etc). Defaults to the `k8sWait` profile (override via `opts.profile`). */
|
|
42
|
+
export declare const waitForStack: (name: string, opts?: Record<string, unknown>) => ActivityStep;
|
|
43
|
+
/** Trigger and wait for a GitLab CI pipeline to complete. Defaults to the `longInfra` profile (override via `opts.profile`). */
|
|
44
|
+
export declare const gitlabPipeline: (name: string, opts?: Record<string, unknown>) => ActivityStep;
|
|
45
|
+
/** Take a chant lifecycle snapshot for the given environment. */
|
|
46
|
+
export declare const lifecycleSnapshot: (env: string) => ActivityStep;
|
|
47
|
+
/**
|
|
48
|
+
* Run an arbitrary shell command. Tag long-running commands with a `profile`
|
|
49
|
+
* (e.g. `longInfra` for a multi-GB image push) so they get the right
|
|
50
|
+
* start-to-close timeout under both the local executor and Temporal.
|
|
51
|
+
*/
|
|
52
|
+
export declare const shell: (cmd: string, opts?: {
|
|
53
|
+
env?: Record<string, string>;
|
|
54
|
+
profile?: ActivityStep["profile"];
|
|
55
|
+
}) => ActivityStep;
|
|
56
|
+
/** Run `chant teardown` in the given project directory. Uses `longInfra` profile. */
|
|
57
|
+
export declare const teardown: (path: string) => ActivityStep;
|
|
58
|
+
/**
|
|
59
|
+
* Gate an apply on organizational policy: build the project and run its
|
|
60
|
+
* `lint.policies` over the resolved resources, blocking the workflow on any
|
|
61
|
+
* violation. Place it before the apply phase. `env` (or `ownership.env`) lets a
|
|
62
|
+
* policy branch on environment. Single-attempt (`policyCheck` profile) — a
|
|
63
|
+
* deterministic violation is not retried.
|
|
64
|
+
*/
|
|
65
|
+
export declare const policyGate: (opts?: {
|
|
66
|
+
env?: string;
|
|
67
|
+
path?: string;
|
|
68
|
+
}) => ActivityStep;
|
|
69
|
+
//# sourceMappingURL=builders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/op/builders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAIjG;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,YAAY,CAAC,OAAO,UAAU,CAAC,CAEpE;AAED,mEAAmE;AACnE,wBAAgB,KAAK,CACnB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,cAAc,EAAE,EACvB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,eAAe,CAEjB;AAED,iEAAiE;AACjE,wBAAgB,QAAQ,CACtB,EAAE,EAAE,MAAM,EACV,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,GAChC,YAAY,CAOd;AAED,oFAAoF;AACpF,wBAAgB,IAAI,CAClB,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAChD,QAAQ,CAOV;AAsBD,6EAA6E;AAC7E,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,YAGpE,CAAC;AAEF,4GAA4G;AAC5G,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,YAG/E,CAAC;AAEF,uGAAuG;AACvG,eAAO,MAAM,WAAW,GACtB,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,OAAO;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,KACtG,YAGF,CAAC;AAEF,iJAAiJ;AACjJ,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,YAG3E,CAAC;AAEF,gIAAgI;AAChI,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,YAG7E,CAAC;AAEF,iEAAiE;AACjE,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,YACR,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,MAAM,EACX,OAAO;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;CAAE,KACzE,YACoF,CAAC;AAExF,qFAAqF;AACrF,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,YACU,CAAC;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,YAKjE,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { OpConfig } from "./types.js";
|
|
2
|
+
export interface DiscoveredOp {
|
|
3
|
+
config: OpConfig;
|
|
4
|
+
filePath: string;
|
|
5
|
+
}
|
|
6
|
+
export interface OpDiscoveryResult {
|
|
7
|
+
ops: Map<string, DiscoveredOp>;
|
|
8
|
+
errors: string[];
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Discover all Op definitions from *.op.ts files under the git root.
|
|
12
|
+
*/
|
|
13
|
+
export declare function discoverOps(opts?: {
|
|
14
|
+
cwd?: string;
|
|
15
|
+
}): Promise<OpDiscoveryResult>;
|
|
16
|
+
//# sourceMappingURL=discover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/op/discover.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC/B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiCD;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuCrF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { Op, phase, activity, gate, build, kubectlApply, helmInstall, waitForStack, gitlabPipeline, lifecycleSnapshot, shell, teardown, policyGate } from "./builders.js";
|
|
2
|
+
export { OpResource } from "./resource.js";
|
|
3
|
+
export type { OpConfig, PhaseDefinition, StepDefinition, ActivityStep, GateStep } from "./types.js";
|
|
4
|
+
export { discoverOps } from "./discover.js";
|
|
5
|
+
export type { DiscoveredOp, OpDiscoveryResult } from "./discover.js";
|
|
6
|
+
export { loadActivities, loadProfiles, resolveActivity } from "./activity-registry.js";
|
|
7
|
+
export type { ActivityFn, ActivityProfile } from "./activity-registry.js";
|
|
8
|
+
export { runOpLocally, parseDuration, findGate, LocalGateUnsupportedError, OpRunFailure } from "./local-executor.js";
|
|
9
|
+
export type { StepRecord, OpRunResult } from "./local-executor.js";
|
|
10
|
+
export { renderHuman, renderJson } from "./local-output.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/op/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EACzE,cAAc,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACpF,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClH,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local Op executor — runs an Op's phases in-process with no Temporal worker.
|
|
3
|
+
*
|
|
4
|
+
* A first-class peer to Temporal mode for dev loops, CI, and drift/observation
|
|
5
|
+
* Ops. Provides phase sequencing, parallel phases, per-step retry + timeout via
|
|
6
|
+
* activity profiles, `outcomeAttribute` capture, and `onFailure` compensation.
|
|
7
|
+
* Gates and schedules are unsupported and rejected before any phase runs.
|
|
8
|
+
*
|
|
9
|
+
* The executor is deliberately decoupled from the Temporal lexicon: activity
|
|
10
|
+
* implementations and profiles are passed in (loaded dynamically by the CLI),
|
|
11
|
+
* so core never statically depends on `@intentius/chant-lexicon-temporal`.
|
|
12
|
+
*/
|
|
13
|
+
import type { OpConfig, GateStep } from "./types.js";
|
|
14
|
+
import { type ActivityFn, type ActivityProfile } from "./activity-registry.js";
|
|
15
|
+
export interface StepRecord {
|
|
16
|
+
phase: string;
|
|
17
|
+
fn: string;
|
|
18
|
+
args: Record<string, unknown>;
|
|
19
|
+
status: "ok" | "fail" | "skipped";
|
|
20
|
+
durationMs: number;
|
|
21
|
+
outcome?: {
|
|
22
|
+
name: string;
|
|
23
|
+
value: unknown;
|
|
24
|
+
};
|
|
25
|
+
error?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface OpRunResult {
|
|
28
|
+
op: string;
|
|
29
|
+
records: StepRecord[];
|
|
30
|
+
totalMs: number;
|
|
31
|
+
ok: boolean;
|
|
32
|
+
}
|
|
33
|
+
/** Thrown when an Op contains a gate (or schedule) that local mode cannot run. */
|
|
34
|
+
export declare class LocalGateUnsupportedError extends Error {
|
|
35
|
+
readonly signalName: string;
|
|
36
|
+
constructor(signalName: string);
|
|
37
|
+
}
|
|
38
|
+
/** Thrown on terminal Op failure; carries the partial run result for rendering. */
|
|
39
|
+
export declare class OpRunFailure extends Error {
|
|
40
|
+
readonly result: OpRunResult;
|
|
41
|
+
constructor(result: OpRunResult);
|
|
42
|
+
}
|
|
43
|
+
/** Parse a Temporal duration string ("5m", "30s", "1h30m", "100ms") to ms. */
|
|
44
|
+
export declare function parseDuration(s: string): number;
|
|
45
|
+
/** Find the first gate step anywhere in the Op (phases + onFailure), if any. */
|
|
46
|
+
export declare function findGate(config: OpConfig): GateStep | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Execute an Op locally. Resolves with the run result on success; rejects with
|
|
49
|
+
* `OpRunFailure` (carrying the partial result) on terminal failure, after
|
|
50
|
+
* running any `onFailure` phases in reverse order. Throws
|
|
51
|
+
* `LocalGateUnsupportedError` up front if the Op contains a gate.
|
|
52
|
+
*/
|
|
53
|
+
export declare function runOpLocally(config: OpConfig, activities: Map<string, ActivityFn>, profiles: Record<string, ActivityProfile>, signal?: AbortSignal): Promise<OpRunResult>;
|
|
54
|
+
//# sourceMappingURL=local-executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-executor.d.ts","sourceRoot":"","sources":["../../src/op/local-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAiC,QAAQ,EAAkB,MAAM,SAAS,CAAC;AACjG,OAAO,EAAmB,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAI7F,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;CACb;AAID,kFAAkF;AAClF,qBAAa,yBAA0B,SAAQ,KAAK;aACtB,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM;CAO/C;AAED,mFAAmF;AACnF,qBAAa,YAAa,SAAQ,KAAK;aACT,MAAM,EAAE,WAAW;gBAAnB,MAAM,EAAE,WAAW;CAIhD;AAkBD,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAU/C;AAWD,gFAAgF;AAChF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAO/D;AAuJD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,QAAQ,EAChB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,CAAC,CA+BtB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Renderers for local Op execution. Both consume the same `OpRunResult`:
|
|
3
|
+
* `renderHuman` is the default (logs to stderr), `renderJson` prints the
|
|
4
|
+
* machine-readable record array to stdout and nothing else.
|
|
5
|
+
*/
|
|
6
|
+
import type { OpRunResult, StepRecord } from "./local-executor.js";
|
|
7
|
+
type Writer = (line: string) => void;
|
|
8
|
+
/**
|
|
9
|
+
* Render a run result as human-readable progress. Defaults to stderr so stdout
|
|
10
|
+
* stays clean for piping (the `--json` renderer owns stdout).
|
|
11
|
+
*/
|
|
12
|
+
export declare function renderHuman(result: OpRunResult, write?: Writer): void;
|
|
13
|
+
/** Render a run result as JSON on stdout (and nothing else on stdout). */
|
|
14
|
+
export declare function renderJson(result: OpRunResult, write?: Writer): void;
|
|
15
|
+
export type { OpRunResult, StepRecord };
|
|
16
|
+
//# sourceMappingURL=local-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-output.d.ts","sourceRoot":"","sources":["../../src/op/local-output.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEhE,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAerC;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,GAAE,MAAe,GAAG,IAAI,CA4B7E;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,GAAE,MAAe,GAAG,IAAI,CAE5E;AAED,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Declarable resource backing an Op definition.
|
|
3
|
+
* entityType: "Temporal::Op", lexicon: "temporal"
|
|
4
|
+
* Discovered automatically alongside infra files — no pipeline changes needed.
|
|
5
|
+
*/
|
|
6
|
+
export declare const OpResource: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("../index.js").Declarable & Record<string, string>;
|
|
7
|
+
//# sourceMappingURL=resource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../src/op/resource.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,eAAO,MAAM,UAAU,gIAAiD,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Op type definitions — the data model for a named, phased Temporal workflow.
|
|
3
|
+
*
|
|
4
|
+
* These types are intentionally free of Temporal SDK imports so they can live
|
|
5
|
+
* in core without pulling in @temporalio/* as a dependency.
|
|
6
|
+
*/
|
|
7
|
+
export interface OpConfig {
|
|
8
|
+
/** Kebab-case identifier. Used as the workflow function name (camelCase) and output directory name. */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Human-readable description shown in `chant run list` and deployment reports. */
|
|
11
|
+
overview: string;
|
|
12
|
+
/** Temporal task queue. Defaults to `name`. */
|
|
13
|
+
taskQueue?: string;
|
|
14
|
+
/** Temporal namespace. Defaults to chant.config.ts defaultProfile's namespace. */
|
|
15
|
+
namespace?: string;
|
|
16
|
+
/** Ordered list of execution phases. */
|
|
17
|
+
phases: PhaseDefinition[];
|
|
18
|
+
/** Other Op names that must be complete before this Op can run. */
|
|
19
|
+
depends?: string[];
|
|
20
|
+
/** Compensation phases executed on terminal failure (run in reverse order). */
|
|
21
|
+
onFailure?: PhaseDefinition[];
|
|
22
|
+
/** Search attributes to upsert at workflow start. */
|
|
23
|
+
searchAttributes?: Record<string, string>;
|
|
24
|
+
}
|
|
25
|
+
export interface PhaseDefinition {
|
|
26
|
+
/** Display name shown in progress output and Temporal UI. */
|
|
27
|
+
name: string;
|
|
28
|
+
/** Ordered steps within the phase. */
|
|
29
|
+
steps: StepDefinition[];
|
|
30
|
+
/** Run all steps concurrently via Promise.all. Default: false. */
|
|
31
|
+
parallel?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export type StepDefinition = ActivityStep | GateStep;
|
|
34
|
+
export interface ActivityStep {
|
|
35
|
+
kind: "activity";
|
|
36
|
+
/** Name of the exported activity function in the pre-built activity library. */
|
|
37
|
+
fn: string;
|
|
38
|
+
/** Arguments passed to the activity function. */
|
|
39
|
+
args?: Record<string, unknown>;
|
|
40
|
+
/**
|
|
41
|
+
* Key from TEMPORAL_ACTIVITY_PROFILES controlling timeout + retry.
|
|
42
|
+
* Default: "fastIdempotent"
|
|
43
|
+
*/
|
|
44
|
+
profile?: "fastIdempotent" | "longInfra" | "k8sWait" | "humanGate" | "argoSync" | "policyCheck";
|
|
45
|
+
/**
|
|
46
|
+
* Surface this activity's return value as a workflow search attribute.
|
|
47
|
+
*
|
|
48
|
+
* The serializer captures the awaited result into a temporary, then emits
|
|
49
|
+
* `upsertSearchAttributes({ <name>: [String(<from-path>)] })` immediately
|
|
50
|
+
* after. Useful for filtering runs by outcome (e.g. `Drift: "true"/"false"`
|
|
51
|
+
* from a lifecycleDiff activity).
|
|
52
|
+
*
|
|
53
|
+
* `from` is a dot-path into the return value (e.g. `"drifted"` for
|
|
54
|
+
* `{ drifted: boolean }`); when omitted, the whole return value is
|
|
55
|
+
* stringified.
|
|
56
|
+
*/
|
|
57
|
+
outcomeAttribute?: {
|
|
58
|
+
name: string;
|
|
59
|
+
from?: string;
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
export interface GateStep {
|
|
63
|
+
kind: "gate";
|
|
64
|
+
/** Signal name. The generated workflow waits for this signal before continuing. */
|
|
65
|
+
signalName: string;
|
|
66
|
+
/** Temporal duration string. Default: "48h". */
|
|
67
|
+
timeout?: string;
|
|
68
|
+
/** Human-readable description of the action required to unblock this gate. */
|
|
69
|
+
description?: string;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/op/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,QAAQ;IACvB,uGAAuG;IACvG,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,aAAa,CAAC;IAChG;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ownership marker contract.
|
|
3
|
+
*
|
|
4
|
+
* chant stamps managed resources with a provider-native marker at synthesis
|
|
5
|
+
* time. This is what later lets `delete` be precise without an authoritative
|
|
6
|
+
* state file — the ownership record lives on the cloud resource, not in a file
|
|
7
|
+
* chant has to host or lock. The marker is standard tags/labels, so walk-away
|
|
8
|
+
* cost stays zero: nothing proprietary lands in the output.
|
|
9
|
+
*
|
|
10
|
+
* The marker carries stack identity, not just `managed=true`, so one stack
|
|
11
|
+
* never mistakes another stack's resources for its own. Ownership means
|
|
12
|
+
* "carries chant's marker", not "carries only chant's marker" — co-stamping
|
|
13
|
+
* with other tools is fine.
|
|
14
|
+
*/
|
|
15
|
+
/** The value of the managed-by marker for every channel. */
|
|
16
|
+
export declare const OWNERSHIP_MANAGED_BY_VALUE = "chant";
|
|
17
|
+
/**
|
|
18
|
+
* Stack (and optional environment) identity stamped onto a resource. Computed
|
|
19
|
+
* from project config and threaded into each serializer.
|
|
20
|
+
*/
|
|
21
|
+
export interface OwnershipMarker {
|
|
22
|
+
/** Distinguishes one chant stack's resources from another's. */
|
|
23
|
+
stack: string;
|
|
24
|
+
/** Optional environment identity. */
|
|
25
|
+
env?: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The native metadata channel a target stamps into. Tag-key syntax differs:
|
|
29
|
+
* Kubernetes/GCP labels allow a `prefix/name` form; AWS tag keys allow `:`;
|
|
30
|
+
* Azure tag keys forbid `/`, so they use a hyphenated form.
|
|
31
|
+
*/
|
|
32
|
+
export type OwnershipChannel = "label" | "aws-tag" | "azure-tag";
|
|
33
|
+
interface ChannelKeys {
|
|
34
|
+
readonly managedBy: string;
|
|
35
|
+
readonly stack: string;
|
|
36
|
+
readonly env: string;
|
|
37
|
+
}
|
|
38
|
+
/** The marker key names used in a given channel. */
|
|
39
|
+
export declare function ownershipKeys(channel: OwnershipChannel): ChannelKeys;
|
|
40
|
+
/**
|
|
41
|
+
* The key/value entries to stamp for a channel: the managed-by marker, the
|
|
42
|
+
* stack identity, and the env identity when present.
|
|
43
|
+
*/
|
|
44
|
+
export declare function ownershipEntries(channel: OwnershipChannel, marker: OwnershipMarker): Record<string, string>;
|
|
45
|
+
/**
|
|
46
|
+
* Ownership test: does this resource carry chant's managed-by marker? Other
|
|
47
|
+
* tools may co-stamp; only the managed-by marker is required to count as owned.
|
|
48
|
+
*/
|
|
49
|
+
export declare function hasOwnershipMarker(tagsOrLabels: Record<string, unknown> | undefined, channel: OwnershipChannel): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* The two live-side ownership verdicts a marker query can produce.
|
|
52
|
+
*
|
|
53
|
+
* - `owned` — carries chant's marker; an undeclared owned resource is a safe
|
|
54
|
+
* delete candidate.
|
|
55
|
+
* - `foreign` — no marker; can be adopted but never auto-deleted.
|
|
56
|
+
*
|
|
57
|
+
* The third verdict, `unknown`, is reserved for when no marker channel was
|
|
58
|
+
* queried at all (see the `Ownership` type in the change set).
|
|
59
|
+
*/
|
|
60
|
+
export declare function classifyOwnership(tagsOrLabels: Record<string, unknown> | undefined, channel: OwnershipChannel): "owned" | "foreign";
|
|
61
|
+
/**
|
|
62
|
+
* Convert a tag array of `{Key, Value}` (AWS/CloudFormation form) into the
|
|
63
|
+
* key→value map the ownership helpers expect.
|
|
64
|
+
*/
|
|
65
|
+
export declare function tagArrayToMap(tags: ReadonlyArray<{
|
|
66
|
+
Key?: string;
|
|
67
|
+
Value?: unknown;
|
|
68
|
+
}> | undefined): Record<string, unknown>;
|
|
69
|
+
/**
|
|
70
|
+
* Read the stack/env identity from a marked resource's tags/labels. Returns
|
|
71
|
+
* undefined when the managed-by marker is absent.
|
|
72
|
+
*/
|
|
73
|
+
export declare function readOwnership(tagsOrLabels: Record<string, unknown> | undefined, channel: OwnershipChannel): OwnershipMarker | undefined;
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=ownership.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ownership.d.ts","sourceRoot":"","sources":["../src/ownership.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,4DAA4D;AAC5D,eAAO,MAAM,0BAA0B,UAAU,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjE,UAAU,WAAW;IACnB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAoBD,oDAAoD;AACpD,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,GAAG,WAAW,CAEpE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,eAAe,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,OAAO,EAAE,gBAAgB,GACxB,OAAO,GAAG,SAAS,CAErB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,aAAa,CAAC;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,SAAS,GACjE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,OAAO,EAAE,gBAAgB,GACxB,eAAe,GAAG,SAAS,CAS7B"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Issue found during project structure check
|
|
3
|
+
*/
|
|
4
|
+
export interface ProjectIssue {
|
|
5
|
+
/** Severity: "error" blocks commands, "warning" is advisory */
|
|
6
|
+
severity: "error" | "warning";
|
|
7
|
+
/** Human-readable message */
|
|
8
|
+
message: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Result of project structure validation
|
|
12
|
+
*/
|
|
13
|
+
export interface ProjectValidation {
|
|
14
|
+
/** Whether the project structure is valid (no errors, warnings OK) */
|
|
15
|
+
valid: boolean;
|
|
16
|
+
/** Issues found */
|
|
17
|
+
issues: ProjectIssue[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Validate project structure.
|
|
21
|
+
*
|
|
22
|
+
* Checks that required files and directories exist for a chant project.
|
|
23
|
+
*
|
|
24
|
+
* @param projectDir - Root directory of the chant project
|
|
25
|
+
* @param lexicons - Lexicon names from config (e.g. ["aws"])
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateProjectStructure(projectDir: string, lexicons?: string[]): ProjectValidation;
|
|
28
|
+
//# sourceMappingURL=project-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-validation.d.ts","sourceRoot":"","sources":["../src/project-validation.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+DAA+D;IAC/D,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sEAAsE;IACtE,KAAK,EAAE,OAAO,CAAC;IACf,mBAAmB;IACnB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,MAAM,EAAO,GACtB,iBAAiB,CA4CnB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build provenance: where a declared entity came from in the TypeScript source.
|
|
3
|
+
*
|
|
4
|
+
* Stamped during discovery as a non-enumerable, symbol-keyed side channel on the
|
|
5
|
+
* entity object, so it never serializes into the emitted YAML/JSON — it is build
|
|
6
|
+
* metadata, not declared configuration. Read it back with {@link getProvenance}.
|
|
7
|
+
*
|
|
8
|
+
* This is entity-level provenance (which file declared it, and which composite
|
|
9
|
+
* expanded it), not a YAML-line source map. It answers "where did this resource
|
|
10
|
+
* come from?", which is the question an agent asks before changing it.
|
|
11
|
+
*/
|
|
12
|
+
export interface EntityProvenance {
|
|
13
|
+
/** Absolute path of the source file that declared (or exported) the entity. */
|
|
14
|
+
sourceFile?: string;
|
|
15
|
+
/** The composite that expanded this entity, when it came from one. */
|
|
16
|
+
composite?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Merge provenance onto an entity. Non-enumerable so it is invisible to
|
|
20
|
+
* serializers and spreads. Existing fields win (`??=`), so the first/most
|
|
21
|
+
* specific writer — the innermost composite, the declaring file — is kept.
|
|
22
|
+
*/
|
|
23
|
+
export declare function setProvenance(entity: object, prov: EntityProvenance): void;
|
|
24
|
+
/** Read an entity's build provenance, if any was stamped. */
|
|
25
|
+
export declare function getProvenance(entity: object): EntityProvenance | undefined;
|
|
26
|
+
//# sourceMappingURL=provenance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provenance.d.ts","sourceRoot":"","sources":["../src/provenance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAc1E;AAED,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAE1E"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generic pseudo-parameter class for lexicon-provided global named references.
|
|
3
|
+
*
|
|
4
|
+
* AWS uses "AWS::StackName", Terraform has "path.module", Azure has
|
|
5
|
+
* "subscription().id" — every format needs the same class that serializes
|
|
6
|
+
* to a Ref-like structure and has the INTRINSIC_MARKER.
|
|
7
|
+
*/
|
|
8
|
+
import { INTRINSIC_MARKER, type Intrinsic } from "./intrinsic.js";
|
|
9
|
+
export declare class PseudoParameter implements Intrinsic {
|
|
10
|
+
readonly [INTRINSIC_MARKER]: true;
|
|
11
|
+
private refName;
|
|
12
|
+
constructor(refName: string);
|
|
13
|
+
toJSON(): {
|
|
14
|
+
Ref: string;
|
|
15
|
+
};
|
|
16
|
+
toString(): string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Create a namespace of pseudo-parameters from a name map.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* export const { StackName, Region } = createPseudoParameters({
|
|
24
|
+
* StackName: "AWS::StackName",
|
|
25
|
+
* Region: "AWS::Region",
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function createPseudoParameters<T extends Record<string, string>>(nameMap: T): {
|
|
30
|
+
[K in keyof T]: PseudoParameter;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=pseudo-parameter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pseudo-parameter.d.ts","sourceRoot":"","sources":["../src/pseudo-parameter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAE/D,qBAAa,eAAgB,YAAW,SAAS;IAC/C,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAG,IAAI,CAAU;IAC5C,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,MAAM;IAI3B,MAAM,IAAI;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE;IAIzB,QAAQ,IAAI,MAAM;CAGnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACrE,OAAO,EAAE,CAAC,GACT;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,eAAe;CAAE,CAMrC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utilities for resolving resource-level attributes (DependsOn, Condition, etc.).
|
|
3
|
+
*
|
|
4
|
+
* Shared by lexicon serializers — the DependsOn resolution logic converts
|
|
5
|
+
* Declarable object references to logical names.
|
|
6
|
+
*/
|
|
7
|
+
import type { Declarable } from "./declarable.js";
|
|
8
|
+
/**
|
|
9
|
+
* Resolve a DependsOn value (Declarable, string, or mixed array) into
|
|
10
|
+
* an array of logical resource names.
|
|
11
|
+
*
|
|
12
|
+
* - Strings pass through as-is (user-specified logical names)
|
|
13
|
+
* - Declarable objects are looked up in the entityNames map
|
|
14
|
+
* - Unknown values emit a console warning and are skipped
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveDependsOn(deps: unknown, entityNames: Map<Declarable, string>, resourceName: string): string[];
|
|
17
|
+
//# sourceMappingURL=resource-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-attributes.d.ts","sourceRoot":"","sources":["../src/resource-attributes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,EACpC,YAAY,EAAE,MAAM,GACnB,MAAM,EAAE,CAoBV"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export interface SpawnResult {
|
|
2
|
+
stdout: string;
|
|
3
|
+
stderr: string;
|
|
4
|
+
exitCode: number;
|
|
5
|
+
}
|
|
6
|
+
export interface RuntimeCommands {
|
|
7
|
+
/** Runtime binary: "node" */
|
|
8
|
+
runner: string;
|
|
9
|
+
/** Package executor: "npx" */
|
|
10
|
+
exec: string;
|
|
11
|
+
/** Pack command: ["npm", "pack"] */
|
|
12
|
+
packCmd: string[];
|
|
13
|
+
}
|
|
14
|
+
export interface RuntimeAdapter {
|
|
15
|
+
readonly name: "node";
|
|
16
|
+
/** Hash content and return hex string */
|
|
17
|
+
hash(content: string): string;
|
|
18
|
+
/** Algorithm name recorded in integrity.json */
|
|
19
|
+
readonly hashAlgorithm: string;
|
|
20
|
+
/** Test whether filePath matches a glob pattern */
|
|
21
|
+
globMatch(pattern: string, filePath: string): boolean;
|
|
22
|
+
/** Spawn a child process and collect output */
|
|
23
|
+
spawn(cmd: string[], opts?: {
|
|
24
|
+
cwd?: string;
|
|
25
|
+
}): Promise<SpawnResult>;
|
|
26
|
+
/** Commands to use when spawning package manager / executor */
|
|
27
|
+
readonly commands: RuntimeCommands;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Initialize the runtime adapter singleton.
|
|
31
|
+
*/
|
|
32
|
+
export declare function initRuntime(): RuntimeAdapter;
|
|
33
|
+
/**
|
|
34
|
+
* Get the runtime adapter. Lazily initializes if not yet set.
|
|
35
|
+
*/
|
|
36
|
+
export declare function getRuntime(): RuntimeAdapter;
|
|
37
|
+
/**
|
|
38
|
+
* Convert `import.meta.url` to a directory path.
|
|
39
|
+
*/
|
|
40
|
+
export declare function moduleDir(importMetaUrl: string): string;
|
|
41
|
+
//# sourceMappingURL=runtime-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-adapter.d.ts","sourceRoot":"","sources":["../src/runtime-adapter.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mDAAmD;IACnD,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACtD,+CAA+C;IAC/C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACpE,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAuCD;;GAEG;AACH,wBAAgB,WAAW,IAAI,cAAc,CAG5C;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,cAAc,CAK3C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime factory constructors for generated resource and property classes.
|
|
3
|
+
*
|
|
4
|
+
* Creates classes that implement the Declarable interface with DECLARABLE_MARKER,
|
|
5
|
+
* lexicon, entityType, kind, and attribute references.
|
|
6
|
+
*/
|
|
7
|
+
import { type Declarable } from "./declarable.js";
|
|
8
|
+
/**
|
|
9
|
+
* Create a resource class for a given type.
|
|
10
|
+
* The returned constructor creates Declarable objects with:
|
|
11
|
+
* - DECLARABLE_MARKER for type identification
|
|
12
|
+
* - lexicon identifier
|
|
13
|
+
* - entityType set to the resource type
|
|
14
|
+
* - kind "resource"
|
|
15
|
+
* - props stored from constructor argument
|
|
16
|
+
* - AttrRef instances for each attribute
|
|
17
|
+
*/
|
|
18
|
+
export declare function createResource(type: string, lexicon: string, attrMap: Record<string, string>): new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => Declarable & Record<string, string>;
|
|
19
|
+
/**
|
|
20
|
+
* Create a property-kind class for a given property type.
|
|
21
|
+
*/
|
|
22
|
+
export declare function createProperty(type: string, lexicon: string): new (props: Record<string, unknown>) => Record<string, unknown>;
|
|
23
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAGlE;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,KAAK,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA4BnH;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,KAAK,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYjE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generic recursive value walker for lexicon serializers.
|
|
3
|
+
*
|
|
4
|
+
* Implements the dispatch chain: null → AttrRef → Intrinsic → Declarable → Array → Object,
|
|
5
|
+
* delegating format-specific behavior to a SerializerVisitor.
|
|
6
|
+
*/
|
|
7
|
+
import type { Declarable } from "./declarable.js";
|
|
8
|
+
export interface SerializerVisitor {
|
|
9
|
+
/** Format an attribute reference (e.g. CFN Fn::GetAttr). */
|
|
10
|
+
attrRef(logicalName: string, attribute: string): unknown;
|
|
11
|
+
/** Format a resource-level Declarable reference (e.g. CFN Ref). */
|
|
12
|
+
resourceRef(logicalName: string): unknown;
|
|
13
|
+
/** Format a property-level Declarable by walking its props. */
|
|
14
|
+
propertyDeclarable(entity: Declarable, walk: (v: unknown) => unknown): unknown;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Recursively walk a value, converting AttrRefs, Intrinsics, Declarables,
|
|
18
|
+
* arrays, and objects using the provided visitor.
|
|
19
|
+
*/
|
|
20
|
+
export declare function walkValue(value: unknown, entityNames: Map<Declarable, string>, visitor: SerializerVisitor): unknown;
|
|
21
|
+
//# sourceMappingURL=serializer-walker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializer-walker.d.ts","sourceRoot":"","sources":["../src/serializer-walker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM/C,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACzD,mEAAmE;IACnE,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,+DAA+D;IAC/D,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC;CAChF;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,EACpC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAyDT"}
|