@mannyc1/ts-release 0.0.0 → 0.0.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.
Files changed (160) hide show
  1. package/ARCHITECTURE.md +53 -0
  2. package/README.md +243 -43
  3. package/SPEC.md +8 -1
  4. package/dist/cli/command.d.ts +1 -1
  5. package/dist/cli/command.d.ts.map +1 -1
  6. package/dist/cli/command.js +116 -33
  7. package/dist/cli/command.js.map +1 -1
  8. package/dist/cli/main.js +3 -6
  9. package/dist/cli/main.js.map +1 -1
  10. package/dist/domain/evidence.d.ts +49 -3
  11. package/dist/domain/evidence.d.ts.map +1 -1
  12. package/dist/domain/evidence.js +43 -2
  13. package/dist/domain/evidence.js.map +1 -1
  14. package/dist/domain/operation.d.ts +56 -2
  15. package/dist/domain/operation.d.ts.map +1 -1
  16. package/dist/domain/operation.js +78 -2
  17. package/dist/domain/operation.js.map +1 -1
  18. package/dist/domain/release.d.ts +4 -4
  19. package/dist/domain/remote-state.d.ts +90 -0
  20. package/dist/domain/remote-state.d.ts.map +1 -0
  21. package/dist/domain/remote-state.js +85 -0
  22. package/dist/domain/remote-state.js.map +1 -0
  23. package/dist/domain/status.d.ts +43 -0
  24. package/dist/domain/status.d.ts.map +1 -0
  25. package/dist/domain/status.js +50 -0
  26. package/dist/domain/status.js.map +1 -0
  27. package/dist/domain/target.d.ts +63 -3
  28. package/dist/domain/target.d.ts.map +1 -1
  29. package/dist/domain/target.js +75 -5
  30. package/dist/domain/target.js.map +1 -1
  31. package/dist/host/host.d.ts +7 -23
  32. package/dist/host/host.d.ts.map +1 -1
  33. package/dist/host/host.js +3 -22
  34. package/dist/host/host.js.map +1 -1
  35. package/dist/host/http-live.d.ts +6 -0
  36. package/dist/host/http-live.d.ts.map +1 -0
  37. package/dist/host/http-live.js +82 -0
  38. package/dist/host/http-live.js.map +1 -0
  39. package/dist/host/http.d.ts +40 -0
  40. package/dist/host/http.d.ts.map +1 -0
  41. package/dist/host/http.js +56 -0
  42. package/dist/host/http.js.map +1 -0
  43. package/dist/host/platform.d.ts +10 -0
  44. package/dist/host/platform.d.ts.map +1 -0
  45. package/dist/host/platform.js +121 -0
  46. package/dist/host/platform.js.map +1 -0
  47. package/dist/host/test.d.ts +6 -3
  48. package/dist/host/test.d.ts.map +1 -1
  49. package/dist/host/test.js +111 -25
  50. package/dist/host/test.js.map +1 -1
  51. package/dist/planner/artifact-inventory.d.ts +9 -0
  52. package/dist/planner/artifact-inventory.d.ts.map +1 -0
  53. package/dist/planner/artifact-inventory.js +66 -0
  54. package/dist/planner/artifact-inventory.js.map +1 -0
  55. package/dist/planner/create-release-plan.d.ts +1 -1
  56. package/dist/planner/create-release-plan.d.ts.map +1 -1
  57. package/dist/planner/errors.d.ts +41 -3
  58. package/dist/planner/errors.d.ts.map +1 -1
  59. package/dist/planner/errors.js +35 -3
  60. package/dist/planner/errors.js.map +1 -1
  61. package/dist/planner/evidence-recorder.d.ts +16 -8
  62. package/dist/planner/evidence-recorder.d.ts.map +1 -1
  63. package/dist/planner/evidence-recorder.js +244 -17
  64. package/dist/planner/evidence-recorder.js.map +1 -1
  65. package/dist/planner/executor.d.ts +54 -15
  66. package/dist/planner/executor.d.ts.map +1 -1
  67. package/dist/planner/executor.js +117 -38
  68. package/dist/planner/executor.js.map +1 -1
  69. package/dist/planner/normalize-release.d.ts +2 -2
  70. package/dist/planner/normalize-release.d.ts.map +1 -1
  71. package/dist/planner/normalize-release.js +80 -42
  72. package/dist/planner/normalize-release.js.map +1 -1
  73. package/dist/planner/reconcile.d.ts +17 -0
  74. package/dist/planner/reconcile.d.ts.map +1 -0
  75. package/dist/planner/reconcile.js +280 -0
  76. package/dist/planner/reconcile.js.map +1 -0
  77. package/dist/planner/release-eligibility.d.ts +33 -0
  78. package/dist/planner/release-eligibility.d.ts.map +1 -0
  79. package/dist/planner/release-eligibility.js +172 -0
  80. package/dist/planner/release-eligibility.js.map +1 -0
  81. package/dist/planner/render-plan.d.ts.map +1 -1
  82. package/dist/planner/render-plan.js +30 -0
  83. package/dist/planner/render-plan.js.map +1 -1
  84. package/dist/planner/status.d.ts +40 -0
  85. package/dist/planner/status.d.ts.map +1 -0
  86. package/dist/planner/status.js +336 -0
  87. package/dist/planner/status.js.map +1 -0
  88. package/dist/runtime/bun.d.ts +9 -0
  89. package/dist/runtime/bun.d.ts.map +1 -0
  90. package/dist/runtime/bun.js +10 -0
  91. package/dist/runtime/bun.js.map +1 -0
  92. package/dist/targets/adapter-helpers.d.ts +31 -0
  93. package/dist/targets/adapter-helpers.d.ts.map +1 -0
  94. package/dist/targets/adapter-helpers.js +67 -0
  95. package/dist/targets/adapter-helpers.js.map +1 -0
  96. package/dist/targets/adapter.d.ts +3 -1
  97. package/dist/targets/adapter.d.ts.map +1 -1
  98. package/dist/targets/github.d.ts +2 -2
  99. package/dist/targets/github.d.ts.map +1 -1
  100. package/dist/targets/github.js +74 -83
  101. package/dist/targets/github.js.map +1 -1
  102. package/dist/targets/homebrew.d.ts +2 -2
  103. package/dist/targets/homebrew.d.ts.map +1 -1
  104. package/dist/targets/homebrew.js +45 -75
  105. package/dist/targets/homebrew.js.map +1 -1
  106. package/dist/targets/live.d.ts.map +1 -1
  107. package/dist/targets/live.js +10 -0
  108. package/dist/targets/live.js.map +1 -1
  109. package/dist/targets/npm.d.ts +2 -3
  110. package/dist/targets/npm.d.ts.map +1 -1
  111. package/dist/targets/npm.js +90 -55
  112. package/dist/targets/npm.js.map +1 -1
  113. package/dist/targets/pypi.d.ts +11 -0
  114. package/dist/targets/pypi.d.ts.map +1 -0
  115. package/dist/targets/pypi.js +115 -0
  116. package/dist/targets/pypi.js.map +1 -0
  117. package/dist/targets/registry.d.ts +3 -3
  118. package/dist/targets/registry.d.ts.map +1 -1
  119. package/dist/targets/scoop.d.ts +11 -0
  120. package/dist/targets/scoop.d.ts.map +1 -0
  121. package/dist/targets/scoop.js +93 -0
  122. package/dist/targets/scoop.js.map +1 -0
  123. package/dist/version.d.ts +2 -0
  124. package/dist/version.d.ts.map +1 -0
  125. package/dist/version.js +2 -0
  126. package/dist/version.js.map +1 -0
  127. package/dist/workflows/config.d.ts +81 -0
  128. package/dist/workflows/config.d.ts.map +1 -0
  129. package/dist/workflows/config.js +191 -0
  130. package/dist/workflows/config.js.map +1 -0
  131. package/dist/workflows/evidence.d.ts +21 -0
  132. package/dist/workflows/evidence.d.ts.map +1 -0
  133. package/dist/workflows/evidence.js +45 -0
  134. package/dist/workflows/evidence.js.map +1 -0
  135. package/dist/workflows/live.d.ts +7 -0
  136. package/dist/workflows/live.d.ts.map +1 -0
  137. package/dist/workflows/live.js +5 -0
  138. package/dist/workflows/live.js.map +1 -0
  139. package/examples/README.md +20 -3
  140. package/examples/github-release/release.config.json +2 -1
  141. package/examples/multi-target/artifacts/release-example-multi-target-0.1.0.tgz +1 -0
  142. package/examples/multi-target/index.js +1 -0
  143. package/examples/multi-target/package.json +7 -0
  144. package/examples/multi-target/release.config.json +67 -0
  145. package/examples/non-strict-skips/release.config.json +1 -0
  146. package/examples/npm-first-publish/release.config.json +32 -0
  147. package/examples/npm-only/release.config.json +6 -1
  148. package/examples/pypi-registry/artifacts/release_example_pypi-0.1.0-py3-none-any.whl +1 -0
  149. package/examples/pypi-registry/release.config.json +30 -0
  150. package/examples/scoop-bucket/artifacts/release-example-scoop-0.1.0.zip +1 -0
  151. package/examples/scoop-bucket/release.config.json +36 -0
  152. package/package.json +48 -9
  153. package/dist/cli/programmatic.d.ts +0 -25
  154. package/dist/cli/programmatic.d.ts.map +0 -1
  155. package/dist/cli/programmatic.js +0 -48
  156. package/dist/cli/programmatic.js.map +0 -1
  157. package/dist/host/bun.d.ts +0 -9
  158. package/dist/host/bun.d.ts.map +0 -1
  159. package/dist/host/bun.js +0 -156
  160. package/dist/host/bun.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pypi.js","sourceRoot":"","sources":["../../src/targets/pypi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,cAAc,EAEd,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,sBAAsB,CAAA;AAI7B,MAAM,gBAAgB,GAAG,gBAAgB,CAAA;AACzC,MAAM,gBAAgB,GAAG,gBAAgB,CAAA;AAEzC,MAAM,QAAQ,GAAG,CAAC,MAA0B,EAAyB,EAAE,CACrE,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;AAEtH,MAAM,aAAa,GAAG,CACpB,MAA0B,EAC1B,IAA2B,EAC3B,WAAoB,EACP,EAAE,CACf,WAAW,CAAC,IAAI,CAAC;IACf,UAAU,EAAE,QAAQ;IACpB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;IAChD,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;CACjD,CAAC,CAAA;AAEJ,MAAM,YAAY,GAAG,CACnB,MAA0B,EAC1B,IAA2B,EAC3B,WAAoB,EACP,EAAE,CACf,aAAa,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,WAAW,CAAC,CAAA;AAE9D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAA0B,EAAsB,EAAE,CACvF,qBAAqB,CAAC,MAAM,EAAE,2BAA2B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;AAElF,MAAM,eAAe,GAAG,CAAC,MAA0B,EAAE,KAAmB,EAAE,EAAE,CAC1E,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;AAE9E,MAAM,mBAAmB,GAAG,CAAC,MAA0B,EAAE,aAAoC,EAAa,EAAE;IAC1G,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;IAC1C,OAAO,aAAa,KAAK,QAAQ;QAC/B,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC9B,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,cAAc;YAC9B,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,yDAAyD;YACtE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,cAAc,CAAC,+DAA+D,CAAC;YACrF,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,EAAE,KAAK,CAAC;SAClE,CAAC;QACF,CAAC,CAAC,uBAAuB,CAAC;YACxB,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,cAAc;YAC9B,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,aAAa;YACb,oBAAoB,EAAE,gDAAgD;YACtE,kBAAkB,EAAE,8CAA8C;YAClE,gBAAgB,EACd,kHAAkH;YACpH,cAAc,EAAE,2FAA2F;SAC5G,CAAC,CAAA;AACN,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CACtB,MAA0B,EAC1B,aAAoC,EACb,EAAE,CAAC;IAC1B,QAAQ;IACR,kBAAkB;IAClB,MAAM,CAAC,aAAa;IACpB,GAAG,aAAa;CACjB,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,MAA0B,EAA8C,EAAE;IACpG,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS,CAAA;IACpD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS,CAAA;IAEpD,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IACD,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC,IAAI,CAChB,qBAAqB,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,MAAM,EAAE,8EAA8E;SACvF,CAAC,CACH,CAAA;IACH,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,KAAK,gBAAgB,IAAI,MAAM,CAAC,WAAW,KAAK,gBAAgB,EAAE,CAAC;QACvF,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAChB,qBAAqB,CAAC,IAAI,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,MAAM,EACJ,wNAAwN;KAC3N,CAAC,CACH,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,EACzE,MAA0B,EAC1B,KAAmB;IAEnB,KAAK,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;IACjC,KAAK,CAAC,CAAC,0BAA0B,CAAC,MAAM,EAAE,KAAK,EAAE,yDAAyD,CAAC,CAAA;IAE3G,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAChD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,qBAAqB,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,MAAM,EAAE,uDAAuD;SAChE,CAAC,CACH,CAAA;IACH,CAAC;IACD,MAAM,iBAAiB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,CAAA;IACvF,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,qBAAqB,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,MAAM,EAAE,wBAAwB,iBAAiB,CAAC,EAAE,sDAAsD;SAC3G,CAAC,CACH,CAAA;IACH,CAAC;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAChE,OAAO;QACL,wBAAwB,CAAC,IAAI,CAAC;YAC5B,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,iBAAiB;YACjC,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,cAAc,CAAC,2CAA2C,CAAC;YACjE,OAAO,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;SACrD,CAAC;QACF,wBAAwB,CAAC,IAAI,CAAC;YAC5B,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,gBAAgB;YAChC,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,cAAc,CAAC,6CAA6C,CAAC;YACnE,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;SACpD,CAAC;QACF,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC;QAC1C,uBAAuB,CAAC,IAAI,CAAC;YAC3B,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,eAAe;YAC/B,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,WAAW,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,+BAA+B;YACpG,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,gBAAgB,CAAC,qDAAqD,CAAC;YAC7E,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC;SAC5E,CAAC;KACgC,CAAA;AACtC,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,SAAS,EAAE,oBAAoB;IAC/B,YAAY,EAAE,sBAAsB;IACpC,cAAc,EAAE,kBAAkB;CACnC,CAAA"}
