@mannyc1/ts-release 0.0.7 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCHITECTURE.md +124 -92
- package/CHANGELOG.md +115 -0
- package/LICENSE +21 -0
- package/README.md +278 -324
- package/SPEC.md +206 -310
- package/apps/release-ts/README.md +32 -0
- package/apps/release-ts/src/cli/command.ts +164 -0
- package/apps/release-ts/src/cli/commands.ts +351 -0
- package/apps/release-ts/src/cli/main.ts +43 -0
- package/apps/release-ts/src/cli/node-main.ts +49 -0
- package/apps/ts-release-agents/LICENSE +21 -0
- package/apps/ts-release-agents/README.md +21 -0
- package/apps/ts-release-agents/evals/cases.json +11 -0
- package/apps/ts-release-agents/manifests/claude.json +5 -0
- package/apps/ts-release-agents/manifests/codex.json +5 -0
- package/apps/ts-release-agents/package.json +11 -0
- package/apps/ts-release-agents/skills/release/SKILL.md +48 -0
- package/apps/ts-release-agents/skills/release/references/configuration.md +18 -0
- package/apps/ts-release-agents/skills/release/references/recovery.md +10 -0
- package/apps/ts-release-agents/skills/release/references/staged-workflow.md +12 -0
- package/apps/ts-release-agents/skills/release/references/target-selection.md +13 -0
- package/apps/ts-release-agents/skills/release/references/verification.md +14 -0
- package/apps/ts-release-agents/src/build.ts +105 -0
- package/apps/ts-release-agents/src/check.ts +117 -0
- package/apps/ts-release-agents/src/install.ts +121 -0
- package/apps/ts-release-agents/test/contract.test.ts +56 -0
- package/apps/ts-release-agents/tsconfig.json +5 -0
- package/dist/api/api.d.ts +15 -0
- package/dist/api/api.d.ts.map +1 -0
- package/dist/api/api.js +244 -0
- package/dist/api/api.js.map +1 -0
- package/dist/api/errors.d.ts +39 -0
- package/dist/api/errors.d.ts.map +1 -0
- package/dist/api/errors.js +32 -0
- package/dist/api/errors.js.map +1 -0
- package/dist/api/input.d.ts +10 -0
- package/dist/api/input.d.ts.map +1 -0
- package/dist/api/input.js +73 -0
- package/dist/api/input.js.map +1 -0
- package/dist/api/runtime.d.ts +18 -0
- package/dist/api/runtime.d.ts.map +1 -0
- package/dist/api/runtime.js +7 -0
- package/dist/api/runtime.js.map +1 -0
- package/dist/api/types.d.ts +76 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +17 -0
- package/dist/api/types.js.map +1 -0
- package/dist/bin/ts-release.js +39239 -0
- package/dist/capabilities/bun-targets.d.ts +3 -0
- package/dist/capabilities/bun-targets.d.ts.map +1 -0
- package/dist/capabilities/bun-targets.js +3 -0
- package/dist/capabilities/bun-targets.js.map +1 -0
- package/dist/capabilities/field-ownership.d.ts +17 -0
- package/dist/capabilities/field-ownership.d.ts.map +1 -0
- package/dist/capabilities/field-ownership.js +40 -0
- package/dist/capabilities/field-ownership.js.map +1 -0
- package/dist/capabilities/module.d.ts +91 -0
- package/dist/capabilities/module.d.ts.map +1 -0
- package/dist/capabilities/module.js +2 -0
- package/dist/capabilities/module.js.map +1 -0
- package/dist/capabilities/registry.d.ts +829 -0
- package/dist/capabilities/registry.d.ts.map +1 -0
- package/dist/capabilities/registry.js +291 -0
- package/dist/capabilities/registry.js.map +1 -0
- package/dist/config/config.d.ts +6 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +42 -0
- package/dist/config/config.js.map +1 -0
- package/dist/correction/coordinator.d.ts +248 -0
- package/dist/correction/coordinator.d.ts.map +1 -0
- package/dist/correction/coordinator.js +274 -0
- package/dist/correction/coordinator.js.map +1 -0
- package/dist/correction/index.d.ts +3 -0
- package/dist/correction/index.d.ts.map +1 -0
- package/dist/correction/index.js +3 -0
- package/dist/correction/index.js.map +1 -0
- package/dist/correction/intent.d.ts +111 -0
- package/dist/correction/intent.d.ts.map +1 -0
- package/dist/correction/intent.js +146 -0
- package/dist/correction/intent.js.map +1 -0
- package/dist/drivers/archive.d.ts +8 -0
- package/dist/drivers/archive.d.ts.map +1 -0
- package/dist/drivers/archive.js +101 -0
- package/dist/drivers/archive.js.map +1 -0
- package/dist/drivers/contain.d.ts +6 -0
- package/dist/drivers/contain.d.ts.map +1 -0
- package/dist/drivers/contain.js +17 -0
- package/dist/drivers/contain.js.map +1 -0
- package/dist/drivers/environment.d.ts +4 -0
- package/dist/drivers/environment.d.ts.map +1 -0
- package/dist/drivers/environment.js +18 -0
- package/dist/drivers/environment.js.map +1 -0
- package/dist/drivers/errors.d.ts +9 -0
- package/dist/drivers/errors.d.ts.map +1 -0
- package/dist/drivers/errors.js +6 -0
- package/dist/drivers/errors.js.map +1 -0
- package/dist/drivers/glob.d.ts +2 -0
- package/dist/drivers/glob.d.ts.map +1 -0
- package/dist/drivers/glob.js +162 -0
- package/dist/drivers/glob.js.map +1 -0
- package/dist/drivers/process.d.ts +48 -0
- package/dist/drivers/process.d.ts.map +1 -0
- package/dist/drivers/process.js +257 -0
- package/dist/drivers/process.js.map +1 -0
- package/dist/drivers/redact.d.ts +4 -0
- package/dist/drivers/redact.d.ts.map +1 -0
- package/dist/drivers/redact.js +24 -0
- package/dist/drivers/redact.js.map +1 -0
- package/dist/drivers/seccomp-helper-source.d.ts +7 -0
- package/dist/drivers/seccomp-helper-source.d.ts.map +1 -0
- package/dist/drivers/seccomp-helper-source.js +121 -0
- package/dist/drivers/seccomp-helper-source.js.map +1 -0
- package/dist/drivers/utils.d.ts +4 -0
- package/dist/drivers/utils.d.ts.map +1 -0
- package/dist/drivers/utils.js +5 -0
- package/dist/drivers/utils.js.map +1 -0
- package/dist/drivers/workspace.d.ts +6 -0
- package/dist/drivers/workspace.d.ts.map +1 -0
- package/dist/drivers/workspace.js +49 -0
- package/dist/drivers/workspace.js.map +1 -0
- package/dist/extensions/provider-adapter.d.ts +48 -0
- package/dist/extensions/provider-adapter.d.ts.map +1 -0
- package/dist/extensions/provider-adapter.js +64 -0
- package/dist/extensions/provider-adapter.js.map +1 -0
- package/dist/host.d.ts +33 -0
- package/dist/host.d.ts.map +1 -0
- package/dist/host.js +20 -0
- package/dist/host.js.map +1 -0
- package/dist/index.d.ts +19 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/model/artifact-collection.d.ts +84 -0
- package/dist/model/artifact-collection.d.ts.map +1 -0
- package/dist/model/artifact-collection.js +185 -0
- package/dist/model/artifact-collection.js.map +1 -0
- package/dist/model/authority.d.ts +89 -0
- package/dist/model/authority.d.ts.map +1 -0
- package/dist/model/authority.js +80 -0
- package/dist/model/authority.js.map +1 -0
- package/dist/model/bun-targets.d.ts +34 -0
- package/dist/model/bun-targets.d.ts.map +1 -0
- package/dist/model/bun-targets.js +17 -0
- package/dist/model/bun-targets.js.map +1 -0
- package/dist/model/canonical.d.ts +8 -0
- package/dist/model/canonical.d.ts.map +1 -0
- package/dist/model/canonical.js +205 -0
- package/dist/model/canonical.js.map +1 -0
- package/dist/model/catalog.d.ts +76 -0
- package/dist/model/catalog.d.ts.map +1 -0
- package/dist/model/catalog.js +174 -0
- package/dist/model/catalog.js.map +1 -0
- package/dist/model/digest.d.ts +53 -0
- package/dist/model/digest.d.ts.map +1 -0
- package/dist/model/digest.js +127 -0
- package/dist/model/digest.js.map +1 -0
- package/dist/model/errors.d.ts +14 -0
- package/dist/model/errors.d.ts.map +1 -0
- package/dist/model/errors.js +8 -0
- package/dist/model/errors.js.map +1 -0
- package/dist/model/primitives.d.ts +19 -0
- package/dist/model/primitives.d.ts.map +1 -0
- package/dist/model/primitives.js +18 -0
- package/dist/model/primitives.js.map +1 -0
- package/dist/model/pypi.d.ts +12 -0
- package/dist/model/pypi.d.ts.map +1 -0
- package/dist/model/pypi.js +20 -0
- package/dist/model/pypi.js.map +1 -0
- package/dist/model/python-distribution.d.ts +33 -0
- package/dist/model/python-distribution.d.ts.map +1 -0
- package/dist/model/python-distribution.js +367 -0
- package/dist/model/python-distribution.js.map +1 -0
- package/dist/model/secret-patterns.d.ts +2 -0
- package/dist/model/secret-patterns.d.ts.map +1 -0
- package/dist/model/secret-patterns.js +12 -0
- package/dist/model/secret-patterns.js.map +1 -0
- package/dist/platform/bun.d.ts +7 -0
- package/dist/platform/bun.d.ts.map +1 -0
- package/dist/platform/bun.js +15 -0
- package/dist/platform/bun.js.map +1 -0
- package/dist/platform/credentials.d.ts +32 -0
- package/dist/platform/credentials.d.ts.map +1 -0
- package/dist/platform/credentials.js +772 -0
- package/dist/platform/credentials.js.map +1 -0
- package/dist/platform/host-support.d.ts +2 -0
- package/dist/platform/host-support.d.ts.map +1 -0
- package/dist/platform/host-support.js +4 -0
- package/dist/platform/host-support.js.map +1 -0
- package/dist/platform/node.d.ts +7 -0
- package/dist/platform/node.d.ts.map +1 -0
- package/dist/platform/node.js +15 -0
- package/dist/platform/node.js.map +1 -0
- package/dist/platform/release-runtime.d.ts +11 -0
- package/dist/platform/release-runtime.d.ts.map +1 -0
- package/dist/platform/release-runtime.js +34 -0
- package/dist/platform/release-runtime.js.map +1 -0
- package/dist/platform/services.d.ts +15 -0
- package/dist/platform/services.d.ts.map +1 -0
- package/dist/platform/services.js +30 -0
- package/dist/platform/services.js.map +1 -0
- package/dist/platform/source-observer.d.ts +5 -0
- package/dist/platform/source-observer.d.ts.map +1 -0
- package/dist/platform/source-observer.js +159 -0
- package/dist/platform/source-observer.js.map +1 -0
- package/dist/provider-sdk.d.ts +14 -0
- package/dist/provider-sdk.d.ts.map +1 -0
- package/dist/provider-sdk.js +10 -0
- package/dist/provider-sdk.js.map +1 -0
- package/dist/publication/adapter.d.ts +212 -0
- package/dist/publication/adapter.d.ts.map +1 -0
- package/dist/publication/adapter.js +83 -0
- package/dist/publication/adapter.js.map +1 -0
- package/dist/publication/authority.d.ts +137 -0
- package/dist/publication/authority.d.ts.map +1 -0
- package/dist/publication/authority.js +233 -0
- package/dist/publication/authority.js.map +1 -0
- package/dist/publication/catalog-git.d.ts +37 -0
- package/dist/publication/catalog-git.d.ts.map +1 -0
- package/dist/publication/catalog-git.js +451 -0
- package/dist/publication/catalog-git.js.map +1 -0
- package/dist/publication/claim.d.ts +39 -0
- package/dist/publication/claim.d.ts.map +1 -0
- package/dist/publication/claim.js +31 -0
- package/dist/publication/claim.js.map +1 -0
- package/dist/publication/coordinator.d.ts +246 -0
- package/dist/publication/coordinator.d.ts.map +1 -0
- package/dist/publication/coordinator.js +370 -0
- package/dist/publication/coordinator.js.map +1 -0
- package/dist/publication/github.d.ts +36 -0
- package/dist/publication/github.d.ts.map +1 -0
- package/dist/publication/github.js +644 -0
- package/dist/publication/github.js.map +1 -0
- package/dist/publication/http.d.ts +69 -0
- package/dist/publication/http.d.ts.map +1 -0
- package/dist/publication/http.js +29 -0
- package/dist/publication/http.js.map +1 -0
- package/dist/publication/index.d.ts +5 -0
- package/dist/publication/index.d.ts.map +1 -0
- package/dist/publication/index.js +5 -0
- package/dist/publication/index.js.map +1 -0
- package/dist/publication/npm.d.ts +40 -0
- package/dist/publication/npm.d.ts.map +1 -0
- package/dist/publication/npm.js +359 -0
- package/dist/publication/npm.js.map +1 -0
- package/dist/publication/profiles.d.ts +136 -0
- package/dist/publication/profiles.d.ts.map +1 -0
- package/dist/publication/profiles.js +90 -0
- package/dist/publication/profiles.js.map +1 -0
- package/dist/publication/publisher.d.ts +82 -0
- package/dist/publication/publisher.d.ts.map +1 -0
- package/dist/publication/publisher.js +53 -0
- package/dist/publication/publisher.js.map +1 -0
- package/dist/publication/pypi.d.ts +45 -0
- package/dist/publication/pypi.d.ts.map +1 -0
- package/dist/publication/pypi.js +369 -0
- package/dist/publication/pypi.js.map +1 -0
- package/dist/publication/recovery.d.ts +663 -0
- package/dist/publication/recovery.d.ts.map +1 -0
- package/dist/publication/recovery.js +252 -0
- package/dist/publication/recovery.js.map +1 -0
- package/dist/publication/report.d.ts +1061 -0
- package/dist/publication/report.d.ts.map +1 -0
- package/dist/publication/report.js +441 -0
- package/dist/publication/report.js.map +1 -0
- package/dist/recipes/config.d.ts +296 -0
- package/dist/recipes/config.d.ts.map +1 -0
- package/dist/recipes/config.js +325 -0
- package/dist/recipes/config.js.map +1 -0
- package/dist/release/capabilities.d.ts +12 -0
- package/dist/release/capabilities.d.ts.map +1 -0
- package/dist/release/capabilities.js +395 -0
- package/dist/release/capabilities.js.map +1 -0
- package/dist/release/compiler.d.ts +5 -0
- package/dist/release/compiler.d.ts.map +1 -0
- package/dist/release/compiler.js +19 -0
- package/dist/release/compiler.js.map +1 -0
- package/dist/release/config.d.ts +5 -0
- package/dist/release/config.d.ts.map +1 -0
- package/dist/release/config.js +10 -0
- package/dist/release/config.js.map +1 -0
- package/dist/release/context.d.ts +96 -0
- package/dist/release/context.d.ts.map +1 -0
- package/dist/release/context.js +168 -0
- package/dist/release/context.js.map +1 -0
- package/dist/release/graph.d.ts +271 -0
- package/dist/release/graph.d.ts.map +1 -0
- package/dist/release/graph.js +766 -0
- package/dist/release/graph.js.map +1 -0
- package/dist/release/inspect.d.ts +88 -0
- package/dist/release/inspect.d.ts.map +1 -0
- package/dist/release/inspect.js +75 -0
- package/dist/release/inspect.js.map +1 -0
- package/dist/release/prepare.d.ts +24 -0
- package/dist/release/prepare.d.ts.map +1 -0
- package/dist/release/prepare.js +1116 -0
- package/dist/release/prepare.js.map +1 -0
- package/dist/release/prepared-ref.d.ts +60 -0
- package/dist/release/prepared-ref.d.ts.map +1 -0
- package/dist/release/prepared-ref.js +131 -0
- package/dist/release/prepared-ref.js.map +1 -0
- package/dist/release/prepared-store.d.ts +90 -0
- package/dist/release/prepared-store.d.ts.map +1 -0
- package/dist/release/prepared-store.js +337 -0
- package/dist/release/prepared-store.js.map +1 -0
- package/dist/release/prepared.d.ts +172 -0
- package/dist/release/prepared.d.ts.map +1 -0
- package/dist/release/prepared.js +268 -0
- package/dist/release/prepared.js.map +1 -0
- package/dist/release/staging.d.ts +31 -0
- package/dist/release/staging.d.ts.map +1 -0
- package/dist/release/staging.js +218 -0
- package/dist/release/staging.js.map +1 -0
- package/dist/resolve/authored.d.ts +53 -0
- package/dist/resolve/authored.d.ts.map +1 -0
- package/dist/resolve/authored.js +55 -0
- package/dist/resolve/authored.js.map +1 -0
- package/dist/resolve/encode.d.ts +3 -0
- package/dist/resolve/encode.d.ts.map +1 -0
- package/dist/resolve/encode.js +21 -0
- package/dist/resolve/encode.js.map +1 -0
- package/dist/resolve/errors.d.ts +7 -0
- package/dist/resolve/errors.d.ts.map +1 -0
- package/dist/resolve/errors.js +17 -0
- package/dist/resolve/errors.js.map +1 -0
- package/dist/resolve/facts.d.ts +12 -0
- package/dist/resolve/facts.d.ts.map +1 -0
- package/dist/resolve/facts.js +18 -0
- package/dist/resolve/facts.js.map +1 -0
- package/dist/resolve/resolve.d.ts +10 -0
- package/dist/resolve/resolve.d.ts.map +1 -0
- package/dist/resolve/resolve.js +242 -0
- package/dist/resolve/resolve.js.map +1 -0
- package/dist/store.d.ts +11 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +9 -0
- package/dist/store.js.map +1 -0
- package/examples/README.md +20 -30
- package/examples/github-release/release.config.json +11 -18
- package/examples/homebrew-tap/README.md +11 -0
- package/examples/homebrew-tap/release.config.json +40 -28
- package/examples/multi-target/release.config.json +28 -53
- package/examples/npm-first-publish/release.config.json +23 -25
- package/examples/npm-only/release.config.json +22 -30
- package/examples/portable-cli/README.md +17 -0
- package/examples/portable-cli/artifacts/portable-example-0.1.0-darwin-arm64 +1 -0
- package/examples/portable-cli/artifacts/portable-example-0.1.0-darwin-x64 +1 -0
- package/examples/portable-cli/artifacts/portable-example-0.1.0-linux-arm64 +1 -0
- package/examples/portable-cli/artifacts/portable-example-0.1.0-linux-x64 +1 -0
- package/examples/portable-cli/artifacts/portable-example-0.1.0-windows-x64.exe +1 -0
- package/examples/portable-cli/artifacts/portable_example-0.1.0-py3-none-macosx_10_15_x86_64.whl +1 -0
- package/examples/portable-cli/artifacts/portable_example-0.1.0-py3-none-macosx_11_0_arm64.whl +1 -0
- package/examples/portable-cli/artifacts/portable_example-0.1.0-py3-none-manylinux2014_aarch64.whl +1 -0
- package/examples/portable-cli/artifacts/portable_example-0.1.0-py3-none-manylinux2014_x86_64.whl +1 -0
- package/examples/portable-cli/artifacts/portable_example-0.1.0-py3-none-win_amd64.whl +1 -0
- package/examples/portable-cli/package.json +9 -0
- package/examples/portable-cli/release.config.json +53 -0
- package/examples/portable-cli/src/cli.ts +3 -0
- package/examples/pypi-registry/README.md +8 -0
- package/examples/scoop-bucket/README.md +10 -0
- package/examples/scoop-bucket/release.config.json +40 -30
- package/package.json +60 -156
- package/src/api/api.ts +365 -0
- package/src/api/errors.ts +36 -0
- package/src/api/input.ts +92 -0
- package/src/api/runtime.ts +14 -0
- package/src/api/types.ts +103 -0
- package/src/capabilities/bun-targets.ts +2 -0
- package/src/capabilities/field-ownership.ts +60 -0
- package/src/capabilities/module.ts +158 -0
- package/src/capabilities/registry.ts +333 -0
- package/src/config/config.ts +48 -0
- package/src/correction/coordinator.ts +336 -0
- package/src/correction/index.ts +2 -0
- package/src/correction/intent.ts +172 -0
- package/src/drivers/archive.ts +102 -0
- package/src/drivers/contain.ts +20 -0
- package/src/drivers/environment.ts +28 -0
- package/src/drivers/errors.ts +6 -0
- package/src/drivers/glob.ts +137 -0
- package/src/drivers/process.ts +340 -0
- package/src/drivers/redact.ts +31 -0
- package/src/drivers/seccomp-helper-source.ts +121 -0
- package/src/drivers/utils.ts +10 -0
- package/src/drivers/workspace.ts +40 -0
- package/src/extensions/provider-adapter.ts +99 -0
- package/src/host.ts +140 -0
- package/src/index.ts +64 -0
- package/src/model/artifact-collection.ts +237 -0
- package/src/model/authority.ts +116 -0
- package/src/model/bun-targets.ts +34 -0
- package/src/model/canonical.ts +205 -0
- package/src/model/catalog.ts +220 -0
- package/src/model/digest.ts +172 -0
- package/src/model/errors.ts +6 -0
- package/src/model/primitives.ts +37 -0
- package/src/model/pypi.ts +30 -0
- package/src/model/python-distribution.ts +360 -0
- package/src/model/secret-patterns.ts +11 -0
- package/src/platform/bun.ts +38 -0
- package/src/platform/credentials.ts +1083 -0
- package/src/platform/host-support.ts +4 -0
- package/src/platform/node.ts +38 -0
- package/src/platform/release-runtime.ts +47 -0
- package/src/platform/services.ts +57 -0
- package/src/platform/source-observer.ts +193 -0
- package/src/provider-sdk.ts +48 -0
- package/src/publication/adapter.ts +132 -0
- package/src/publication/authority.ts +397 -0
- package/src/publication/catalog-git.ts +603 -0
- package/src/publication/claim.ts +51 -0
- package/src/publication/coordinator.ts +578 -0
- package/src/publication/github.ts +954 -0
- package/src/publication/http.ts +101 -0
- package/src/publication/index.ts +4 -0
- package/src/publication/npm.ts +525 -0
- package/src/publication/profiles.ts +94 -0
- package/src/publication/publisher.ts +130 -0
- package/src/publication/pypi.ts +463 -0
- package/src/publication/recovery.ts +349 -0
- package/src/publication/report.ts +628 -0
- package/src/recipes/config.ts +395 -0
- package/src/release/capabilities.ts +459 -0
- package/src/release/compiler.ts +28 -0
- package/src/release/config.ts +12 -0
- package/src/release/context.ts +223 -0
- package/src/release/graph.ts +866 -0
- package/src/release/inspect.ts +83 -0
- package/src/release/prepare.ts +1331 -0
- package/src/release/prepared-ref.ts +193 -0
- package/src/release/prepared-store.ts +377 -0
- package/src/release/prepared.ts +299 -0
- package/src/release/staging.ts +257 -0
- package/src/resolve/authored.ts +64 -0
- package/src/resolve/encode.ts +22 -0
- package/src/resolve/errors.ts +15 -0
- package/src/resolve/facts.ts +18 -0
- package/src/resolve/resolve.ts +328 -0
- package/src/store.ts +28 -0
- package/templates/README.md +55 -72
- package/templates/bun-cli-github/README.md +7 -9
- package/templates/bun-cli-github/release.config.json +35 -73
- package/templates/github-actions/release.yml +57 -0
- package/templates/github-actions/reviewed-release.yml +80 -0
- package/templates/multi-target-homebrew/README.md +10 -0
- package/templates/multi-target-homebrew/release.config.json +43 -60
- package/templates/multi-target-scoop/README.md +10 -0
- package/templates/multi-target-scoop/release.config.json +43 -62
- package/templates/npm-github/release.config.json +25 -38
- package/templates/npm-github/reviewed-release.config.json +37 -0
- package/templates/npm-only/README.md +10 -0
- package/templates/npm-only/release.config.json +15 -30
- package/templates/portable-cli/README.md +13 -0
- package/templates/portable-cli/release.config.json +53 -0
- package/dist/artifacts/adapter.d.ts +0 -39
- package/dist/artifacts/adapter.d.ts.map +0 -1
- package/dist/artifacts/adapter.js +0 -23
- package/dist/artifacts/adapter.js.map +0 -1
- package/dist/artifacts/registry.d.ts +0 -21
- package/dist/artifacts/registry.d.ts.map +0 -1
- package/dist/artifacts/registry.js +0 -21
- package/dist/artifacts/registry.js.map +0 -1
- package/dist/config/errors.d.ts +0 -24
- package/dist/config/errors.d.ts.map +0 -1
- package/dist/config/errors.js +0 -19
- package/dist/config/errors.js.map +0 -1
- package/dist/config/load.d.ts +0 -9
- package/dist/config/load.d.ts.map +0 -1
- package/dist/config/load.js +0 -29
- package/dist/config/load.js.map +0 -1
- package/dist/config/schema.d.ts +0 -12
- package/dist/config/schema.d.ts.map +0 -1
- package/dist/config/schema.js +0 -19
- package/dist/config/schema.js.map +0 -1
- package/dist/domain/artifact.d.ts +0 -118
- package/dist/domain/artifact.d.ts.map +0 -1
- package/dist/domain/artifact.js +0 -197
- package/dist/domain/artifact.js.map +0 -1
- package/dist/domain/evidence.d.ts +0 -59
- package/dist/domain/evidence.d.ts.map +0 -1
- package/dist/domain/evidence.js +0 -51
- package/dist/domain/evidence.js.map +0 -1
- package/dist/domain/operation.d.ts +0 -143
- package/dist/domain/operation.d.ts.map +0 -1
- package/dist/domain/operation.js +0 -198
- package/dist/domain/operation.js.map +0 -1
- package/dist/domain/release.d.ts +0 -93
- package/dist/domain/release.d.ts.map +0 -1
- package/dist/domain/release.js +0 -82
- package/dist/domain/release.js.map +0 -1
- package/dist/domain/remote-state.d.ts +0 -58
- package/dist/domain/remote-state.d.ts.map +0 -1
- package/dist/domain/remote-state.js +0 -55
- package/dist/domain/remote-state.js.map +0 -1
- package/dist/domain/target.d.ts +0 -148
- package/dist/domain/target.d.ts.map +0 -1
- package/dist/domain/target.js +0 -151
- package/dist/domain/target.js.map +0 -1
- package/dist/host/host.d.ts +0 -32
- package/dist/host/host.d.ts.map +0 -1
- package/dist/host/host.js +0 -24
- package/dist/host/host.js.map +0 -1
- package/dist/host/http-live.d.ts +0 -6
- package/dist/host/http-live.d.ts.map +0 -1
- package/dist/host/http-live.js +0 -86
- package/dist/host/http-live.js.map +0 -1
- package/dist/host/http.d.ts +0 -43
- package/dist/host/http.d.ts.map +0 -1
- package/dist/host/http.js +0 -59
- package/dist/host/http.js.map +0 -1
- package/dist/host/platform.d.ts +0 -10
- package/dist/host/platform.d.ts.map +0 -1
- package/dist/host/platform.js +0 -114
- package/dist/host/platform.js.map +0 -1
- package/dist/host/test.d.ts +0 -23
- package/dist/host/test.d.ts.map +0 -1
- package/dist/host/test.js +0 -222
- package/dist/host/test.js.map +0 -1
- package/dist/internal/workspace-path.d.ts +0 -15
- package/dist/internal/workspace-path.d.ts.map +0 -1
- package/dist/internal/workspace-path.js +0 -36
- package/dist/internal/workspace-path.js.map +0 -1
- package/dist/planner/artifact-inventory.d.ts +0 -9
- package/dist/planner/artifact-inventory.d.ts.map +0 -1
- package/dist/planner/artifact-inventory.js +0 -86
- package/dist/planner/artifact-inventory.js.map +0 -1
- package/dist/planner/create-release-plan.d.ts +0 -5
- package/dist/planner/create-release-plan.d.ts.map +0 -1
- package/dist/planner/create-release-plan.js +0 -25
- package/dist/planner/create-release-plan.js.map +0 -1
- package/dist/planner/errors.d.ts +0 -67
- package/dist/planner/errors.d.ts.map +0 -1
- package/dist/planner/errors.js +0 -58
- package/dist/planner/errors.js.map +0 -1
- package/dist/planner/evidence-recorder.d.ts +0 -28
- package/dist/planner/evidence-recorder.d.ts.map +0 -1
- package/dist/planner/evidence-recorder.js +0 -362
- package/dist/planner/evidence-recorder.js.map +0 -1
- package/dist/planner/executor.d.ts +0 -58
- package/dist/planner/executor.d.ts.map +0 -1
- package/dist/planner/executor.js +0 -147
- package/dist/planner/executor.js.map +0 -1
- package/dist/planner/normalize-release.d.ts +0 -19
- package/dist/planner/normalize-release.d.ts.map +0 -1
- package/dist/planner/normalize-release.js +0 -342
- package/dist/planner/normalize-release.js.map +0 -1
- package/dist/planner/reconcile.d.ts +0 -17
- package/dist/planner/reconcile.d.ts.map +0 -1
- package/dist/planner/reconcile.js +0 -259
- package/dist/planner/reconcile.js.map +0 -1
- package/dist/planner/render-plan.d.ts +0 -15
- package/dist/planner/render-plan.d.ts.map +0 -1
- package/dist/planner/render-plan.js +0 -231
- package/dist/planner/render-plan.js.map +0 -1
- package/dist/targets/adapter-helpers.d.ts +0 -79
- package/dist/targets/adapter-helpers.d.ts.map +0 -1
- package/dist/targets/adapter-helpers.js +0 -194
- package/dist/targets/adapter-helpers.js.map +0 -1
- package/dist/targets/adapter.d.ts +0 -17
- package/dist/targets/adapter.d.ts.map +0 -1
- package/dist/targets/adapter.js +0 -2
- package/dist/targets/adapter.js.map +0 -1
- package/dist/targets/github-release.d.ts +0 -25
- package/dist/targets/github-release.d.ts.map +0 -1
- package/dist/targets/github-release.js +0 -82
- package/dist/targets/github-release.js.map +0 -1
- package/dist/targets/github.d.ts +0 -11
- package/dist/targets/github.d.ts.map +0 -1
- package/dist/targets/github.js +0 -117
- package/dist/targets/github.js.map +0 -1
- package/dist/targets/homebrew.d.ts +0 -11
- package/dist/targets/homebrew.d.ts.map +0 -1
- package/dist/targets/homebrew.js +0 -210
- package/dist/targets/homebrew.js.map +0 -1
- package/dist/targets/live.d.ts +0 -5
- package/dist/targets/live.d.ts.map +0 -1
- package/dist/targets/live.js +0 -50
- package/dist/targets/live.js.map +0 -1
- package/dist/targets/npm.d.ts +0 -10
- package/dist/targets/npm.d.ts.map +0 -1
- package/dist/targets/npm.js +0 -112
- package/dist/targets/npm.js.map +0 -1
- package/dist/targets/pypi.d.ts +0 -11
- package/dist/targets/pypi.d.ts.map +0 -1
- package/dist/targets/pypi.js +0 -141
- package/dist/targets/pypi.js.map +0 -1
- package/dist/targets/registry.d.ts +0 -25
- package/dist/targets/registry.d.ts.map +0 -1
- package/dist/targets/registry.js +0 -34
- package/dist/targets/registry.js.map +0 -1
- package/dist/targets/scoop.d.ts +0 -11
- package/dist/targets/scoop.d.ts.map +0 -1
- package/dist/targets/scoop.js +0 -88
- package/dist/targets/scoop.js.map +0 -1
- package/dist/types/effect-internal.d.ts +0 -5
- package/dist/types/effect-internal.d.ts.map +0 -1
- package/dist/types/effect-internal.js +0 -2
- package/dist/types/effect-internal.js.map +0 -1
- package/dist/workflows/config.d.ts +0 -202
- package/dist/workflows/config.d.ts.map +0 -1
- package/dist/workflows/config.js +0 -420
- package/dist/workflows/config.js.map +0 -1
- package/dist/workflows/diagnostics.d.ts +0 -62
- package/dist/workflows/diagnostics.d.ts.map +0 -1
- package/dist/workflows/diagnostics.js +0 -530
- package/dist/workflows/diagnostics.js.map +0 -1
- package/dist/workflows/distribution.d.ts +0 -25
- package/dist/workflows/distribution.d.ts.map +0 -1
- package/dist/workflows/distribution.js +0 -24
- package/dist/workflows/distribution.js.map +0 -1
- package/dist/workflows/evidence.d.ts +0 -17
- package/dist/workflows/evidence.d.ts.map +0 -1
- package/dist/workflows/evidence.js +0 -32
- package/dist/workflows/evidence.js.map +0 -1
- package/dist/workflows/index.d.ts +0 -8
- package/dist/workflows/index.d.ts.map +0 -1
- package/dist/workflows/index.js +0 -7
- package/dist/workflows/index.js.map +0 -1
- package/dist/workflows/init.d.ts +0 -84
- package/dist/workflows/init.d.ts.map +0 -1
- package/dist/workflows/init.js +0 -487
- package/dist/workflows/init.js.map +0 -1
- package/dist/workflows/live.d.ts +0 -9
- package/dist/workflows/live.d.ts.map +0 -1
- package/dist/workflows/live.js +0 -7
- package/dist/workflows/live.js.map +0 -1
- package/dist/workflows/options.d.ts +0 -30
- package/dist/workflows/options.d.ts.map +0 -1
- package/dist/workflows/options.js +0 -16
- package/dist/workflows/options.js.map +0 -1
- package/examples/non-strict-skips/artifacts/release-example-skips-0.1.0.tgz +0 -1
- package/examples/non-strict-skips/release.config.json +0 -31
- package/examples/pypi-registry/release.config.json +0 -31
- package/templates/github-actions/plan-and-approved-execute.yml +0 -58
- package/templates/github-actions/plan-only.yml +0 -33
- package/templates/github-actions/trusted-publishing.yml +0 -61
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
import { ArtifactCollectionSelector } from "../model/artifact-collection.js";
|
|
3
|
+
export { PyPiProjectName, PyPiRepository, normalizePyPiProjectName, pypiRepositoryEndpoints } from "../model/pypi.js";
|
|
4
|
+
export type { PyPiRepositoryEndpoints } from "../model/pypi.js";
|
|
5
|
+
declare const CandidateProject_base: Schema.Class<CandidateProject, Schema.Struct<{
|
|
6
|
+
readonly name: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
7
|
+
readonly packageName: Schema.optionalKey<Schema.NonEmptyString>;
|
|
8
|
+
readonly version: Schema.brand<Schema.NonEmptyString, "Version">;
|
|
9
|
+
readonly repository: Schema.optionalKey<Schema.NonEmptyString>;
|
|
10
|
+
readonly tag: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
11
|
+
}>, {}>;
|
|
12
|
+
export declare class CandidateProject extends CandidateProject_base {
|
|
13
|
+
}
|
|
14
|
+
declare const CandidateArtifact_base: Schema.Class<CandidateArtifact, Schema.Struct<{
|
|
15
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "OutputId">;
|
|
16
|
+
readonly path: Schema.brand<Schema.String, "SafeRelativePath">;
|
|
17
|
+
readonly format: Schema.Literals<readonly ["tarball", "zip", "file", "executable"]>;
|
|
18
|
+
}>, {}>;
|
|
19
|
+
export declare class CandidateArtifact extends CandidateArtifact_base {
|
|
20
|
+
}
|
|
21
|
+
declare const CandidateChecksum_base: Schema.Class<CandidateChecksum, Schema.Struct<{
|
|
22
|
+
readonly algorithm: Schema.Literals<readonly ["sha256", "sha512"]>;
|
|
23
|
+
}>, {}>;
|
|
24
|
+
export declare class CandidateChecksum extends CandidateChecksum_base {
|
|
25
|
+
}
|
|
26
|
+
declare const CandidateBunBuild_base: Schema.Class<CandidateBunBuild, Schema.Struct<{
|
|
27
|
+
readonly builder: Schema.Literal<"bun">;
|
|
28
|
+
readonly entry: Schema.brand<Schema.String, "SafeRelativePath">;
|
|
29
|
+
readonly minify: Schema.optionalKey<Schema.Literal<true>>;
|
|
30
|
+
readonly id: Schema.optionalKey<Schema.NonEmptyString>;
|
|
31
|
+
readonly targets: Schema.NonEmptyArray<Schema.Literals<readonly ["linux-x64", "linux-arm64", "darwin-x64", "darwin-arm64"]>>;
|
|
32
|
+
readonly output: Schema.optionalKey<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
33
|
+
readonly binary: Schema.optionalKey<Schema.brand<Schema.NonEmptyString, "NonEmptyName">>;
|
|
34
|
+
}>, {}>;
|
|
35
|
+
export declare class CandidateBunBuild extends CandidateBunBuild_base {
|
|
36
|
+
}
|
|
37
|
+
declare const CandidateCommandBuild_base: Schema.Class<CandidateCommandBuild, Schema.Struct<{
|
|
38
|
+
readonly builder: Schema.Literal<"command">;
|
|
39
|
+
readonly output: Schema.brand<Schema.String, "SafeRelativePath">;
|
|
40
|
+
readonly run: Schema.NonEmptyArray<Schema.String>;
|
|
41
|
+
readonly id: Schema.optionalKey<Schema.NonEmptyString>;
|
|
42
|
+
readonly targets: Schema.NonEmptyArray<Schema.Literals<readonly ["linux-x64", "linux-arm64", "darwin-x64", "darwin-arm64"]>>;
|
|
43
|
+
readonly binary: Schema.optionalKey<Schema.brand<Schema.NonEmptyString, "NonEmptyName">>;
|
|
44
|
+
}>, {}>;
|
|
45
|
+
export declare class CandidateCommandBuild extends CandidateCommandBuild_base {
|
|
46
|
+
}
|
|
47
|
+
declare const CandidatePrebuiltBuild_base: Schema.Class<CandidatePrebuiltBuild, Schema.Struct<{
|
|
48
|
+
readonly builder: Schema.Literal<"prebuilt">;
|
|
49
|
+
readonly output: Schema.brand<Schema.String, "SafeRelativePath">;
|
|
50
|
+
readonly id: Schema.optionalKey<Schema.NonEmptyString>;
|
|
51
|
+
readonly targets: Schema.NonEmptyArray<Schema.Literals<readonly ["linux-x64", "linux-arm64", "darwin-x64", "darwin-arm64"]>>;
|
|
52
|
+
readonly binary: Schema.optionalKey<Schema.brand<Schema.NonEmptyString, "NonEmptyName">>;
|
|
53
|
+
}>, {}>;
|
|
54
|
+
export declare class CandidatePrebuiltBuild extends CandidatePrebuiltBuild_base {
|
|
55
|
+
}
|
|
56
|
+
export declare const CandidateBuild: Schema.Union<readonly [typeof CandidateBunBuild, typeof CandidateCommandBuild, typeof CandidatePrebuiltBuild]>;
|
|
57
|
+
declare const CandidateArchive_base: Schema.Class<CandidateArchive, Schema.Struct<{
|
|
58
|
+
readonly id: Schema.optionalKey<Schema.NonEmptyString>;
|
|
59
|
+
readonly ids: Schema.optionalKey<Schema.NonEmptyArray<Schema.brand<Schema.NonEmptyString, "OutputId">>>;
|
|
60
|
+
readonly nameTemplate: Schema.optionalKey<Schema.NonEmptyString>;
|
|
61
|
+
readonly formats: Schema.optionalKey<Schema.NonEmptyArray<Schema.Literals<readonly ["tar.gz", "zip"]>>>;
|
|
62
|
+
}>, {}>;
|
|
63
|
+
export declare class CandidateArchive extends CandidateArchive_base {
|
|
64
|
+
}
|
|
65
|
+
declare const CandidateCheckPreparation_base: Schema.Class<CandidateCheckPreparation, Schema.Struct<{
|
|
66
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
67
|
+
readonly run: Schema.NonEmptyArray<Schema.String>;
|
|
68
|
+
readonly cwd: Schema.optionalKey<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
69
|
+
readonly inputs: Schema.optionalKey<Schema.$Array<Schema.brand<Schema.NonEmptyString, "OutputId">>>;
|
|
70
|
+
readonly kind: Schema.Literal<"check">;
|
|
71
|
+
}>, {}>;
|
|
72
|
+
export declare class CandidateCheckPreparation extends CandidateCheckPreparation_base {
|
|
73
|
+
}
|
|
74
|
+
declare const CandidateArtifactPreparation_base: Schema.Class<CandidateArtifactPreparation, Schema.Struct<{
|
|
75
|
+
readonly outputs: Schema.NonEmptyArray<Schema.Struct<{
|
|
76
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "OutputId">;
|
|
77
|
+
readonly path: Schema.brand<Schema.String, "SafeRelativePath">;
|
|
78
|
+
readonly kind: Schema.optionalKey<Schema.Literals<readonly ["file", "archive", "executable", "digest"]>>;
|
|
79
|
+
readonly mediaType: Schema.optionalKey<Schema.NonEmptyString>;
|
|
80
|
+
}>>;
|
|
81
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
82
|
+
readonly run: Schema.NonEmptyArray<Schema.String>;
|
|
83
|
+
readonly cwd: Schema.optionalKey<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
84
|
+
readonly inputs: Schema.optionalKey<Schema.$Array<Schema.brand<Schema.NonEmptyString, "OutputId">>>;
|
|
85
|
+
readonly kind: Schema.Literal<"artifact">;
|
|
86
|
+
}>, {}>;
|
|
87
|
+
export declare class CandidateArtifactPreparation extends CandidateArtifactPreparation_base {
|
|
88
|
+
}
|
|
89
|
+
declare const CandidateArtifactCollection_base: Schema.Class<CandidateArtifactCollection, Schema.Struct<{
|
|
90
|
+
readonly root: Schema.brand<Schema.brand<Schema.String, "SafeRelativePath">, "ArtifactCollectionRoot">;
|
|
91
|
+
readonly artifactKind: Schema.Literals<readonly ["file", "executable", "archive", "digest"]>;
|
|
92
|
+
readonly pathSuffix: Schema.brand<Schema.NonEmptyString, "ArtifactPathSuffix">;
|
|
93
|
+
readonly mediaType: Schema.NonEmptyString;
|
|
94
|
+
readonly cardinality: Schema.Union<readonly [typeof import("../model/artifact-collection.js").OneArtifactCardinality, typeof import("../model/artifact-collection.js").OneOrMoreArtifactCardinality, typeof import("../model/artifact-collection.js").BoundedArtifactCardinality]>;
|
|
95
|
+
}>, {}>;
|
|
96
|
+
/** Runtime-discovered outputs for one CommandArtifact preparation. */
|
|
97
|
+
export declare class CandidateArtifactCollection extends CandidateArtifactCollection_base {
|
|
98
|
+
}
|
|
99
|
+
declare const CandidateCollectionPreparation_base: Schema.Class<CandidateCollectionPreparation, Schema.Struct<{
|
|
100
|
+
readonly collection: typeof CandidateArtifactCollection;
|
|
101
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
102
|
+
readonly run: Schema.NonEmptyArray<Schema.String>;
|
|
103
|
+
readonly cwd: Schema.optionalKey<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
104
|
+
readonly inputs: Schema.optionalKey<Schema.$Array<Schema.brand<Schema.NonEmptyString, "OutputId">>>;
|
|
105
|
+
readonly kind: Schema.Literal<"artifact">;
|
|
106
|
+
}>, {}>;
|
|
107
|
+
export declare class CandidateCollectionPreparation extends CandidateCollectionPreparation_base {
|
|
108
|
+
}
|
|
109
|
+
export declare const CandidatePreparation: Schema.Union<readonly [typeof CandidateCheckPreparation, typeof CandidateArtifactPreparation, typeof CandidateCollectionPreparation]>;
|
|
110
|
+
export interface NpmRegistryEndpointPolicy {
|
|
111
|
+
/** Test servers must opt in; production-authored config never enables this. */
|
|
112
|
+
readonly allowInsecureLoopback?: true;
|
|
113
|
+
}
|
|
114
|
+
/** Parse and normalize the complete npm credential audience, including base path. */
|
|
115
|
+
export declare const canonicalizeNpmRegistryEndpoint: (value: string, policy?: NpmRegistryEndpointPolicy) => string;
|
|
116
|
+
/** Canonical npm registry audience, including its normalized base path. */
|
|
117
|
+
export declare const CanonicalNpmRegistryEndpoint: Schema.brand<Schema.NonEmptyString, "CanonicalNpmRegistryEndpoint">;
|
|
118
|
+
export type CanonicalNpmRegistryEndpoint = typeof CanonicalNpmRegistryEndpoint.Type;
|
|
119
|
+
/** npm distribution tags are URI-safe names that do not parse as SemVer ranges. */
|
|
120
|
+
export declare const NpmDistTag: Schema.brand<Schema.NonEmptyString, "NpmDistTag">;
|
|
121
|
+
export type NpmDistTag = typeof NpmDistTag.Type;
|
|
122
|
+
export declare const NpmAccess: Schema.Literals<readonly ["public", "restricted"]>;
|
|
123
|
+
export type NpmAccess = typeof NpmAccess.Type;
|
|
124
|
+
export declare const NpmProvenancePolicy: Schema.Literals<readonly ["automatic", "required", "disabled"]>;
|
|
125
|
+
export type NpmProvenancePolicy = typeof NpmProvenancePolicy.Type;
|
|
126
|
+
declare const NpmTokenAuthentication_base: Schema.Class<NpmTokenAuthentication, Schema.Struct<{
|
|
127
|
+
readonly strategy: Schema.Literal<"token">;
|
|
128
|
+
readonly credential: Schema.brand<Schema.NonEmptyString, "CredentialRef">;
|
|
129
|
+
}>, {}>;
|
|
130
|
+
export declare class NpmTokenAuthentication extends NpmTokenAuthentication_base {
|
|
131
|
+
}
|
|
132
|
+
export declare const NpmTrustedPublisherRepository: Schema.NonEmptyString;
|
|
133
|
+
export declare const NpmTrustedPublisherWorkflow: Schema.NonEmptyString;
|
|
134
|
+
export declare const NpmTrustedPublisherWorkflowRef: Schema.NonEmptyString;
|
|
135
|
+
declare const NpmTrustedPublisherAttestation_base: Schema.Class<NpmTrustedPublisherAttestation, Schema.Struct<{
|
|
136
|
+
readonly provider: Schema.Literal<"github-actions">;
|
|
137
|
+
readonly runner: Schema.Literal<"github-hosted">;
|
|
138
|
+
readonly repository: Schema.NonEmptyString;
|
|
139
|
+
readonly workflow: Schema.NonEmptyString;
|
|
140
|
+
readonly workflowRef: Schema.NonEmptyString;
|
|
141
|
+
readonly allowedAction: Schema.Literal<"npm-publish-direct">;
|
|
142
|
+
}>, {}>;
|
|
143
|
+
/** Operator-attested npm package trust relationship for one GitHub workflow. */
|
|
144
|
+
export declare class NpmTrustedPublisherAttestation extends NpmTrustedPublisherAttestation_base {
|
|
145
|
+
}
|
|
146
|
+
declare const NpmTrustedPublishingAuthentication_base: Schema.Class<NpmTrustedPublishingAuthentication, Schema.Struct<{
|
|
147
|
+
readonly strategy: Schema.Literal<"trusted-publishing">;
|
|
148
|
+
readonly attestation: typeof NpmTrustedPublisherAttestation;
|
|
149
|
+
}>, {}>;
|
|
150
|
+
export declare class NpmTrustedPublishingAuthentication extends NpmTrustedPublishingAuthentication_base {
|
|
151
|
+
}
|
|
152
|
+
export declare const NpmAuthentication: Schema.Union<readonly [typeof NpmTokenAuthentication, typeof NpmTrustedPublishingAuthentication]>;
|
|
153
|
+
export type NpmAuthentication = typeof NpmAuthentication.Type;
|
|
154
|
+
declare const CandidateNpmPublish_base: Schema.Class<CandidateNpmPublish, Schema.Struct<{
|
|
155
|
+
readonly packageArtifact: Schema.brand<Schema.NonEmptyString, "OutputId">;
|
|
156
|
+
readonly packageName: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
157
|
+
readonly registry: Schema.brand<Schema.NonEmptyString, "CanonicalNpmRegistryEndpoint">;
|
|
158
|
+
readonly distTag: Schema.brand<Schema.NonEmptyString, "NpmDistTag">;
|
|
159
|
+
readonly access: Schema.Literals<readonly ["public", "restricted"]>;
|
|
160
|
+
readonly authentication: Schema.Union<readonly [typeof NpmTokenAuthentication, typeof NpmTrustedPublishingAuthentication]>;
|
|
161
|
+
readonly provenance: Schema.Literals<readonly ["automatic", "required", "disabled"]>;
|
|
162
|
+
}>, {}>;
|
|
163
|
+
/** Fully resolved npm intent. Every field is durable and behavior-affecting. */
|
|
164
|
+
export declare class CandidateNpmPublish extends CandidateNpmPublish_base {
|
|
165
|
+
}
|
|
166
|
+
declare const PyPiTokenAuthentication_base: Schema.Class<PyPiTokenAuthentication, Schema.Struct<{
|
|
167
|
+
readonly strategy: Schema.Literal<"token">;
|
|
168
|
+
readonly credential: Schema.brand<Schema.NonEmptyString, "CredentialRef">;
|
|
169
|
+
/** PyPI project-scoped tokens are the only token authority admitted here. */
|
|
170
|
+
readonly scope: Schema.Literal<"project">;
|
|
171
|
+
}>, {}>;
|
|
172
|
+
/** Closed PyPI destination set with standards-defined Simple and upload APIs. */
|
|
173
|
+
export declare class PyPiTokenAuthentication extends PyPiTokenAuthentication_base {
|
|
174
|
+
}
|
|
175
|
+
declare const PyPiExternalTrustedPublishingAuthentication_base: Schema.Class<PyPiExternalTrustedPublishingAuthentication, Schema.Struct<{
|
|
176
|
+
readonly strategy: Schema.Literal<"trusted-publishing">;
|
|
177
|
+
readonly owner: Schema.Literal<"external">;
|
|
178
|
+
readonly action: Schema.Literal<"pypa/gh-action-pypi-publish@release/v1">;
|
|
179
|
+
readonly repository: Schema.NonEmptyString;
|
|
180
|
+
readonly workflow: Schema.NonEmptyString;
|
|
181
|
+
readonly workflowRef: Schema.NonEmptyString;
|
|
182
|
+
readonly environment: Schema.NonEmptyString;
|
|
183
|
+
/** Complete bundled authority set for the configured publisher identity. */
|
|
184
|
+
readonly projects: Schema.NonEmptyArray<Schema.NonEmptyString>;
|
|
185
|
+
}>, {}>;
|
|
186
|
+
/**
|
|
187
|
+
* Durable description of the supported external Trusted Publisher owner.
|
|
188
|
+
* ts-release observes these publications but never exchanges OIDC assertions
|
|
189
|
+
* or dispatches their upload itself.
|
|
190
|
+
*/
|
|
191
|
+
export declare class PyPiExternalTrustedPublishingAuthentication extends PyPiExternalTrustedPublishingAuthentication_base {
|
|
192
|
+
}
|
|
193
|
+
export declare const PyPiAuthentication: Schema.Union<readonly [typeof PyPiTokenAuthentication, typeof PyPiExternalTrustedPublishingAuthentication]>;
|
|
194
|
+
export type PyPiAuthentication = typeof PyPiAuthentication.Type;
|
|
195
|
+
declare const CandidatePyPiPublish_base: Schema.Class<CandidatePyPiPublish, Schema.Struct<{
|
|
196
|
+
readonly artifacts: Schema.NonEmptyArray<Schema.brand<Schema.NonEmptyString, "OutputId">>;
|
|
197
|
+
readonly project: Schema.brand<Schema.NonEmptyString, "PyPiProjectName">;
|
|
198
|
+
readonly version: Schema.brand<Schema.NonEmptyString, "Version">;
|
|
199
|
+
readonly repository: Schema.Literals<readonly ["pypi", "testpypi"]>;
|
|
200
|
+
readonly authentication: Schema.Union<readonly [typeof PyPiTokenAuthentication, typeof PyPiExternalTrustedPublishingAuthentication]>;
|
|
201
|
+
}>, {}>;
|
|
202
|
+
/** Fully resolved prebuilt-distribution publication intent. */
|
|
203
|
+
export declare class CandidatePyPiPublish extends CandidatePyPiPublish_base {
|
|
204
|
+
}
|
|
205
|
+
declare const CandidateCatalogSource_base: Schema.Class<CandidateCatalogSource, Schema.Struct<{
|
|
206
|
+
readonly artifact: Schema.brand<Schema.NonEmptyString, "OutputId">;
|
|
207
|
+
readonly architecture: Schema.Literals<readonly ["x64", "arm64"]>;
|
|
208
|
+
}>, {}>;
|
|
209
|
+
export declare class CandidateCatalogSource extends CandidateCatalogSource_base {
|
|
210
|
+
}
|
|
211
|
+
declare const CandidateHomebrewCatalog_base: Schema.Class<CandidateHomebrewCatalog, Schema.Struct<{
|
|
212
|
+
readonly formulaName: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
213
|
+
readonly installPath: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
214
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
215
|
+
readonly description: Schema.NonEmptyString;
|
|
216
|
+
readonly homepage: Schema.NonEmptyString;
|
|
217
|
+
readonly license: Schema.optionalKey<Schema.NonEmptyString>;
|
|
218
|
+
readonly sources: Schema.NonEmptyArray<typeof CandidateCatalogSource>;
|
|
219
|
+
}>, {}>;
|
|
220
|
+
export declare class CandidateHomebrewCatalog extends CandidateHomebrewCatalog_base {
|
|
221
|
+
}
|
|
222
|
+
declare const CandidateScoopCatalog_base: Schema.Class<CandidateScoopCatalog, Schema.Struct<{
|
|
223
|
+
readonly manifestName: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
224
|
+
readonly bin: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
225
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
226
|
+
readonly description: Schema.NonEmptyString;
|
|
227
|
+
readonly homepage: Schema.NonEmptyString;
|
|
228
|
+
readonly license: Schema.optionalKey<Schema.NonEmptyString>;
|
|
229
|
+
readonly sources: Schema.NonEmptyArray<typeof CandidateCatalogSource>;
|
|
230
|
+
}>, {}>;
|
|
231
|
+
export declare class CandidateScoopCatalog extends CandidateScoopCatalog_base {
|
|
232
|
+
}
|
|
233
|
+
declare const CandidateCatalogs_base: Schema.Class<CandidateCatalogs, Schema.Struct<{
|
|
234
|
+
readonly homebrew: Schema.optionalKey<Schema.NonEmptyArray<typeof CandidateHomebrewCatalog>>;
|
|
235
|
+
readonly scoop: Schema.optionalKey<Schema.NonEmptyArray<typeof CandidateScoopCatalog>>;
|
|
236
|
+
}>, {}>;
|
|
237
|
+
export declare class CandidateCatalogs extends CandidateCatalogs_base {
|
|
238
|
+
}
|
|
239
|
+
declare const CandidateCatalogGitDestination_base: Schema.Class<CandidateCatalogGitDestination, Schema.Struct<{
|
|
240
|
+
readonly catalog: Schema.brand<Schema.NonEmptyString, "NonEmptyName">;
|
|
241
|
+
readonly repository: Schema.brand<Schema.NonEmptyString, "GitHubRepositoryCoordinate">;
|
|
242
|
+
readonly branch: Schema.brand<Schema.NonEmptyString, "GitBranchName">;
|
|
243
|
+
readonly targetPath: Schema.brand<Schema.brand<Schema.String, "SafeRelativePath">, "CatalogRepositoryPath">;
|
|
244
|
+
readonly statePath: Schema.brand<Schema.brand<Schema.String, "SafeRelativePath">, "CatalogRepositoryPath">;
|
|
245
|
+
readonly tokenEnv: Schema.NonEmptyString;
|
|
246
|
+
}>, {}>;
|
|
247
|
+
export declare class CandidateCatalogGitDestination extends CandidateCatalogGitDestination_base {
|
|
248
|
+
}
|
|
249
|
+
declare const CandidateGitHubPublish_base: Schema.Class<CandidateGitHubPublish, Schema.Struct<{
|
|
250
|
+
readonly repository: Schema.optionalKey<Schema.NonEmptyString>;
|
|
251
|
+
readonly tokenEnv: Schema.optionalKey<Schema.NonEmptyString>;
|
|
252
|
+
readonly draft: Schema.optionalKey<Schema.Boolean>;
|
|
253
|
+
readonly prerelease: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Literal<"auto">]>>;
|
|
254
|
+
readonly body: Schema.optionalKey<Schema.String>;
|
|
255
|
+
readonly bodyArtifact: Schema.optionalKey<Schema.brand<Schema.NonEmptyString, "OutputId">>;
|
|
256
|
+
readonly ids: Schema.optionalKey<Schema.$Array<Schema.brand<Schema.NonEmptyString, "OutputId">>>;
|
|
257
|
+
readonly collections: Schema.optionalKey<Schema.NonEmptyArray<typeof ArtifactCollectionSelector>>;
|
|
258
|
+
}>, {}>;
|
|
259
|
+
export declare class CandidateGitHubPublish extends CandidateGitHubPublish_base {
|
|
260
|
+
}
|
|
261
|
+
declare const CandidatePublish_base: Schema.Class<CandidatePublish, Schema.Struct<{
|
|
262
|
+
readonly npm: Schema.optionalKey<typeof CandidateNpmPublish>;
|
|
263
|
+
readonly pypi: Schema.optionalKey<typeof CandidatePyPiPublish>;
|
|
264
|
+
readonly catalogGit: Schema.optionalKey<Schema.NonEmptyArray<typeof CandidateCatalogGitDestination>>;
|
|
265
|
+
readonly github: Schema.optionalKey<typeof CandidateGitHubPublish>;
|
|
266
|
+
}>, {}>;
|
|
267
|
+
export declare class CandidatePublish extends CandidatePublish_base {
|
|
268
|
+
}
|
|
269
|
+
declare const CandidateNpmPackageBuild_base: Schema.Class<CandidateNpmPackageBuild, Schema.Struct<{
|
|
270
|
+
readonly run: Schema.NonEmptyArray<Schema.NonEmptyString>;
|
|
271
|
+
readonly outputRoots: Schema.NonEmptyArray<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
272
|
+
}>, {}>;
|
|
273
|
+
/** Closed package build performed in private verified staging before npm pack. */
|
|
274
|
+
export declare class CandidateNpmPackageBuild extends CandidateNpmPackageBuild_base {
|
|
275
|
+
}
|
|
276
|
+
declare const CandidateNpmPackage_base: Schema.Class<CandidateNpmPackage, Schema.Struct<{
|
|
277
|
+
readonly path: Schema.optionalKey<Schema.brand<Schema.String, "SafeRelativePath">>;
|
|
278
|
+
readonly build: Schema.optionalKey<typeof CandidateNpmPackageBuild>;
|
|
279
|
+
}>, {}>;
|
|
280
|
+
export declare class CandidateNpmPackage extends CandidateNpmPackage_base {
|
|
281
|
+
}
|
|
282
|
+
declare const CandidateConfig_base: Schema.Class<CandidateConfig, Schema.Struct<{
|
|
283
|
+
readonly $schema: Schema.optionalKey<Schema.String>;
|
|
284
|
+
readonly project: typeof CandidateProject;
|
|
285
|
+
readonly builds: Schema.optionalKey<Schema.NonEmptyArray<Schema.Union<readonly [typeof CandidateBunBuild, typeof CandidateCommandBuild, typeof CandidatePrebuiltBuild]>>>;
|
|
286
|
+
readonly preparations: Schema.optionalKey<Schema.NonEmptyArray<Schema.Union<readonly [typeof CandidateCheckPreparation, typeof CandidateArtifactPreparation, typeof CandidateCollectionPreparation]>>>;
|
|
287
|
+
readonly npmPackage: Schema.optionalKey<typeof CandidateNpmPackage>;
|
|
288
|
+
readonly artifacts: Schema.optionalKey<Schema.NonEmptyArray<typeof CandidateArtifact>>;
|
|
289
|
+
readonly archives: Schema.optionalKey<Schema.NonEmptyArray<typeof CandidateArchive>>;
|
|
290
|
+
readonly checksum: Schema.optionalKey<typeof CandidateChecksum>;
|
|
291
|
+
readonly catalogs: Schema.optionalKey<typeof CandidateCatalogs>;
|
|
292
|
+
readonly publish: Schema.optionalKey<typeof CandidatePublish>;
|
|
293
|
+
}>, {}>;
|
|
294
|
+
export declare class CandidateConfig extends CandidateConfig_base {
|
|
295
|
+
}
|
|
296
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/recipes/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
import * as Semver from "semver";
|
|
3
|
+
import { bunArtifactTargetIds } from "../model/bun-targets.js";
|
|
4
|
+
import { CredentialRef } from "../model/authority.js";
|
|
5
|
+
import { ArtifactCollectionContract, ArtifactCollectionSelector } from "../model/artifact-collection.js";
|
|
6
|
+
import { NonEmptyName, OutputId, SafeRelativePath, Version } from "../model/primitives.js";
|
|
7
|
+
import { PyPiProjectName, PyPiRepository } from "../model/pypi.js";
|
|
8
|
+
import { CatalogArchitecture, CatalogRepositoryPath, GitBranchName, GitHubRepositoryCoordinate } from "../model/catalog.js";
|
|
9
|
+
export { PyPiProjectName, PyPiRepository, normalizePyPiProjectName, pypiRepositoryEndpoints } from "../model/pypi.js";
|
|
10
|
+
const optional = Schema.optionalKey;
|
|
11
|
+
const nonempty = Schema.NonEmptyString;
|
|
12
|
+
const target = Schema.Literals(bunArtifactTargetIds);
|
|
13
|
+
export class CandidateProject extends Schema.Class("CandidateProject")({
|
|
14
|
+
name: NonEmptyName,
|
|
15
|
+
packageName: optional(nonempty),
|
|
16
|
+
version: Version,
|
|
17
|
+
repository: optional(nonempty),
|
|
18
|
+
tag: NonEmptyName
|
|
19
|
+
}) {
|
|
20
|
+
}
|
|
21
|
+
export class CandidateArtifact extends Schema.Class("CandidateArtifact")({
|
|
22
|
+
id: OutputId,
|
|
23
|
+
path: SafeRelativePath,
|
|
24
|
+
format: Schema.Literals(["tarball", "zip", "file", "executable"])
|
|
25
|
+
}) {
|
|
26
|
+
}
|
|
27
|
+
export class CandidateChecksum extends Schema.Class("CandidateChecksum")({
|
|
28
|
+
algorithm: Schema.Literals(["sha256", "sha512"])
|
|
29
|
+
}) {
|
|
30
|
+
}
|
|
31
|
+
const build = {
|
|
32
|
+
id: optional(nonempty),
|
|
33
|
+
targets: Schema.NonEmptyArray(target),
|
|
34
|
+
output: optional(SafeRelativePath),
|
|
35
|
+
binary: optional(NonEmptyName)
|
|
36
|
+
};
|
|
37
|
+
export class CandidateBunBuild extends Schema.Class("CandidateBunBuild")({
|
|
38
|
+
...build,
|
|
39
|
+
builder: Schema.Literal("bun"),
|
|
40
|
+
entry: SafeRelativePath,
|
|
41
|
+
minify: optional(Schema.Literal(true))
|
|
42
|
+
}) {
|
|
43
|
+
}
|
|
44
|
+
export class CandidateCommandBuild extends Schema.Class("CandidateCommandBuild")({
|
|
45
|
+
...build,
|
|
46
|
+
builder: Schema.Literal("command"),
|
|
47
|
+
output: SafeRelativePath,
|
|
48
|
+
run: Schema.NonEmptyArray(Schema.String)
|
|
49
|
+
}) {
|
|
50
|
+
}
|
|
51
|
+
export class CandidatePrebuiltBuild extends Schema.Class("CandidatePrebuiltBuild")({
|
|
52
|
+
...build,
|
|
53
|
+
builder: Schema.Literal("prebuilt"),
|
|
54
|
+
output: SafeRelativePath
|
|
55
|
+
}) {
|
|
56
|
+
}
|
|
57
|
+
export const CandidateBuild = Schema.Union([
|
|
58
|
+
CandidateBunBuild,
|
|
59
|
+
CandidateCommandBuild,
|
|
60
|
+
CandidatePrebuiltBuild
|
|
61
|
+
]);
|
|
62
|
+
export class CandidateArchive extends Schema.Class("CandidateArchive")({
|
|
63
|
+
id: optional(nonempty),
|
|
64
|
+
ids: optional(Schema.NonEmptyArray(OutputId)),
|
|
65
|
+
nameTemplate: optional(nonempty),
|
|
66
|
+
formats: optional(Schema.NonEmptyArray(Schema.Literals(["tar.gz", "zip"])))
|
|
67
|
+
}) {
|
|
68
|
+
}
|
|
69
|
+
const preparationBase = {
|
|
70
|
+
id: NonEmptyName,
|
|
71
|
+
run: Schema.NonEmptyArray(Schema.String),
|
|
72
|
+
cwd: optional(SafeRelativePath),
|
|
73
|
+
inputs: optional(Schema.Array(OutputId))
|
|
74
|
+
};
|
|
75
|
+
export class CandidateCheckPreparation extends Schema.Class("CandidateCheckPreparation")({
|
|
76
|
+
kind: Schema.Literal("check"), ...preparationBase
|
|
77
|
+
}) {
|
|
78
|
+
}
|
|
79
|
+
export class CandidateArtifactPreparation extends Schema.Class("CandidateArtifactPreparation")({
|
|
80
|
+
kind: Schema.Literal("artifact"), ...preparationBase,
|
|
81
|
+
outputs: Schema.NonEmptyArray(Schema.Struct({
|
|
82
|
+
id: OutputId, path: SafeRelativePath,
|
|
83
|
+
kind: optional(Schema.Literals(["file", "archive", "executable", "digest"])),
|
|
84
|
+
mediaType: optional(nonempty)
|
|
85
|
+
}))
|
|
86
|
+
}) {
|
|
87
|
+
}
|
|
88
|
+
const { id: _collectionId, producer: _collectionProducer, ...candidateCollectionFields } = ArtifactCollectionContract.fields;
|
|
89
|
+
/** Runtime-discovered outputs for one CommandArtifact preparation. */
|
|
90
|
+
export class CandidateArtifactCollection extends Schema.Class("CandidateArtifactCollection")({
|
|
91
|
+
...candidateCollectionFields
|
|
92
|
+
}) {
|
|
93
|
+
}
|
|
94
|
+
export class CandidateCollectionPreparation extends Schema.Class("CandidateCollectionPreparation")({
|
|
95
|
+
kind: Schema.Literal("artifact"), ...preparationBase,
|
|
96
|
+
collection: CandidateArtifactCollection
|
|
97
|
+
}) {
|
|
98
|
+
}
|
|
99
|
+
export const CandidatePreparation = Schema.Union([
|
|
100
|
+
CandidateCheckPreparation, CandidateArtifactPreparation, CandidateCollectionPreparation
|
|
101
|
+
]);
|
|
102
|
+
/** Parse and normalize the complete npm credential audience, including base path. */
|
|
103
|
+
export const canonicalizeNpmRegistryEndpoint = (value, policy = {}) => {
|
|
104
|
+
let endpoint;
|
|
105
|
+
try {
|
|
106
|
+
endpoint = new URL(value);
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
throw new Error("npm registry must be an absolute HTTPS URL.");
|
|
110
|
+
}
|
|
111
|
+
const loopback = endpoint.hostname === "localhost" || endpoint.hostname === "127.0.0.1" ||
|
|
112
|
+
endpoint.hostname === "[::1]";
|
|
113
|
+
if (endpoint.host.length === 0 || (endpoint.protocol !== "https:" &&
|
|
114
|
+
!(policy.allowInsecureLoopback === true && loopback && endpoint.protocol === "http:"))) {
|
|
115
|
+
throw new Error("npm registry must be HTTPS; HTTP is reserved for explicitly enabled loopback tests.");
|
|
116
|
+
}
|
|
117
|
+
if (endpoint.username.length > 0 || endpoint.password.length > 0) {
|
|
118
|
+
throw new Error("npm registry must not contain credentials.");
|
|
119
|
+
}
|
|
120
|
+
if (endpoint.search.length > 0 || endpoint.hash.length > 0) {
|
|
121
|
+
throw new Error("npm registry must not contain a query or fragment.");
|
|
122
|
+
}
|
|
123
|
+
endpoint.pathname = endpoint.pathname.replace(/\/{2,}/gu, "/").replace(/\/+$/u, "") || "/";
|
|
124
|
+
return `${endpoint.origin}${endpoint.pathname === "/" ? "/" : `${endpoint.pathname}/`}`;
|
|
125
|
+
};
|
|
126
|
+
/** Canonical npm registry audience, including its normalized base path. */
|
|
127
|
+
export const CanonicalNpmRegistryEndpoint = Schema.NonEmptyString.check(Schema.makeFilter((value) => {
|
|
128
|
+
try {
|
|
129
|
+
return canonicalizeNpmRegistryEndpoint(value) === value
|
|
130
|
+
? undefined
|
|
131
|
+
: "npm registry endpoint must be canonical.";
|
|
132
|
+
}
|
|
133
|
+
catch (cause) {
|
|
134
|
+
return cause instanceof Error ? cause.message : String(cause);
|
|
135
|
+
}
|
|
136
|
+
})).pipe(Schema.brand("CanonicalNpmRegistryEndpoint"));
|
|
137
|
+
/** npm distribution tags are URI-safe names that do not parse as SemVer ranges. */
|
|
138
|
+
export const NpmDistTag = Schema.NonEmptyString.check(Schema.makeFilter((value) => {
|
|
139
|
+
if (Semver.validRange(value) !== null) {
|
|
140
|
+
return "npm dist-tag must not be a valid SemVer range.";
|
|
141
|
+
}
|
|
142
|
+
if (value.trim() !== value || encodeURIComponent(value) !== value) {
|
|
143
|
+
return "npm dist-tag must be a nonempty URI-safe name without surrounding whitespace.";
|
|
144
|
+
}
|
|
145
|
+
return undefined;
|
|
146
|
+
})).pipe(Schema.brand("NpmDistTag"));
|
|
147
|
+
export const NpmAccess = Schema.Literals(["public", "restricted"]);
|
|
148
|
+
export const NpmProvenancePolicy = Schema.Literals(["automatic", "required", "disabled"]);
|
|
149
|
+
const environmentName = Schema.NonEmptyString.check(Schema.makeFilter((value) => /^[A-Za-z_][A-Za-z0-9_]*$/u.test(value)
|
|
150
|
+
? undefined
|
|
151
|
+
: "Credential references must be portable environment variable names."));
|
|
152
|
+
export class NpmTokenAuthentication extends Schema.Class("NpmTokenAuthentication")({
|
|
153
|
+
strategy: Schema.Literal("token"),
|
|
154
|
+
credential: CredentialRef.check(Schema.makeFilter((value) => /^[A-Za-z_][A-Za-z0-9_]*$/u.test(value)
|
|
155
|
+
? undefined
|
|
156
|
+
: "npm token credential must be a portable environment variable name."))
|
|
157
|
+
}) {
|
|
158
|
+
}
|
|
159
|
+
export const NpmTrustedPublisherRepository = Schema.NonEmptyString.check(Schema.makeFilter((value) => /^[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+$/u.test(value)
|
|
160
|
+
? undefined
|
|
161
|
+
: "npm trusted-publisher repository must be an owner/repository coordinate."));
|
|
162
|
+
export const NpmTrustedPublisherWorkflow = Schema.NonEmptyString.check(Schema.makeFilter((value) => /^[A-Za-z0-9_.-]+\.ya?ml$/u.test(value)
|
|
163
|
+
? undefined
|
|
164
|
+
: "npm trusted-publisher workflow must be one YAML filename from .github/workflows/."));
|
|
165
|
+
export const NpmTrustedPublisherWorkflowRef = Schema.NonEmptyString.check(Schema.makeFilter((value) => {
|
|
166
|
+
if (/^[a-f0-9]{40}(?:[a-f0-9]{24})?$/u.test(value))
|
|
167
|
+
return undefined;
|
|
168
|
+
if (!/^refs\/(?:heads|tags)\/[A-Za-z0-9][A-Za-z0-9._/-]*$/u.test(value) ||
|
|
169
|
+
value.endsWith("/") || value.endsWith(".") || value.endsWith(".lock") ||
|
|
170
|
+
value.includes("..") || value.includes("//") || value.includes("@{")) {
|
|
171
|
+
return "npm trusted-publisher workflowRef must be an exact heads/tags ref or lowercase 40/64-hex commit SHA.";
|
|
172
|
+
}
|
|
173
|
+
return undefined;
|
|
174
|
+
}));
|
|
175
|
+
/** Operator-attested npm package trust relationship for one GitHub workflow. */
|
|
176
|
+
export class NpmTrustedPublisherAttestation extends Schema.Class("NpmTrustedPublisherAttestation")({
|
|
177
|
+
provider: Schema.Literal("github-actions"),
|
|
178
|
+
runner: Schema.Literal("github-hosted"),
|
|
179
|
+
repository: NpmTrustedPublisherRepository,
|
|
180
|
+
workflow: NpmTrustedPublisherWorkflow,
|
|
181
|
+
workflowRef: NpmTrustedPublisherWorkflowRef,
|
|
182
|
+
allowedAction: Schema.Literal("npm-publish-direct")
|
|
183
|
+
}) {
|
|
184
|
+
}
|
|
185
|
+
export class NpmTrustedPublishingAuthentication extends Schema.Class("NpmTrustedPublishingAuthentication")({
|
|
186
|
+
strategy: Schema.Literal("trusted-publishing"),
|
|
187
|
+
attestation: NpmTrustedPublisherAttestation
|
|
188
|
+
}) {
|
|
189
|
+
}
|
|
190
|
+
export const NpmAuthentication = Schema.Union([
|
|
191
|
+
NpmTokenAuthentication,
|
|
192
|
+
NpmTrustedPublishingAuthentication
|
|
193
|
+
]);
|
|
194
|
+
/** Fully resolved npm intent. Every field is durable and behavior-affecting. */
|
|
195
|
+
export class CandidateNpmPublish extends Schema.Class("CandidateNpmPublish")({
|
|
196
|
+
packageArtifact: OutputId,
|
|
197
|
+
packageName: NonEmptyName,
|
|
198
|
+
registry: CanonicalNpmRegistryEndpoint,
|
|
199
|
+
distTag: NpmDistTag,
|
|
200
|
+
access: NpmAccess,
|
|
201
|
+
authentication: NpmAuthentication,
|
|
202
|
+
provenance: NpmProvenancePolicy
|
|
203
|
+
}) {
|
|
204
|
+
}
|
|
205
|
+
/** Closed PyPI destination set with standards-defined Simple and upload APIs. */
|
|
206
|
+
export class PyPiTokenAuthentication extends Schema.Class("PyPiTokenAuthentication")({
|
|
207
|
+
strategy: Schema.Literal("token"),
|
|
208
|
+
credential: CredentialRef.check(Schema.makeFilter((value) => /^[A-Za-z_][A-Za-z0-9_]*$/u.test(value)
|
|
209
|
+
? undefined
|
|
210
|
+
: "PyPI token credential must be a portable environment variable name.")),
|
|
211
|
+
/** PyPI project-scoped tokens are the only token authority admitted here. */
|
|
212
|
+
scope: Schema.Literal("project")
|
|
213
|
+
}) {
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Durable description of the supported external Trusted Publisher owner.
|
|
217
|
+
* ts-release observes these publications but never exchanges OIDC assertions
|
|
218
|
+
* or dispatches their upload itself.
|
|
219
|
+
*/
|
|
220
|
+
export class PyPiExternalTrustedPublishingAuthentication extends Schema.Class("PyPiExternalTrustedPublishingAuthentication")({
|
|
221
|
+
strategy: Schema.Literal("trusted-publishing"),
|
|
222
|
+
owner: Schema.Literal("external"),
|
|
223
|
+
action: Schema.Literal("pypa/gh-action-pypi-publish@release/v1"),
|
|
224
|
+
repository: NpmTrustedPublisherRepository,
|
|
225
|
+
workflow: NpmTrustedPublisherWorkflow,
|
|
226
|
+
workflowRef: NpmTrustedPublisherWorkflowRef,
|
|
227
|
+
environment: nonempty,
|
|
228
|
+
/** Complete bundled authority set for the configured publisher identity. */
|
|
229
|
+
projects: Schema.NonEmptyArray(nonempty)
|
|
230
|
+
}) {
|
|
231
|
+
}
|
|
232
|
+
export const PyPiAuthentication = Schema.Union([
|
|
233
|
+
PyPiTokenAuthentication,
|
|
234
|
+
PyPiExternalTrustedPublishingAuthentication
|
|
235
|
+
]);
|
|
236
|
+
/** Fully resolved prebuilt-distribution publication intent. */
|
|
237
|
+
export class CandidatePyPiPublish extends Schema.Class("CandidatePyPiPublish")({
|
|
238
|
+
artifacts: Schema.NonEmptyArray(OutputId),
|
|
239
|
+
project: PyPiProjectName,
|
|
240
|
+
version: Version,
|
|
241
|
+
repository: PyPiRepository,
|
|
242
|
+
authentication: PyPiAuthentication
|
|
243
|
+
}) {
|
|
244
|
+
}
|
|
245
|
+
export class CandidateCatalogSource extends Schema.Class("CandidateCatalogSource")({
|
|
246
|
+
artifact: OutputId,
|
|
247
|
+
architecture: CatalogArchitecture
|
|
248
|
+
}) {
|
|
249
|
+
}
|
|
250
|
+
const catalogRendererFields = {
|
|
251
|
+
id: NonEmptyName,
|
|
252
|
+
description: nonempty,
|
|
253
|
+
homepage: nonempty,
|
|
254
|
+
license: optional(nonempty),
|
|
255
|
+
sources: Schema.NonEmptyArray(CandidateCatalogSource)
|
|
256
|
+
};
|
|
257
|
+
export class CandidateHomebrewCatalog extends Schema.Class("CandidateHomebrewCatalog")({
|
|
258
|
+
...catalogRendererFields,
|
|
259
|
+
formulaName: NonEmptyName,
|
|
260
|
+
installPath: NonEmptyName
|
|
261
|
+
}) {
|
|
262
|
+
}
|
|
263
|
+
export class CandidateScoopCatalog extends Schema.Class("CandidateScoopCatalog")({
|
|
264
|
+
...catalogRendererFields,
|
|
265
|
+
manifestName: NonEmptyName,
|
|
266
|
+
bin: NonEmptyName
|
|
267
|
+
}) {
|
|
268
|
+
}
|
|
269
|
+
export class CandidateCatalogs extends Schema.Class("CandidateCatalogs")({
|
|
270
|
+
homebrew: optional(Schema.NonEmptyArray(CandidateHomebrewCatalog)),
|
|
271
|
+
scoop: optional(Schema.NonEmptyArray(CandidateScoopCatalog))
|
|
272
|
+
}) {
|
|
273
|
+
}
|
|
274
|
+
export class CandidateCatalogGitDestination extends Schema.Class("CandidateCatalogGitDestination")({
|
|
275
|
+
catalog: NonEmptyName,
|
|
276
|
+
repository: GitHubRepositoryCoordinate,
|
|
277
|
+
branch: GitBranchName,
|
|
278
|
+
targetPath: CatalogRepositoryPath,
|
|
279
|
+
statePath: CatalogRepositoryPath,
|
|
280
|
+
tokenEnv: environmentName
|
|
281
|
+
}) {
|
|
282
|
+
}
|
|
283
|
+
export class CandidateGitHubPublish extends Schema.Class("CandidateGitHubPublish")({
|
|
284
|
+
repository: optional(nonempty),
|
|
285
|
+
tokenEnv: optional(environmentName),
|
|
286
|
+
draft: optional(Schema.Boolean),
|
|
287
|
+
prerelease: optional(Schema.Union([Schema.Boolean, Schema.Literal("auto")])),
|
|
288
|
+
body: optional(Schema.String),
|
|
289
|
+
bodyArtifact: optional(OutputId),
|
|
290
|
+
ids: optional(Schema.Array(OutputId)),
|
|
291
|
+
collections: optional(Schema.NonEmptyArray(ArtifactCollectionSelector))
|
|
292
|
+
}) {
|
|
293
|
+
}
|
|
294
|
+
export class CandidatePublish extends Schema.Class("CandidatePublish")({
|
|
295
|
+
npm: optional(CandidateNpmPublish),
|
|
296
|
+
pypi: optional(CandidatePyPiPublish),
|
|
297
|
+
catalogGit: optional(Schema.NonEmptyArray(CandidateCatalogGitDestination)),
|
|
298
|
+
github: optional(CandidateGitHubPublish)
|
|
299
|
+
}) {
|
|
300
|
+
}
|
|
301
|
+
/** Closed package build performed in private verified staging before npm pack. */
|
|
302
|
+
export class CandidateNpmPackageBuild extends Schema.Class("CandidateNpmPackageBuild")({
|
|
303
|
+
run: Schema.NonEmptyArray(Schema.NonEmptyString),
|
|
304
|
+
outputRoots: Schema.NonEmptyArray(SafeRelativePath)
|
|
305
|
+
}) {
|
|
306
|
+
}
|
|
307
|
+
export class CandidateNpmPackage extends Schema.Class("CandidateNpmPackage")({
|
|
308
|
+
path: optional(SafeRelativePath),
|
|
309
|
+
build: optional(CandidateNpmPackageBuild)
|
|
310
|
+
}) {
|
|
311
|
+
}
|
|
312
|
+
export class CandidateConfig extends Schema.Class("CandidateConfig")({
|
|
313
|
+
"$schema": optional(Schema.String),
|
|
314
|
+
project: CandidateProject,
|
|
315
|
+
builds: optional(Schema.NonEmptyArray(CandidateBuild)),
|
|
316
|
+
preparations: optional(Schema.NonEmptyArray(CandidatePreparation)),
|
|
317
|
+
npmPackage: optional(CandidateNpmPackage),
|
|
318
|
+
artifacts: optional(Schema.NonEmptyArray(CandidateArtifact)),
|
|
319
|
+
archives: optional(Schema.NonEmptyArray(CandidateArchive)),
|
|
320
|
+
checksum: optional(CandidateChecksum),
|
|
321
|
+
catalogs: optional(CandidateCatalogs),
|
|
322
|
+
publish: optional(CandidatePublish)
|
|
323
|
+
}) {
|
|
324
|
+
}
|
|
325
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/recipes/config.ts"],"names":[],"mappings":"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"}
|