@mannyc1/ts-release 0.0.6 → 0.0.7

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.
Files changed (125) hide show
  1. package/ARCHITECTURE.md +13 -8
  2. package/README.md +226 -448
  3. package/SPEC.md +48 -43
  4. package/dist/artifacts/adapter.d.ts +39 -0
  5. package/dist/artifacts/adapter.d.ts.map +1 -0
  6. package/dist/artifacts/adapter.js +23 -0
  7. package/dist/artifacts/adapter.js.map +1 -0
  8. package/dist/artifacts/registry.d.ts +21 -0
  9. package/dist/artifacts/registry.d.ts.map +1 -0
  10. package/dist/artifacts/registry.js +21 -0
  11. package/dist/artifacts/registry.js.map +1 -0
  12. package/dist/config/schema.js +1 -1
  13. package/dist/config/schema.js.map +1 -1
  14. package/dist/domain/artifact.d.ts +85 -3
  15. package/dist/domain/artifact.d.ts.map +1 -1
  16. package/dist/domain/artifact.js +171 -3
  17. package/dist/domain/artifact.js.map +1 -1
  18. package/dist/domain/evidence.d.ts +16 -65
  19. package/dist/domain/evidence.d.ts.map +1 -1
  20. package/dist/domain/evidence.js +15 -60
  21. package/dist/domain/evidence.js.map +1 -1
  22. package/dist/domain/operation.d.ts +7 -17
  23. package/dist/domain/operation.d.ts.map +1 -1
  24. package/dist/domain/operation.js +22 -144
  25. package/dist/domain/operation.js.map +1 -1
  26. package/dist/domain/release.d.ts +1 -49
  27. package/dist/domain/release.d.ts.map +1 -1
  28. package/dist/domain/release.js +2 -47
  29. package/dist/domain/release.js.map +1 -1
  30. package/dist/domain/remote-state.d.ts +0 -27
  31. package/dist/domain/remote-state.d.ts.map +1 -1
  32. package/dist/domain/remote-state.js +1 -23
  33. package/dist/domain/remote-state.js.map +1 -1
  34. package/dist/domain/target.d.ts +14 -1
  35. package/dist/domain/target.d.ts.map +1 -1
  36. package/dist/domain/target.js +17 -3
  37. package/dist/domain/target.js.map +1 -1
  38. package/dist/planner/artifact-inventory.d.ts.map +1 -1
  39. package/dist/planner/artifact-inventory.js +3 -1
  40. package/dist/planner/artifact-inventory.js.map +1 -1
  41. package/dist/planner/errors.d.ts +2 -16
  42. package/dist/planner/errors.d.ts.map +1 -1
  43. package/dist/planner/errors.js +2 -14
  44. package/dist/planner/errors.js.map +1 -1
  45. package/dist/planner/evidence-recorder.d.ts +8 -6
  46. package/dist/planner/evidence-recorder.d.ts.map +1 -1
  47. package/dist/planner/evidence-recorder.js +50 -18
  48. package/dist/planner/evidence-recorder.js.map +1 -1
  49. package/dist/planner/executor.d.ts +12 -12
  50. package/dist/planner/executor.d.ts.map +1 -1
  51. package/dist/planner/executor.js +43 -55
  52. package/dist/planner/executor.js.map +1 -1
  53. package/dist/planner/normalize-release.d.ts +3 -0
  54. package/dist/planner/normalize-release.d.ts.map +1 -1
  55. package/dist/planner/normalize-release.js +128 -4
  56. package/dist/planner/normalize-release.js.map +1 -1
  57. package/dist/planner/reconcile.d.ts.map +1 -1
  58. package/dist/planner/reconcile.js +2 -4
  59. package/dist/planner/reconcile.js.map +1 -1
  60. package/dist/planner/render-plan.d.ts.map +1 -1
  61. package/dist/planner/render-plan.js +12 -19
  62. package/dist/planner/render-plan.js.map +1 -1
  63. package/dist/targets/adapter-helpers.d.ts +20 -5
  64. package/dist/targets/adapter-helpers.d.ts.map +1 -1
  65. package/dist/targets/adapter-helpers.js +77 -7
  66. package/dist/targets/adapter-helpers.js.map +1 -1
  67. package/dist/targets/github.d.ts.map +1 -1
  68. package/dist/targets/github.js +1 -9
  69. package/dist/targets/github.js.map +1 -1
  70. package/dist/targets/homebrew.d.ts.map +1 -1
  71. package/dist/targets/homebrew.js +131 -18
  72. package/dist/targets/homebrew.js.map +1 -1
  73. package/dist/targets/npm.d.ts.map +1 -1
  74. package/dist/targets/npm.js +1 -7
  75. package/dist/targets/npm.js.map +1 -1
  76. package/dist/targets/pypi.d.ts.map +1 -1
  77. package/dist/targets/pypi.js +50 -12
  78. package/dist/targets/pypi.js.map +1 -1
  79. package/dist/targets/scoop.d.ts.map +1 -1
  80. package/dist/targets/scoop.js +18 -8
  81. package/dist/targets/scoop.js.map +1 -1
  82. package/dist/workflows/config.d.ts +69 -119
  83. package/dist/workflows/config.d.ts.map +1 -1
  84. package/dist/workflows/config.js +80 -125
  85. package/dist/workflows/config.js.map +1 -1
  86. package/dist/workflows/diagnostics.d.ts.map +1 -1
  87. package/dist/workflows/diagnostics.js +6 -3
  88. package/dist/workflows/diagnostics.js.map +1 -1
  89. package/dist/workflows/distribution.d.ts +25 -0
  90. package/dist/workflows/distribution.d.ts.map +1 -0
  91. package/dist/workflows/distribution.js +24 -0
  92. package/dist/workflows/distribution.js.map +1 -0
  93. package/dist/workflows/evidence.d.ts +4 -13
  94. package/dist/workflows/evidence.d.ts.map +1 -1
  95. package/dist/workflows/evidence.js +15 -27
  96. package/dist/workflows/evidence.js.map +1 -1
  97. package/dist/workflows/index.d.ts +1 -0
  98. package/dist/workflows/index.d.ts.map +1 -1
  99. package/dist/workflows/index.js +1 -0
  100. package/dist/workflows/index.js.map +1 -1
  101. package/dist/workflows/init.d.ts +3 -3
  102. package/dist/workflows/init.d.ts.map +1 -1
  103. package/dist/workflows/init.js +46 -0
  104. package/dist/workflows/init.js.map +1 -1
  105. package/examples/README.md +4 -4
  106. package/package.json +18 -15
  107. package/templates/README.md +15 -2
  108. package/templates/bun-cli-github/README.md +14 -0
  109. package/templates/bun-cli-github/release.config.json +89 -0
  110. package/dist/domain/status.d.ts +0 -43
  111. package/dist/domain/status.d.ts.map +0 -1
  112. package/dist/domain/status.js +0 -51
  113. package/dist/domain/status.js.map +0 -1
  114. package/dist/internal/workflow-phases.d.ts +0 -3
  115. package/dist/internal/workflow-phases.d.ts.map +0 -1
  116. package/dist/internal/workflow-phases.js +0 -2
  117. package/dist/internal/workflow-phases.js.map +0 -1
  118. package/dist/planner/release-eligibility.d.ts +0 -39
  119. package/dist/planner/release-eligibility.d.ts.map +0 -1
  120. package/dist/planner/release-eligibility.js +0 -578
  121. package/dist/planner/release-eligibility.js.map +0 -1
  122. package/dist/planner/status.d.ts +0 -40
  123. package/dist/planner/status.d.ts.map +0 -1
  124. package/dist/planner/status.js +0 -313
  125. package/dist/planner/status.js.map +0 -1