@@ -18,8 +18,8 @@ export interface TargetRegistryShape {
18
18
  declare const TargetRegistry_base: Context.ServiceClass<TargetRegistry, "TargetRegistry", TargetRegistryShape>;
19
19
  export declare class TargetRegistry extends TargetRegistry_base {
20
20
  }
21
- export declare const targetCapabilities: (target: import("../domain/target.js").NpmRegistryTarget | import("../domain/target.js").GitHubReleaseTarget | import("../domain/target.js").HomebrewTapTarget) => Effect.Effect<TargetCapabilities, never, TargetRegistry>;
21
+ export declare const targetCapabilities: (target: import("../domain/target.js").NpmRegistryTarget | import("../domain/target.js").GitHubReleaseTarget | import("../domain/target.js").HomebrewTapTarget | import("../domain/target.js").PyPiRegistryTarget | import("../domain/target.js").ScoopBucketTarget) => Effect.Effect<TargetCapabilities, never, TargetRegistry>;
22
22
  export declare const allTargetCapabilities: (model: ReleaseModel) => Effect.Effect<TargetCapabilities[], never, TargetRegistry>;
23
- export declare const planTargetOperations: (target: import("../domain/target.js").NpmRegistryTarget | import("../domain/target.js").GitHubReleaseTarget | import("../domain/target.js").HomebrewTapTarget, model: ReleaseModel) => Effect.Effect<readonly (import("../domain/operation.js").RenderFileOperation | import("../domain/operation.js").ValidateCommandOperation | import("../domain/operation.js").ValidationNoteOperation | import("../domain/operation.js").PublishCommandOperation | import("../domain/operation.js").VerifyRemoteOperation)[], PlanConstructionError | MissingTargetAdapterError, TargetRegistry>;
24
- export declare const planAllTargetOperations: (model: ReleaseModel) => Effect.Effect<(import("../domain/operation.js").RenderFileOperation | import("../domain/operation.js").ValidateCommandOperation | import("../domain/operation.js").ValidationNoteOperation | import("../domain/operation.js").PublishCommandOperation | import("../domain/operation.js").VerifyRemoteOperation)[], PlanConstructionError | MissingTargetAdapterError, TargetRegistry>;
23
+ export declare const planTargetOperations: (target: import("../domain/target.js").NpmRegistryTarget | import("../domain/target.js").GitHubReleaseTarget | import("../domain/target.js").HomebrewTapTarget | import("../domain/target.js").PyPiRegistryTarget | import("../domain/target.js").ScoopBucketTarget, model: ReleaseModel) => Effect.Effect<readonly (import("../domain/operation.js").RenderFileOperation | import("../domain/operation.js").ValidateCommandOperation | import("../domain/operation.js").ValidationNoteOperation | import("../domain/operation.js").PublishCommandOperation | import("../domain/operation.js").VerifyRemoteOperation | import("../domain/operation.js").VerifyHttpOperation)[], PlanConstructionError | MissingTargetAdapterError, TargetRegistry>;
24
+ export declare const planAllTargetOperations: (model: ReleaseModel) => Effect.Effect<(import("../domain/operation.js").RenderFileOperation | import("../domain/operation.js").ValidateCommandOperation | import("../domain/operation.js").ValidationNoteOperation | import("../domain/operation.js").PublishCommandOperation | import("../domain/operation.js").VerifyRemoteOperation | import("../domain/operation.js").VerifyHttpOperation)[], PlanConstructionError | MissingTargetAdapterError, TargetRegistry>;
25
25
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/targets/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAA2B,MAAM,qBAAqB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,mBAAmB,6BAA6B,CAAA;;;;AAEhD,qBAAa,yBAA0B,SAAQ,8BAK9C;CAAG;AAEJ,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,kBAAkB,CAAA;IACzE,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,KAChB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,yBAAyB,GAAG,qBAAqB,CAAC,CAAA;CAChG;;AAED,qBAAa,cAAe,SAAQ,mBAAwE;CAAG;AAE/G,eAAO,MAAM,kBAAkB,6NAG7B,CAAA;AAEF,eAAO,MAAM,qBAAqB,qFAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB,wjBAG/B,CAAA;AAEF,eAAO,MAAM,uBAAuB,gZASlC,CAAA"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/targets/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAA2B,MAAM,qBAAqB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,mBAAmB,6BAA6B,CAAA;;;;AAEhD,qBAAa,yBAA0B,SAAQ,8BAK9C;CAAG;AAEJ,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,kBAAkB,CAAA;IACzE,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,KAChB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,yBAAyB,GAAG,qBAAqB,CAAC,CAAA;CAChG;;AAED,qBAAa,cAAe,SAAQ,mBAAwE;CAAG;AAE/G,eAAO,MAAM,kBAAkB,kUAG7B,CAAA;AAEF,eAAO,MAAM,qBAAqB,qFAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB,otBAG/B,CAAA;AAEF,eAAO,MAAM,uBAAuB,ucASlC,CAAA"}
@@ -0,0 +1,11 @@
1
+ import * as Effect from "effect/Effect";
2
+ import { PublishCommandOperation, RenderFileOperation } from "../domain/operation.js";
3
+ import { ReleaseModel } from "../domain/release.js";
4
+ import { ScoopBucketTarget, TargetCapabilities } from "../domain/target.js";
5
+ import { PlanConstructionError } from "../planner/errors.js";
6
+ import { ScoopTargetAdapter } from "./adapter.js";
7
+ export type * from "../types/effect-internal.js";
8
+ export declare const scoopTargetCapabilities: (target: ScoopBucketTarget) => TargetCapabilities;
9
+ export declare const planScoopOperations: (target: ScoopBucketTarget, model: ReleaseModel) => Effect.Effect<(RenderFileOperation | import("../domain/operation.js").ValidateCommandOperation | import("../domain/operation.js").ValidationNoteOperation | PublishCommandOperation | import("../domain/operation.js").VerifyRemoteOperation | import("../domain/operation.js").VerifyHttpOperation)[], PlanConstructionError, never>;
10
+ export declare const ScoopAdapter: ScoopTargetAdapter;
11
+ //# sourceMappingURL=scoop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoop.d.ts","sourceRoot":"","sources":["../../src/targets/scoop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAML,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAUjD,mBAAmB,6BAA6B,CAAA;AAyBhD,eAAO,MAAM,uBAAuB,GAAI,QAAQ,iBAAiB,KAAG,kBACc,CAAA;AA0DlF,eAAO,MAAM,mBAAmB,2XA2C9B,CAAA;AAEF,eAAO,MAAM,YAAY,EAAE,kBAI1B,CAAA"}
@@ -0,0 +1,93 @@
1
+ import * as Effect from "effect/Effect";
2
+ import { CommandSpec, executeGate, irreversibleGate, PublishCommandOperation, RenderFileOperation, } from "../domain/operation.js";
3
+ import { PlanConstructionError } from "../planner/errors.js";
4
+ import { findRequiredArtifact, requireSha256FileArtifact, rejectNoDryRunInStrictMode, targetCapabilitiesFor, validationNoteOperation, validationStrategyForDryRun } from "./adapter-helpers.js";
5
+ const command = (executable, args) => CommandSpec.make({
6
+ executable,
7
+ args: [...args],
8
+ requiredEnv: [],
9
+ redactedEnv: []
10
+ });
11
+ const rejectUnsupportedTokenEnv = Effect.fn("rejectUnsupportedScoopTokenEnv")(function* (target) {
12
+ if (target.tokenEnv !== undefined) {
13
+ return yield* Effect.fail(PlanConstructionError.make({
14
+ targetId: target.id,
15
+ reason: "Scoop bucket targets currently publish with plain git push and require Git credentials to be configured outside the release plan; tokenEnv is not supported yet."
16
+ }));
17
+ }
18
+ });
19
+ export const scoopTargetCapabilities = (target) => targetCapabilitiesFor(target, validationStrategyForDryRun(target.dryRunSupport));
20
+ const pathBaseName = (path) => {
21
+ const parts = path.replaceAll("\\", "/").split("/");
22
+ return parts[parts.length - 1] ?? path;
23
+ };
24
+ const renderManifest = (target, model) => Effect.gen(function* () {
25
+ const artifact = yield* findRequiredArtifact(model, target.id, target.artifactId, `Scoop target references missing artifact ${target.artifactId}.`);
26
+ const validated = yield* requireSha256FileArtifact(artifact, {
27
+ targetId: target.id,
28
+ directoryReason: "Scoop manifest artifacts must be file-like, not directories.",
29
+ checksumReason: "Scoop manifest rendering requires a sha256 artifact checksum."
30
+ });
31
+ const manifest = {
32
+ version: model.identity.version,
33
+ description: target.description ?? `${model.identity.name} ${model.identity.version} release artifact`,
34
+ homepage: target.homepage ?? `https://github.com/${target.repository}`,
35
+ ...(target.license === undefined ? {} : { license: target.license }),
36
+ url: target.url ?? validated.artifact.path,
37
+ hash: validated.checksum.value,
38
+ ...(target.bin === undefined ? {} : { bin: target.bin })
39
+ };
40
+ return `${JSON.stringify(manifest, null, 2)}\n`;
41
+ });
42
+ const dryRunOperation = (target, dryRunSupport) => validationNoteOperation({
43
+ id: `${target.id}:scoop-manifest-validation`,
44
+ targetId: target.id,
45
+ dryRunSupport,
46
+ simulatedDescription: "Record simulated Scoop manifest validation.",
47
+ skippedDescription: "Record skipped Scoop manifest validation.",
48
+ simulatedMessage: "Scoop manifest validation is simulated by the deterministic release plan.",
49
+ skippedMessage: "Scoop manifest validation was skipped because this target declares no dry-run support."
50
+ });
51
+ export const planScoopOperations = Effect.fn("planScoopOperations")(function* (target, model) {
52
+ yield* rejectUnsupportedTokenEnv(target);
53
+ const dryRunSupport = target.dryRunSupport;
54
+ if (dryRunSupport === "native") {
55
+ return yield* Effect.fail(PlanConstructionError.make({
56
+ targetId: target.id,
57
+ reason: "Scoop bucket targets do not support native validation in the portable adapter yet."
58
+ }));
59
+ }
60
+ yield* rejectNoDryRunInStrictMode(target, model, "Scoop bucket target declares no dry-run support in strict mode.");
61
+ const manifest = yield* renderManifest(target, model);
62
+ const publishRisk = target.mutability === "immutable" ? "irreversible" : "externally-visible";
63
+ const publishGate = publishRisk === "irreversible"
64
+ ? irreversibleGate("Pushing a Scoop bucket update is configured as irreversible.")
65
+ : executeGate("Pushing a Scoop bucket update is externally visible.");
66
+ const bucketDirectory = target.bucketDirectory ?? ".";
67
+ return [
68
+ RenderFileOperation.make({
69
+ id: `${target.id}:scoop-render-manifest`,
70
+ targetId: target.id,
71
+ description: `Render Scoop manifest ${pathBaseName(target.manifestPath)}.`,
72
+ risk: "writes-local",
73
+ gate: executeGate("Rendering a Scoop manifest writes a local generated file."),
74
+ path: target.manifestPath,
75
+ contents: manifest
76
+ }),
77
+ dryRunOperation(target, dryRunSupport),
78
+ PublishCommandOperation.make({
79
+ id: `${target.id}:scoop-push`,
80
+ targetId: target.id,
81
+ description: `Push Scoop bucket update for ${model.identity.name}@${model.identity.version}.`,
82
+ risk: publishRisk,
83
+ gate: publishGate,
84
+ command: command("git", ["-C", bucketDirectory, "push"])
85
+ })
86
+ ];
87
+ });
88
+ export const ScoopAdapter = {
89
+ targetTag: "ScoopBucketTarget",
90
+ capabilities: scoopTargetCapabilities,
91
+ planOperations: planScoopOperations
92
+ };
93
+ //# sourceMappingURL=scoop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoop.js","sourceRoot":"","sources":["../../src/targets/scoop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const RELEASE_VERSION = "0.0.2";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,UAAU,CAAA"}
@@ -0,0 +1,2 @@
1
+ export const RELEASE_VERSION = "0.0.2";
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAA"}
@@ -0,0 +1,81 @@
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 { ConfigReadError } from "../config/errors.js";
6
+ import { ReleaseEligibilityCheckError } from "../planner/errors.js";
7
+ import { RELEASE_VERSION } from "../version.js";
8
+ export type * from "../types/effect-internal.js";
9
+ export { RELEASE_VERSION };
10
+ export declare const ReleasePlanFormat: Schema.Literals<readonly ["json", "text"]>;
11
+ export type ReleasePlanFormat = typeof ReleasePlanFormat.Type;
12
+ declare const ReleaseConfigOptions_base: Schema.Class<ReleaseConfigOptions, Schema.Struct<{
13
+ readonly root: Schema.optionalKey<Schema.String>;
14
+ readonly configPath: Schema.optionalKey<Schema.String>;
15
+ }>, {}>;
16
+ export declare class ReleaseConfigOptions extends ReleaseConfigOptions_base {
17
+ }
18
+ declare const PlanReleaseConfigOptions_base: Schema.Class<PlanReleaseConfigOptions, Schema.Struct<{
19
+ readonly root: Schema.optionalKey<Schema.String>;
20
+ readonly configPath: Schema.optionalKey<Schema.String>;
21
+ readonly format: Schema.optionalKey<Schema.Literals<readonly ["json", "text"]>>;
22
+ }>, {}>;
23
+ export declare class PlanReleaseConfigOptions extends PlanReleaseConfigOptions_base {
24
+ }
25
+ declare const RenderReleaseConfigOptions_base: Schema.Class<RenderReleaseConfigOptions, Schema.Struct<{
26
+ readonly root: Schema.optionalKey<Schema.String>;
27
+ readonly configPath: Schema.optionalKey<Schema.String>;
28
+ readonly execute: Schema.optionalKey<Schema.Boolean>;
29
+ }>, {}>;
30
+ export declare class RenderReleaseConfigOptions extends RenderReleaseConfigOptions_base {
31
+ }
32
+ declare const ReleaseExecutionOptions_base: Schema.Class<ReleaseExecutionOptions, Schema.Struct<{
33
+ readonly root: Schema.optionalKey<Schema.String>;
34
+ readonly configPath: Schema.optionalKey<Schema.String>;
35
+ readonly execute: Schema.optionalKey<Schema.Boolean>;
36
+ readonly approveIrreversible: Schema.optionalKey<Schema.Boolean>;
37
+ }>, {}>;
38
+ export declare class ReleaseExecutionOptions extends ReleaseExecutionOptions_base {
39
+ }
40
+ declare const ReleaseStatusOptions_base: Schema.Class<ReleaseStatusOptions, Schema.Struct<{
41
+ readonly root: Schema.optionalKey<Schema.String>;
42
+ readonly configPath: Schema.optionalKey<Schema.String>;
43
+ readonly format: Schema.optionalKey<Schema.Literals<readonly ["json", "text"]>>;
44
+ }>, {}>;
45
+ export declare class ReleaseStatusOptions extends ReleaseStatusOptions_base {
46
+ }
47
+ declare const ReleaseResumeConfigOptions_base: Schema.Class<ReleaseResumeConfigOptions, Schema.Struct<{
48
+ readonly root: Schema.optionalKey<Schema.String>;
49
+ readonly configPath: Schema.optionalKey<Schema.String>;
50
+ readonly execute: Schema.optionalKey<Schema.Boolean>;
51
+ readonly approveIrreversible: Schema.optionalKey<Schema.Boolean>;
52
+ }>, {}>;
53
+ export declare class ReleaseResumeConfigOptions extends ReleaseResumeConfigOptions_base {
54
+ }
55
+ declare const ReleaseReconcileConfigOptions_base: Schema.Class<ReleaseReconcileConfigOptions, Schema.Struct<{
56
+ readonly root: Schema.optionalKey<Schema.String>;
57
+ readonly configPath: Schema.optionalKey<Schema.String>;
58
+ readonly execute: Schema.optionalKey<Schema.Boolean>;
59
+ }>, {}>;
60
+ export declare class ReleaseReconcileConfigOptions extends ReleaseReconcileConfigOptions_base {
61
+ }
62
+ declare const ReleaseEligibilityConfigOptions_base: Schema.Class<ReleaseEligibilityConfigOptions, Schema.Struct<{
63
+ readonly root: Schema.optionalKey<Schema.String>;
64
+ readonly configPath: Schema.optionalKey<Schema.String>;
65
+ readonly packagePath: Schema.optionalKey<Schema.String>;
66
+ }>, {}>;
67
+ export declare class ReleaseEligibilityConfigOptions extends ReleaseEligibilityConfigOptions_base {
68
+ }
69
+ export declare const planReleaseConfig: (options?: PlanReleaseConfigOptions | undefined) => Effect.Effect<import("../domain/release.js").ReleasePlan, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../targets/registry.js").MissingTargetAdapterError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
70
+ export declare const renderReleaseConfigPlan: (options?: PlanReleaseConfigOptions | undefined) => Effect.Effect<string, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../targets/registry.js").MissingTargetAdapterError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
71
+ export declare const renderReleaseConfig: (options?: RenderReleaseConfigOptions | undefined) => Effect.Effect<import("../domain/evidence.js").EvidenceBundle, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").WorkspaceWriteError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
72
+ export declare const validateReleaseConfig: (options?: ReleaseConfigOptions | undefined) => Effect.Effect<import("../domain/evidence.js").EvidenceBundle, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
73
+ export declare const executeReleaseConfig: (options?: ReleaseExecutionOptions | undefined) => Effect.Effect<import("../domain/evidence.js").EvidenceBundle, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
74
+ export declare const verifyReleaseConfig: (options?: ReleaseConfigOptions | undefined) => Effect.Effect<import("../domain/evidence.js").EvidenceBundle, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto | import("../host/http.js").ReleaseHttp>;
75
+ export declare const runReleaseConfig: (options?: ReleaseExecutionOptions | undefined) => Effect.Effect<import("../domain/evidence.js").ReleaseWorkflowEvidence, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").WorkspaceWriteError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto | import("../host/http.js").ReleaseHttp>;
76
+ export declare const statusReleaseConfig: (options?: ReleaseStatusOptions | undefined) => Effect.Effect<import("../domain/status.js").ReleaseStatusReport, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").EvidenceReadError | import("../targets/registry.js").MissingTargetAdapterError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
77
+ export declare const renderReleaseStatus: (options?: ReleaseStatusOptions | undefined) => Effect.Effect<string, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").EvidenceReadError | import("../targets/registry.js").MissingTargetAdapterError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto>;
78
+ export declare const resumeReleaseConfig: (options?: ReleaseResumeConfigOptions | undefined) => Effect.Effect<import("../domain/evidence.js").ReleaseWorkflowEvidence, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").EvidenceReadError | import("../planner/errors.js").WorkspaceWriteError | import("../planner/errors.js").ResumeBlockedError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto | import("../host/http.js").ReleaseHttp>;
79
+ export declare const reconcileReleaseConfig: (options?: ReleaseReconcileConfigOptions | undefined) => Effect.Effect<import("../domain/evidence.js").EvidenceBundle, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | import("../domain/operation.js").ExecutionApprovalError | import("../planner/errors.js").ReleaseNormalizationError | import("../planner/errors.js").PlanConstructionError | import("../planner/errors.js").RemoteStateInspectionError | import("../planner/errors.js").ReconciliationBlockedError | import("../planner/errors.js").OperationFailedError | import("../targets/registry.js").MissingTargetAdapterError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../targets/registry.js").TargetRegistry | import("../host/host.js").ReleaseCommandRunner | import("effect/Crypto").Crypto | import("../host/http.js").ReleaseHttp>;
80
+ export declare const checkReleaseConfigEligibility: (options?: ReleaseEligibilityConfigOptions | undefined) => Effect.Effect<import("../domain/remote-state.js").ReleaseEligibilityDecision, ConfigReadError | import("../config/errors.js").ConfigParseError | import("../config/errors.js").ConfigValidationError | ReleaseEligibilityCheckError | import("../host/host.js").CommandRunnerError, FileSystem.FileSystem | Path.Path | import("../host/host.js").ReleaseCommandRunner>;
81
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/workflows/config.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;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAuBrD,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,mBAAmB,6BAA6B,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,CAAA;AAE1B,eAAO,MAAM,iBAAiB,4CAAoC,CAAA;AAClE,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAA;;;;;AAE7D,qBAAa,oBAAqB,SAAQ,yBAGxC;CAAG;;;;;;AAEL,qBAAa,wBAAyB,SAAQ,6BAI5C;CAAG;;;;;;AAEL,qBAAa,0BAA2B,SAAQ,+BAI9C;CAAG;;;;;;;AAEL,qBAAa,uBAAwB,SAAQ,4BAK3C;CAAG;;;;;;AAEL,qBAAa,oBAAqB,SAAQ,yBAIxC;CAAG;;;;;;;AAEL,qBAAa,0BAA2B,SAAQ,+BAK9C;CAAG;;;;;;AAEL,qBAAa,6BAA8B,SAAQ,kCAMjD;CAAG;;;;;;AAEL,qBAAa,+BAAgC,SAAQ,oCAMnD;CAAG;AAmGL,eAAO,MAAM,iBAAiB,6jBAQ5B,CAAA;AAEF,eAAO,MAAM,uBAAuB,yhBAOlC,CAAA;AAEF,eAAO,MAAM,mBAAmB,wuBAK9B,CAAA;AAEF,eAAO,MAAM,qBAAqB,4tBAKhC,CAAA;AAEF,eAAO,MAAM,oBAAoB,+tBAK/B,CAAA;AAEF,eAAO,MAAM,mBAAmB,owBAK9B,CAAA;AAEF,eAAO,MAAM,gBAAgB,q0BAK3B,CAAA;AAEF,eAAO,MAAM,mBAAmB,mnBAK9B,CAAA;AAEF,eAAO,MAAM,mBAAmB,wkBAO9B,CAAA;AAEF,eAAO,MAAM,mBAAmB,+6BAK9B,CAAA;AAEF,eAAO,MAAM,sBAAsB,q4BAKjC,CAAA;AAEF,eAAO,MAAM,6BAA6B,oaASxC,CAAA"}
@@ -0,0 +1,191 @@
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 { ConfigReadError } from "../config/errors.js";
6
+ import { parseReleaseIntent } from "../config/load.js";
7
+ import { DEFAULT_CONFIG_PATH } from "../config/schema.js";
8
+ import { ExecutionApproval } from "../domain/operation.js";
9
+ import { createReleasePlan } from "../planner/create-release-plan.js";
10
+ import { executePlan, renderPlan, runApprovedReleaseWorkflow, validatePlan, verifyPlan } from "../planner/executor.js";
11
+ import { renderPlanJson, renderPlanText } from "../planner/render-plan.js";
12
+ import { ReleaseResumeOptions, renderReleaseStatusJson, renderReleaseStatusText, resumeApprovedReleaseWorkflow, statusReleasePlan } from "../planner/status.js";
13
+ import { reconcileReleasePlan, ReleaseReconcileOptions } from "../planner/reconcile.js";
14
+ import { checkReleaseEligibility, ReleasePackageManifest, releaseEligibilityRemoteCheckFromIntent } from "../planner/release-eligibility.js";
15
+ import { ReleaseEligibilityCheckError } from "../planner/errors.js";
16
+ import { RELEASE_VERSION } from "../version.js";
17
+ export { RELEASE_VERSION };
18
+ export const ReleasePlanFormat = Schema.Literals(["json", "text"]);
19
+ export class ReleaseConfigOptions extends Schema.Class("ReleaseConfigOptions")({
20
+ root: Schema.optionalKey(Schema.String),
21
+ configPath: Schema.optionalKey(Schema.String)
22
+ }) {
23
+ }
24
+ export class PlanReleaseConfigOptions extends Schema.Class("PlanReleaseConfigOptions")({
25
+ root: Schema.optionalKey(Schema.String),
26
+ configPath: Schema.optionalKey(Schema.String),
27
+ format: Schema.optionalKey(ReleasePlanFormat)
28
+ }) {
29
+ }
30
+ export class RenderReleaseConfigOptions extends Schema.Class("RenderReleaseConfigOptions")({
31
+ root: Schema.optionalKey(Schema.String),
32
+ configPath: Schema.optionalKey(Schema.String),
33
+ execute: Schema.optionalKey(Schema.Boolean)
34
+ }) {
35
+ }
36
+ export class ReleaseExecutionOptions extends Schema.Class("ReleaseExecutionOptions")({
37
+ root: Schema.optionalKey(Schema.String),
38
+ configPath: Schema.optionalKey(Schema.String),
39
+ execute: Schema.optionalKey(Schema.Boolean),
40
+ approveIrreversible: Schema.optionalKey(Schema.Boolean)
41
+ }) {
42
+ }
43
+ export class ReleaseStatusOptions extends Schema.Class("ReleaseStatusOptions")({
44
+ root: Schema.optionalKey(Schema.String),
45
+ configPath: Schema.optionalKey(Schema.String),
46
+ format: Schema.optionalKey(ReleasePlanFormat)
47
+ }) {
48
+ }
49
+ export class ReleaseResumeConfigOptions extends Schema.Class("ReleaseResumeConfigOptions")({
50
+ root: Schema.optionalKey(Schema.String),
51
+ configPath: Schema.optionalKey(Schema.String),
52
+ execute: Schema.optionalKey(Schema.Boolean),
53
+ approveIrreversible: Schema.optionalKey(Schema.Boolean)
54
+ }) {
55
+ }
56
+ export class ReleaseReconcileConfigOptions extends Schema.Class("ReleaseReconcileConfigOptions")({
57
+ root: Schema.optionalKey(Schema.String),
58
+ configPath: Schema.optionalKey(Schema.String),
59
+ execute: Schema.optionalKey(Schema.Boolean)
60
+ }) {
61
+ }
62
+ export class ReleaseEligibilityConfigOptions extends Schema.Class("ReleaseEligibilityConfigOptions")({
63
+ root: Schema.optionalKey(Schema.String),
64
+ configPath: Schema.optionalKey(Schema.String),
65
+ packagePath: Schema.optionalKey(Schema.String)
66
+ }) {
67
+ }
68
+ const configRoot = (path, options) => {
69
+ if (options.root !== undefined) {
70
+ return options.root;
71
+ }
72
+ if (options.configPath !== undefined && path.isAbsolute(options.configPath)) {
73
+ return path.dirname(options.configPath);
74
+ }
75
+ return ".";
76
+ };
77
+ const configPath = (options) => options.configPath ?? DEFAULT_CONFIG_PATH;
78
+ const packagePath = (options) => options.packagePath ?? "package.json";
79
+ const configReadPath = (path, options) => {
80
+ const pathName = configPath(options);
81
+ return path.isAbsolute(pathName) ? pathName : path.resolve(configRoot(path, options), pathName);
82
+ };
83
+ const packageReadPath = (path, options) => {
84
+ const pathName = packagePath(options);
85
+ return path.isAbsolute(pathName) ? pathName : path.resolve(configRoot(path, options), pathName);
86
+ };
87
+ const approvalFromOptions = (options) => ExecutionApproval.make({
88
+ execute: options.execute ?? false,
89
+ approveIrreversible: options.approveIrreversible ?? false
90
+ });
91
+ const resumeOptionsFromConfigOptions = (options) => ReleaseResumeOptions.make({
92
+ execute: options.execute ?? false,
93
+ approveIrreversible: options.approveIrreversible ?? false
94
+ });
95
+ const reconcileOptionsFromConfigOptions = (options) => ReleaseReconcileOptions.make({
96
+ execute: options.execute ?? false
97
+ });
98
+ const renderApprovalFromOptions = (options) => ExecutionApproval.make({
99
+ execute: options.execute ?? false,
100
+ approveIrreversible: false
101
+ });
102
+ const readReleaseConfig = Effect.fn("workflows.config.readReleaseConfig")(function* (options) {
103
+ const fs = yield* FileSystem.FileSystem;
104
+ const path = yield* Path.Path;
105
+ const pathName = configPath(options);
106
+ const readPath = configReadPath(path, options);
107
+ return yield* fs.readFileString(readPath).pipe(Effect.mapError((error) => ConfigReadError.make({
108
+ path: pathName,
109
+ reason: error.message
110
+ })));
111
+ });
112
+ const decodePackageManifest = Schema.decodeUnknownEffect(ReleasePackageManifest);
113
+ const readPackageManifest = Effect.fn("workflows.config.readPackageManifest")(function* (options) {
114
+ const fs = yield* FileSystem.FileSystem;
115
+ const path = yield* Path.Path;
116
+ const pathName = packagePath(options);
117
+ const readPath = packageReadPath(path, options);
118
+ const contents = yield* fs.readFileString(readPath).pipe(Effect.mapError((error) => ConfigReadError.make({
119
+ path: pathName,
120
+ reason: error.message
121
+ })));
122
+ const parsed = yield* Effect.try({
123
+ try: () => JSON.parse(contents),
124
+ catch: (cause) => ReleaseEligibilityCheckError.make({
125
+ reason: `package manifest is not valid JSON: ${cause instanceof Error ? cause.message : String(cause)}`
126
+ })
127
+ });
128
+ return yield* decodePackageManifest(parsed).pipe(Effect.mapError((error) => ReleaseEligibilityCheckError.make({
129
+ reason: `package manifest is missing release identity fields: ${error.message}`
130
+ })));
131
+ });
132
+ export const planReleaseConfig = Effect.fn("workflows.config.planReleaseConfig")(function* (options = PlanReleaseConfigOptions.make({})) {
133
+ const path = yield* Path.Path;
134
+ const pathName = configPath(options);
135
+ const contents = yield* readReleaseConfig(options);
136
+ const intent = yield* parseReleaseIntent(contents, pathName);
137
+ return yield* createReleasePlan(intent, configRoot(path, options), pathName);
138
+ });
139
+ export const renderReleaseConfigPlan = Effect.fn("workflows.config.renderReleaseConfigPlan")(function* (options = PlanReleaseConfigOptions.make({})) {
140
+ const plan = yield* planReleaseConfig(options);
141
+ return (options.format ?? "text") === "json"
142
+ ? renderPlanJson(plan)
143
+ : renderPlanText(plan);
144
+ });
145
+ export const renderReleaseConfig = Effect.fn("workflows.config.renderReleaseConfig")(function* (options = RenderReleaseConfigOptions.make({})) {
146
+ const plan = yield* planReleaseConfig(options);
147
+ return yield* renderPlan(plan, renderApprovalFromOptions(options));
148
+ });
149
+ export const validateReleaseConfig = Effect.fn("workflows.config.validateReleaseConfig")(function* (options = ReleaseConfigOptions.make({})) {
150
+ const plan = yield* planReleaseConfig(options);
151
+ return yield* validatePlan(plan);
152
+ });
153
+ export const executeReleaseConfig = Effect.fn("workflows.config.executeReleaseConfig")(function* (options = ReleaseExecutionOptions.make({})) {
154
+ const plan = yield* planReleaseConfig(options);
155
+ return yield* executePlan(plan, approvalFromOptions(options));
156
+ });
157
+ export const verifyReleaseConfig = Effect.fn("workflows.config.verifyReleaseConfig")(function* (options = ReleaseConfigOptions.make({})) {
158
+ const plan = yield* planReleaseConfig(options);
159
+ return yield* verifyPlan(plan);
160
+ });
161
+ export const runReleaseConfig = Effect.fn("workflows.config.runReleaseConfig")(function* (options = ReleaseExecutionOptions.make({})) {
162
+ const plan = yield* planReleaseConfig(options);
163
+ return yield* runApprovedReleaseWorkflow(plan, approvalFromOptions(options));
164
+ });
165
+ export const statusReleaseConfig = Effect.fn("workflows.config.statusReleaseConfig")(function* (options = ReleaseStatusOptions.make({})) {
166
+ const plan = yield* planReleaseConfig(options);
167
+ return yield* statusReleasePlan(plan);
168
+ });
169
+ export const renderReleaseStatus = Effect.fn("workflows.config.renderReleaseStatus")(function* (options = ReleaseStatusOptions.make({})) {
170
+ const report = yield* statusReleaseConfig(options);
171
+ return (options.format ?? "text") === "json"
172
+ ? renderReleaseStatusJson(report)
173
+ : renderReleaseStatusText(report);
174
+ });
175
+ export const resumeReleaseConfig = Effect.fn("workflows.config.resumeReleaseConfig")(function* (options = ReleaseResumeConfigOptions.make({})) {
176
+ const plan = yield* planReleaseConfig(options);
177
+ return yield* resumeApprovedReleaseWorkflow(plan, resumeOptionsFromConfigOptions(options));
178
+ });
179
+ export const reconcileReleaseConfig = Effect.fn("workflows.config.reconcileReleaseConfig")(function* (options = ReleaseReconcileConfigOptions.make({})) {
180
+ const plan = yield* planReleaseConfig(options);
181
+ return yield* reconcileReleasePlan(plan, reconcileOptionsFromConfigOptions(options));
182
+ });
183
+ export const checkReleaseConfigEligibility = Effect.fn("workflows.config.checkReleaseConfigEligibility")(function* (options = ReleaseEligibilityConfigOptions.make({})) {
184
+ const pathName = configPath(options);
185
+ const contents = yield* readReleaseConfig(options);
186
+ const intent = yield* parseReleaseIntent(contents, pathName);
187
+ const manifest = yield* readPackageManifest(options);
188
+ const remoteCheck = yield* releaseEligibilityRemoteCheckFromIntent(manifest, intent);
189
+ return yield* checkReleaseEligibility(remoteCheck);
190
+ });
191
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/workflows/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import * as Effect from "effect/Effect";
2
+ import * as Schema from "effect/Schema";
3
+ import { EvidenceBundle, ReleaseWorkflowEvidence, ReleaseWorkflowFailureEvidence } from "../domain/evidence.js";
4
+ import { ReleasePlan } from "../domain/release.js";
5
+ export type * from "../types/effect-internal.js";
6
+ declare const WorkflowEvidencePathsWritten_base: Schema.Class<WorkflowEvidencePathsWritten, Schema.Struct<{
7
+ readonly render: Schema.optionalKey<Schema.String>;
8
+ readonly validation: Schema.optionalKey<Schema.String>;
9
+ readonly execution: Schema.optionalKey<Schema.String>;
10
+ readonly verification: Schema.optionalKey<Schema.String>;
11
+ }>, {}>;
12
+ export declare class WorkflowEvidencePathsWritten extends WorkflowEvidencePathsWritten_base {
13
+ }
14
+ export declare const releaseEvidencePath: (plan: ReleasePlan, name: string) => string;
15
+ export declare const writeNamedEvidence: (plan: ReleasePlan, name: string, evidence: EvidenceBundle) => Effect.Effect<string, import("../planner/errors.js").EvidenceWriteError, import("effect/FileSystem").FileSystem | import("effect/Path").Path>;
16
+ export declare const writeFailedOperationEvidence: (plan: ReleasePlan, name: string, error: {
17
+ readonly evidence?: EvidenceBundle | undefined;
18
+ }) => Effect.Effect<string | undefined, import("../planner/errors.js").EvidenceWriteError, import("effect/FileSystem").FileSystem | import("effect/Path").Path>;
19
+ type WritableWorkflowEvidence = ReleaseWorkflowEvidence | ReleaseWorkflowFailureEvidence;
20
+ export declare const writeWorkflowEvidence: (plan: ReleasePlan, evidence: WritableWorkflowEvidence) => Effect.Effect<WorkflowEvidencePathsWritten, import("../planner/errors.js").EvidenceWriteError, import("effect/FileSystem").FileSystem | import("effect/Path").Path>;
21
+ //# sourceMappingURL=evidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../src/workflows/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIlD,mBAAmB,6BAA6B,CAAA;;;;;;;AAEhD,qBAAa,4BAA6B,SAAQ,iCAOhD;CAAG;AAEL,eAAO,MAAM,mBAAmB,GAAI,MAAM,WAAW,EAAE,MAAM,MAAM,KAAG,MAC5B,CAAA;AAE1C,eAAO,MAAM,kBAAkB,8MAQ7B,CAAA;AAEF,eAAO,MAAM,4BAA4B;wBAGV,cAAc,GAAG,SAAS;+JAMvD,CAAA;AAEF,KAAK,wBAAwB,GAAG,uBAAuB,GAAG,8BAA8B,CAAA;AAExF,eAAO,MAAM,qBAAqB,gOA8BhC,CAAA"}
@@ -0,0 +1,45 @@
1
+ import * as Effect from "effect/Effect";
2
+ import * as Schema from "effect/Schema";
3
+ import { writeEvidenceBundle } from "../planner/evidence-recorder.js";
4
+ import { workflowEvidencePaths } from "../planner/status.js";
5
+ export class WorkflowEvidencePathsWritten extends Schema.Class("WorkflowEvidencePathsWritten")({
6
+ render: Schema.optionalKey(Schema.String),
7
+ validation: Schema.optionalKey(Schema.String),
8
+ execution: Schema.optionalKey(Schema.String),
9
+ verification: Schema.optionalKey(Schema.String)
10
+ }) {
11
+ }
12
+ export const releaseEvidencePath = (plan, name) => `${plan.evidenceDirectory}/${name}.json`;
13
+ export const writeNamedEvidence = Effect.fn("workflows.evidence.writeNamedEvidence")(function* (plan, name, evidence) {
14
+ const path = releaseEvidencePath(plan, name);
15
+ yield* writeEvidenceBundle(path, evidence, plan.source.root);
16
+ return path;
17
+ });
18
+ export const writeFailedOperationEvidence = Effect.fn("workflows.evidence.writeFailedOperationEvidence")(function* (plan, name, error) {
19
+ if (error.evidence === undefined) {
20
+ return undefined;
21
+ }
22
+ return yield* writeNamedEvidence(plan, name, error.evidence);
23
+ });
24
+ export const writeWorkflowEvidence = Effect.fn("workflows.evidence.writeWorkflowEvidence")(function* (plan, evidence) {
25
+ const paths = workflowEvidencePaths(plan);
26
+ const written = {};
27
+ if (evidence.render !== undefined) {
28
+ written.render = paths.render;
29
+ yield* writeEvidenceBundle(paths.render, evidence.render, plan.source.root);
30
+ }
31
+ if (evidence.validation !== undefined) {
32
+ written.validation = paths.validation;
33
+ yield* writeEvidenceBundle(paths.validation, evidence.validation, plan.source.root);
34
+ }
35
+ if (evidence.execution !== undefined) {
36
+ written.execution = paths.execution;
37
+ yield* writeEvidenceBundle(paths.execution, evidence.execution, plan.source.root);
38
+ }
39
+ if (evidence.verification !== undefined) {
40
+ written.verification = paths.verification;
41
+ yield* writeEvidenceBundle(paths.verification, evidence.verification, plan.source.root);
42
+ }
43
+ return WorkflowEvidencePathsWritten.make(written);
44
+ });
45
+ //# sourceMappingURL=evidence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/workflows/evidence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import * as Layer from "effect/Layer";
2
+ import * as HttpClient from "effect/unstable/http/HttpClient";
3
+ import { ReleaseHttp } from "../host/http.js";
4
+ import { TargetRegistry } from "../targets/registry.js";
5
+ export type * from "../types/effect-internal.js";
6
+ export declare const LiveReleaseWorkflowLayer: Layer.Layer<ReleaseHttp | TargetRegistry, never, HttpClient.HttpClient>;
7
+ //# sourceMappingURL=live.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/workflows/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG7C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,mBAAmB,6BAA6B,CAAA;AAEhD,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAChD,WAAW,GAAG,cAAc,EAC5B,KAAK,EACL,UAAU,CAAC,UAAU,CAItB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import * as Layer from "effect/Layer";
2
+ import { LiveReleaseHttpLayer } from "../host/http-live.js";
3
+ import { LiveTargetRegistryLayer } from "../targets/live.js";
4
+ export const LiveReleaseWorkflowLayer = Layer.mergeAll(LiveReleaseHttpLayer, LiveTargetRegistryLayer);
5
+ //# sourceMappingURL=live.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live.js","sourceRoot":"","sources":["../../src/workflows/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAK5D,MAAM,CAAC,MAAM,wBAAwB,GAIjC,KAAK,CAAC,QAAQ,CAChB,oBAAoB,EACpB,uBAAuB,CACxB,CAAA"}