@@ -1,11 +1,13 @@
1
1
  # Release Templates
2
2
 
3
3
  Templates are copyable starting points for new repositories. They use
4
- placeholder names and may reference artifacts that you still need to build.
4
+ placeholder names and may reference artifacts that you still need to build or
5
+ stage before package-manager targets can consume them.
5
6
  The checked-in JSON templates are the same policy shape produced by `release
6
7
  init`.
7
8
 
8
- After copying a template, preview the release plan first:
9
+ After copying a template, stage declared artifacts when the template has
10
+ `artifactRecipes`, then preview the distribution plan:
9
11
 
10
12
  ```sh
11
13
  bun run cli plan --config release.config.json --format text
@@ -18,6 +20,7 @@ The CLI can preview or write these configs:
18
20
 
19
21
  ```sh
20
22
  bun run cli init --template npm-github --package @scope/pkg --repo owner/repo
23
+ bun run cli init --template bun-cli-github --package @scope/pkg --repo owner/repo
21
24
  bun run cli init --template npm-github --package @scope/pkg --repo owner/repo --github-actions --write
22
25
  bun run cli init --template npm-github --package @scope/pkg --repo owner/repo --github-actions --package-manager npm --write
23
26
  ```
@@ -26,9 +29,19 @@ Available config templates:
26
29
 
27
30
  - `npm-only`: existing npm package with GitHub Actions trusted publishing.
28
31
  - `npm-github`: npm plus GitHub Releases.
32
+ - `bun-cli-github`: binary-first distribution with a Bun executable artifact recipe, npm package publishing, and GitHub Release assets.
29
33
  - `multi-target-homebrew`: npm, GitHub Releases, and a Homebrew tap.
30
34
  - `multi-target-scoop`: npm, GitHub Releases, and a Scoop bucket.
31
35
 
36
+ Templates with `artifactRecipes` require an explicit staging step before target
37
+ planning expects those files to exist. The Bun CLI template derives
38
+ installable variant metadata such as operating system, architecture, Linux libc,
39
+ and Windows `.exe` extension from each compile target:
40
+
41
+ ```sh
42
+ bun run cli stage-artifacts --config release.config.json
43
+ ```
44
+
32
45
  The npm templates enable provenance, require `packageExists: true`, and set
33
46
  `verifyPackageExists: true` so planning includes a read-only `npm view` check
34
47
  before trusted publishing.
@@ -0,0 +1,14 @@
1
+ # Bun CLI + GitHub Releases
2
+
3
+ This template publishes an npm package and attaches a Bun-compiled CLI matrix
4
+ to a GitHub Release.
5
+
6
+ Before planning or running the release, stage the executable artifacts:
7
+
8
+ ```sh
9
+ bun run cli stage-artifacts --config release.config.json
10
+ ```
11
+
12
+ The `id` fields are project-local identifiers. Rename the recipe, outputs,
13
+ entrypoint, and paths to match your CLI; ts-release uses those values as data
14
+ when it builds the release plan.
@@ -0,0 +1,89 @@
1
+ {
2
+ "$schema": "https://mannyc2.github.io/ts-release/schema/release-config.schema.json",
3
+ "identity": {
4
+ "name": "@scope/pkg",
5
+ "version": "0.1.0",
6
+ "commit": "abc123",
7
+ "tag": "v0.1.0"
8
+ },
9
+ "artifacts": [
10
+ {
11
+ "id": "package",
12
+ "path": ".",
13
+ "format": "directory",
14
+ "consumers": ["npm"]
15
+ }
16
+ ],
17
+ "artifactRecipes": [
18
+ {
19
+ "_tag": "BunExecutableArtifactRecipe",
20
+ "id": "cli",
21
+ "entrypoint": "src/cli.ts",
22
+ "outputs": [
23
+ {
24
+ "id": "cli-linux-x64",
25
+ "target": "bun-linux-x64-baseline",
26
+ "path": "artifacts/pkg-{version}-linux-x64",
27
+ "consumers": ["github"]
28
+ },
29
+ {
30
+ "id": "cli-linux-arm64",
31
+ "target": "bun-linux-arm64",
32
+ "path": "artifacts/pkg-{version}-linux-arm64",
33
+ "consumers": ["github"]
34
+ },
35
+ {
36
+ "id": "cli-darwin-x64",
37
+ "target": "bun-darwin-x64",
38
+ "path": "artifacts/pkg-{version}-darwin-x64",
39
+ "consumers": ["github"]
40
+ },
41
+ {
42
+ "id": "cli-darwin-arm64",
43
+ "target": "bun-darwin-arm64",
44
+ "path": "artifacts/pkg-{version}-darwin-arm64",
45
+ "consumers": ["github"]
46
+ },
47
+ {
48
+ "id": "cli-windows-x64",
49
+ "target": "bun-windows-x64-baseline",
50
+ "path": "artifacts/pkg-{version}-windows-x64.exe",
51
+ "consumers": ["github"]
52
+ }
53
+ ]
54
+ }
55
+ ],
56
+ "targets": [
57
+ {
58
+ "_tag": "NpmRegistryTarget",
59
+ "id": "npm",
60
+ "registry": "https://registry.npmjs.org",
61
+ "packageName": "@scope/pkg",
62
+ "packagePath": ".",
63
+ "trustedPublishing": {
64
+ "provider": "github-actions",
65
+ "workflow": "release.yml",
66
+ "packageExists": true,
67
+ "verifyPackageExists": true
68
+ },
69
+ "access": "public",
70
+ "provenance": true,
71
+ "dryRunSupport": "native",
72
+ "mutability": "immutable",
73
+ "recovery": "publish-new-version"
74
+ },
75
+ {
76
+ "_tag": "GitHubReleaseTarget",
77
+ "id": "github",
78
+ "repository": "owner/repo",
79
+ "tokenEnv": "GH_TOKEN",
80
+ "draft": true,
81
+ "prerelease": false,
82
+ "dryRunSupport": "simulated",
83
+ "mutability": "mutable-release",
84
+ "recovery": "delete-and-recreate"
85
+ }
86
+ ],
87
+ "strict": true,
88
+ "evidenceDirectory": ".release/evidence/{version}"
89
+ }
@@ -1,43 +0,0 @@
1
- import * as Schema from "effect/Schema";
2
- export type * from "../types/effect-internal.js";
3
- export declare const ReleaseWorkflowPhase: Schema.Literals<readonly ["render", "validation", "execution", "verification"]>;
4
- export type ReleaseWorkflowPhase = typeof ReleaseWorkflowPhase.Type;
5
- export declare const ReleaseOperationStatus: Schema.Literals<readonly ["pending", "passed", "warning", "skipped", "failed", "blocked"]>;
6
- export type ReleaseOperationStatus = typeof ReleaseOperationStatus.Type;
7
- export declare const ReleaseOverallStatus: Schema.Literals<readonly ["not-started", "in-progress", "failed", "blocked", "complete"]>;
8
- export type ReleaseOverallStatus = typeof ReleaseOverallStatus.Type;
9
- export declare const ReleaseResumeAction: Schema.Literals<readonly ["skip", "run", "retry-read-only", "block"]>;
10
- export type ReleaseResumeAction = typeof ReleaseResumeAction.Type;
11
- declare const ReleaseOperationStatusRecord_base: Schema.Class<ReleaseOperationStatusRecord, Schema.Struct<{
12
- readonly operationId: Schema.NonEmptyString;
13
- readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
14
- readonly phase: Schema.Literals<readonly ["render", "validation", "execution", "verification"]>;
15
- readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
16
- readonly status: Schema.Literals<readonly ["pending", "passed", "warning", "skipped", "failed", "blocked"]>;
17
- readonly resumeAction: Schema.Literals<readonly ["skip", "run", "retry-read-only", "block"]>;
18
- readonly evidenceId: Schema.optionalKey<Schema.String>;
19
- readonly reason: Schema.optionalKey<Schema.String>;
20
- }>, {}>;
21
- export declare class ReleaseOperationStatusRecord extends ReleaseOperationStatusRecord_base {
22
- }
23
- declare const ReleasePhaseStatusRecord_base: Schema.Class<ReleasePhaseStatusRecord, Schema.Struct<{
24
- readonly phase: Schema.Literals<readonly ["render", "validation", "execution", "verification"]>;
25
- readonly status: Schema.Literals<readonly ["pending", "passed", "warning", "skipped", "failed", "blocked"]>;
26
- readonly completed: Schema.Number;
27
- readonly total: Schema.Number;
28
- }>, {}>;
29
- export declare class ReleasePhaseStatusRecord extends ReleasePhaseStatusRecord_base {
30
- }
31
- declare const ReleaseStatusReport_base: Schema.Class<ReleaseStatusReport, Schema.Struct<{
32
- readonly schemaVersion: Schema.Literal<"release-status/v1">;
33
- readonly releaseName: Schema.NonEmptyString;
34
- readonly releaseVersion: Schema.NonEmptyString;
35
- readonly overallStatus: Schema.Literals<readonly ["not-started", "in-progress", "failed", "blocked", "complete"]>;
36
- readonly canResume: Schema.Boolean;
37
- readonly evidenceDirectory: Schema.String;
38
- readonly phases: Schema.$Array<typeof ReleasePhaseStatusRecord>;
39
- readonly operations: Schema.$Array<typeof ReleaseOperationStatusRecord>;
40
- }>, {}>;
41
- export declare class ReleaseStatusReport extends ReleaseStatusReport_base {
42
- }
43
- //# sourceMappingURL=status.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/domain/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAKvC,mBAAmB,6BAA6B,CAAA;AAEhD,eAAO,MAAM,oBAAoB,iFAAyE,CAAA;AAC1G,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC,IAAI,CAAA;AAEnE,eAAO,MAAM,sBAAsB,4FAOjC,CAAA;AACF,MAAM,MAAM,sBAAsB,GAAG,OAAO,sBAAsB,CAAC,IAAI,CAAA;AAEvE,eAAO,MAAM,oBAAoB,2FAM/B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC,IAAI,CAAA;AAEnE,eAAO,MAAM,mBAAmB,uEAA+D,CAAA;AAC/F,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC,IAAI,CAAA;;;;;;;;;;;AAEjE,qBAAa,4BAA6B,SAAQ,iCAWhD;CAAG;;;;;;;AAEL,qBAAa,wBAAyB,SAAQ,6BAK5C;CAAG;;;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBASvC;CAAG"}
@@ -1,51 +0,0 @@
1
- import * as Schema from "effect/Schema";
2
- import { OperationId, OperationRisk } from "./operation.js";
3
- import { ReleaseName, ReleaseVersion } from "./release.js";
4
- import { TargetId } from "./target.js";
5
- export const ReleaseWorkflowPhase = Schema.Literals(["render", "validation", "execution", "verification"]);
6
- export const ReleaseOperationStatus = Schema.Literals([
7
- "pending",
8
- "passed",
9
- "warning",
10
- "skipped",
11
- "failed",
12
- "blocked"
13
- ]);
14
- export const ReleaseOverallStatus = Schema.Literals([
15
- "not-started",
16
- "in-progress",
17
- "failed",
18
- "blocked",
19
- "complete"
20
- ]);
21
- export const ReleaseResumeAction = Schema.Literals(["skip", "run", "retry-read-only", "block"]);
22
- export class ReleaseOperationStatusRecord extends Schema.Class("ReleaseOperationStatusRecord")({
23
- operationId: OperationId,
24
- targetId: Schema.optionalKey(TargetId),
25
- phase: ReleaseWorkflowPhase,
26
- risk: OperationRisk,
27
- status: ReleaseOperationStatus,
28
- resumeAction: ReleaseResumeAction,
29
- evidenceId: Schema.optionalKey(Schema.String),
30
- reason: Schema.optionalKey(Schema.String)
31
- }) {
32
- }
33
- export class ReleasePhaseStatusRecord extends Schema.Class("ReleasePhaseStatusRecord")({
34
- phase: ReleaseWorkflowPhase,
35
- status: ReleaseOperationStatus,
36
- completed: Schema.Number,
37
- total: Schema.Number
38
- }) {
39
- }
40
- export class ReleaseStatusReport extends Schema.Class("ReleaseStatusReport")({
41
- schemaVersion: Schema.Literal("release-status/v1"),
42
- releaseName: ReleaseName,
43
- releaseVersion: ReleaseVersion,
44
- overallStatus: ReleaseOverallStatus,
45
- canResume: Schema.Boolean,
46
- evidenceDirectory: Schema.String,
47
- phases: Schema.Array(ReleasePhaseStatusRecord),
48
- operations: Schema.Array(ReleaseOperationStatusRecord)
49
- }) {
50
- }
51
- //# sourceMappingURL=status.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/domain/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAItC,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAA;AAG1G,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,QAAQ,CAAC;IACpD,SAAS;IACT,QAAQ;IACR,SAAS;IACT,SAAS;IACT,QAAQ;IACR,SAAS;CACV,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClD,aAAa;IACb,aAAa;IACb,QAAQ;IACR,SAAS;IACT,UAAU;CACX,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAA;AAG/F,MAAM,OAAO,4BAA6B,SAAQ,MAAM,CAAC,KAAK,CAC5D,8BAA8B,CAC/B,CAAC;IACA,WAAW,EAAE,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;IACtC,KAAK,EAAE,oBAAoB;IAC3B,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,sBAAsB;IAC9B,YAAY,EAAE,mBAAmB;IACjC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;CAC1C,CAAC;CAAG;AAEL,MAAM,OAAO,wBAAyB,SAAQ,MAAM,CAAC,KAAK,CAA2B,0BAA0B,CAAC,CAAC;IAC/G,KAAK,EAAE,oBAAoB;IAC3B,MAAM,EAAE,sBAAsB;IAC9B,SAAS,EAAE,MAAM,CAAC,MAAM;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM;CACrB,CAAC;CAAG;AAEL,MAAM,OAAO,mBAAoB,SAAQ,MAAM,CAAC,KAAK,CAAsB,qBAAqB,CAAC,CAAC;IAChG,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAClD,WAAW,EAAE,WAAW;IACxB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC,OAAO;IACzB,iBAAiB,EAAE,MAAM,CAAC,MAAM;IAChC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC;IAC9C,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC;CACvD,CAAC;CAAG"}
@@ -1,3 +0,0 @@
1
- import { ReleaseWorkflowPhase } from "../domain/status.js";
2
- export declare const workflowPhases: ReadonlyArray<ReleaseWorkflowPhase>;
3
- //# sourceMappingURL=workflow-phases.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow-phases.d.ts","sourceRoot":"","sources":["../../src/internal/workflow-phases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,oBAAoB,CAAyD,CAAA"}
@@ -1,2 +0,0 @@
1
- export const workflowPhases = ["render", "validation", "execution", "verification"];
2
- //# sourceMappingURL=workflow-phases.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow-phases.js","sourceRoot":"","sources":["../../src/internal/workflow-phases.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAwC,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAA"}
@@ -1,39 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as FileSystem from "effect/FileSystem";
3
- import * as Path from "effect/Path";
4
- import * as Schema from "effect/Schema";
5
- import { ReleaseEligibilityDecision, ReleaseEligibilityInput } from "../domain/remote-state.js";
6
- import { ReleaseIdentity, ReleaseIntent, ReleasePackageManifest } from "../domain/release.js";
7
- import { GitHubReleaseTarget, NpmRegistryTarget } from "../domain/target.js";
8
- import { ReleaseCommandRunner } from "../host/host.js";
9
- import { ReleaseEligibilityCheckError } from "./errors.js";
10
- export type * from "../types/effect-internal.js";
11
- export { ReleasePackageManifest } from "../domain/release.js";
12
- declare const ReleaseEligibilityRemoteCheck_base: Schema.Class<ReleaseEligibilityRemoteCheck, Schema.Struct<{
13
- readonly packageName: Schema.NonEmptyString;
14
- readonly packageVersion: Schema.NonEmptyString;
15
- readonly npmTargetId: Schema.NonEmptyString;
16
- readonly npmRegistry: Schema.String;
17
- readonly githubTargetId: Schema.NonEmptyString;
18
- readonly githubRepository: Schema.String;
19
- readonly githubTag: Schema.NonEmptyString;
20
- readonly githubTokenEnv: Schema.optionalKey<Schema.String>;
21
- readonly expectedGithubDraft: Schema.Boolean;
22
- }>, {}>;
23
- export declare class ReleaseEligibilityRemoteCheck extends ReleaseEligibilityRemoteCheck_base {
24
- }
25
- interface ReleaseEligibilityMetadata {
26
- readonly strategy?: string | undefined;
27
- readonly source?: string | undefined;
28
- }
29
- export declare const decideReleaseEligibility: (input: ReleaseEligibilityInput) => ReleaseEligibilityDecision;
30
- export declare const releaseEligibilityRemoteCheckFromIdentity: (identity: ReleaseIdentity, targets: readonly (NpmRegistryTarget | GitHubReleaseTarget | import("../domain/target.js").HomebrewTapTarget | import("../domain/target.js").PyPiRegistryTarget | import("../domain/target.js").ScoopBucketTarget)[]) => Effect.Effect<ReleaseEligibilityRemoteCheck, ReleaseEligibilityCheckError, never>;
31
- export declare const releaseEligibilityRemoteCheckFromIntent: (manifest: ReleasePackageManifest, intent: ReleaseIntent) => Effect.Effect<ReleaseEligibilityRemoteCheck, ReleaseEligibilityCheckError, never>;
32
- export declare const classifyNpmRemoteState: (input: ReleaseEligibilityRemoteCheck) => Effect.Effect<"missing" | "published", import("../host/host.js").CommandRunnerError | ReleaseEligibilityCheckError, ReleaseCommandRunner>;
33
- export declare const classifyGitHubReleaseAvailability: (input: ReleaseEligibilityRemoteCheck) => Effect.Effect<"missing" | "published" | "draft", import("../host/host.js").CommandRunnerError | ReleaseEligibilityCheckError, ReleaseCommandRunner>;
34
- export declare const checkReleaseEligibility: (input: ReleaseEligibilityRemoteCheck, metadata?: ReleaseEligibilityMetadata | undefined) => Effect.Effect<ReleaseEligibilityDecision, import("../host/host.js").CommandRunnerError | ReleaseEligibilityCheckError, ReleaseCommandRunner>;
35
- export declare const checkReleaseDecision: (intent: ReleaseIntent, root?: string | undefined) => Effect.Effect<ReleaseEligibilityDecision, import("../host/host.js").CommandRunnerError | import("./errors.js").ReleaseNormalizationError | ReleaseEligibilityCheckError, FileSystem.FileSystem | Path.Path | ReleaseCommandRunner>;
36
- export declare const checkReleaseIntentRequirement: (intent: ReleaseIntent, root?: string | undefined) => Effect.Effect<ReleaseEligibilityDecision, import("./errors.js").ReleaseNormalizationError | ReleaseEligibilityCheckError, FileSystem.FileSystem | Path.Path>;
37
- export declare const renderReleaseEligibilityText: (decision: ReleaseEligibilityDecision) => string;
38
- export declare const renderReleaseEligibilityJson: (decision: ReleaseEligibilityDecision) => string;
39
- //# sourceMappingURL=release-eligibility.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"release-eligibility.d.ts","sourceRoot":"","sources":["../../src/planner/release-eligibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAGL,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EASL,eAAe,EACf,aAAa,EAGb,sBAAsB,EAIvB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAA0B,MAAM,qBAAqB,CAAA;AACpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAA;AAS1D,mBAAmB,6BAA6B,CAAA;AAEhD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;;;;;;;;;;;;AAE7D,qBAAa,6BAA8B,SAAQ,kCAYjD;CAAG;AAQL,UAAU,0BAA0B;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC;AAuED,eAAO,MAAM,wBAAwB,GACnC,OAAO,uBAAuB,KAC7B,0BAwCF,CAAA;AAgCD,eAAO,MAAM,yCAAyC,wUAqCpD,CAAA;AAEF,eAAO,MAAM,uCAAuC,gJAalD,CAAA;AAgGF,eAAO,MAAM,sBAAsB,qLAiBjC,CAAA;AAEF,eAAO,MAAM,iCAAiC,+LAiB5C,CAAA;AAEF,eAAO,MAAM,uBAAuB,2OAmBlC,CAAA;AAscF,eAAO,MAAM,oBAAoB,0RAW/B,CAAA;AAEF,eAAO,MAAM,6BAA6B,oNA4BxC,CAAA;AAEF,eAAO,MAAM,4BAA4B,GAAI,UAAU,0BAA0B,KAAG,MAQnF,CAAA;AAED,eAAO,MAAM,4BAA4B,GAAI,UAAU,0BAA0B,KAAG,MAC1C,CAAA"}