@xemahq/xema 0.25.1 → 0.27.0

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 (239) hide show
  1. package/README.md +70 -37
  2. package/dist/assets/appliance-base/images.lock.json +126 -126
  3. package/dist/assets/appliance-lean/images.lock.json +123 -123
  4. package/dist/assets/cloud/images.lock.json +126 -126
  5. package/dist/assets/core/images.lock.json +120 -120
  6. package/dist/assets/distribution-assets.manifest.json +15 -16
  7. package/dist/assets/minimal/images.lock.json +108 -108
  8. package/dist/assets/oss/images.lock.json +126 -126
  9. package/dist/assets/starter/images.lock.json +123 -123
  10. package/dist/cli.js +2 -2
  11. package/dist/cli.js.map +1 -1
  12. package/dist/commands/dev.js +1 -0
  13. package/dist/commands/dev.js.map +1 -1
  14. package/dist/commands/down.d.ts.map +1 -1
  15. package/dist/commands/down.js +7 -1
  16. package/dist/commands/down.js.map +1 -1
  17. package/dist/commands/edition.d.ts +3 -0
  18. package/dist/commands/edition.d.ts.map +1 -0
  19. package/dist/commands/edition.js +46 -0
  20. package/dist/commands/edition.js.map +1 -0
  21. package/dist/commands/init.js +2 -2
  22. package/dist/commands/init.js.map +1 -1
  23. package/dist/commands/serve.js +1 -0
  24. package/dist/commands/serve.js.map +1 -1
  25. package/dist/commands/up.js +1 -0
  26. package/dist/commands/up.js.map +1 -1
  27. package/dist/dev/env-defaults.d.ts.map +1 -1
  28. package/dist/dev/env-defaults.js +6 -1
  29. package/dist/dev/env-defaults.js.map +1 -1
  30. package/dist/dev/infra-preflight.d.ts +3 -2
  31. package/dist/dev/infra-preflight.d.ts.map +1 -1
  32. package/dist/dev/infra-preflight.js +18 -8
  33. package/dist/dev/infra-preflight.js.map +1 -1
  34. package/dist/edition/verify-image-evidence.bundle.mjs +54179 -0
  35. package/dist/edition/verify-image-evidence.bundle.provenance.json +2871 -0
  36. package/dist/runtime/backing-registration.d.ts.map +1 -1
  37. package/dist/runtime/backing-registration.js +7 -2
  38. package/dist/runtime/backing-registration.js.map +1 -1
  39. package/dist/runtime/config/schema.d.ts +1 -0
  40. package/dist/runtime/config/schema.d.ts.map +1 -1
  41. package/dist/runtime/custody/local-custody.d.ts +12 -0
  42. package/dist/runtime/custody/local-custody.d.ts.map +1 -0
  43. package/dist/runtime/custody/local-custody.js +22 -0
  44. package/dist/runtime/custody/local-custody.js.map +1 -0
  45. package/dist/runtime/custody/openbao-custody-bootstrap.d.ts +18 -0
  46. package/dist/runtime/custody/openbao-custody-bootstrap.d.ts.map +1 -0
  47. package/dist/runtime/custody/openbao-custody-bootstrap.js +50 -0
  48. package/dist/runtime/custody/openbao-custody-bootstrap.js.map +1 -0
  49. package/dist/runtime/custody/openbao-custody-store.d.ts +18 -0
  50. package/dist/runtime/custody/openbao-custody-store.d.ts.map +1 -0
  51. package/dist/runtime/custody/openbao-custody-store.js +55 -0
  52. package/dist/runtime/custody/openbao-custody-store.js.map +1 -0
  53. package/dist/runtime/custody/openbao-http-client.d.ts +34 -0
  54. package/dist/runtime/custody/openbao-http-client.d.ts.map +1 -0
  55. package/dist/runtime/custody/openbao-http-client.js +154 -0
  56. package/dist/runtime/custody/openbao-http-client.js.map +1 -0
  57. package/dist/runtime/custody/openbao-local-constants.d.ts +22 -0
  58. package/dist/runtime/custody/openbao-local-constants.d.ts.map +1 -0
  59. package/dist/runtime/custody/openbao-local-constants.js +48 -0
  60. package/dist/runtime/custody/openbao-local-constants.js.map +1 -0
  61. package/dist/runtime/custody/openbao-local-runner.d.ts +16 -0
  62. package/dist/runtime/custody/openbao-local-runner.d.ts.map +1 -0
  63. package/dist/runtime/custody/openbao-local-runner.js +86 -0
  64. package/dist/runtime/custody/openbao-local-runner.js.map +1 -0
  65. package/dist/runtime/edition/run-entry.d.ts +9 -0
  66. package/dist/runtime/edition/run-entry.d.ts.map +1 -0
  67. package/dist/runtime/edition/run-entry.js +36 -0
  68. package/dist/runtime/edition/run-entry.js.map +1 -0
  69. package/dist/runtime/edition/verb-map.d.ts +60 -0
  70. package/dist/runtime/edition/verb-map.d.ts.map +1 -0
  71. package/dist/runtime/edition/verb-map.js +146 -0
  72. package/dist/runtime/edition/verb-map.js.map +1 -0
  73. package/dist/runtime/env-seeder.d.ts +3 -0
  74. package/dist/runtime/env-seeder.d.ts.map +1 -1
  75. package/dist/runtime/env-seeder.js +20 -3
  76. package/dist/runtime/env-seeder.js.map +1 -1
  77. package/dist/runtime/launch.d.ts +3 -1
  78. package/dist/runtime/launch.d.ts.map +1 -1
  79. package/dist/runtime/launch.js +37 -8
  80. package/dist/runtime/launch.js.map +1 -1
  81. package/dist/runtime/paths.d.ts +1 -2
  82. package/dist/runtime/paths.d.ts.map +1 -1
  83. package/dist/runtime/paths.js +0 -10
  84. package/dist/runtime/paths.js.map +1 -1
  85. package/dist/runtime/runner/chart-local-provenance.d.ts +20 -0
  86. package/dist/runtime/runner/chart-local-provenance.d.ts.map +1 -0
  87. package/dist/runtime/runner/chart-local-provenance.js +114 -0
  88. package/dist/runtime/runner/chart-local-provenance.js.map +1 -0
  89. package/dist/runtime/runner/chart-preflight.d.ts +8 -8
  90. package/dist/runtime/runner/chart-preflight.d.ts.map +1 -1
  91. package/dist/runtime/runner/chart-preflight.js +30 -69
  92. package/dist/runtime/runner/chart-preflight.js.map +1 -1
  93. package/dist/runtime/runner/chart-pull.d.ts +14 -0
  94. package/dist/runtime/runner/chart-pull.d.ts.map +1 -0
  95. package/dist/runtime/runner/chart-pull.js +96 -0
  96. package/dist/runtime/runner/chart-pull.js.map +1 -0
  97. package/dist/runtime/runner/chart-resolver.d.ts +4 -12
  98. package/dist/runtime/runner/chart-resolver.d.ts.map +1 -1
  99. package/dist/runtime/runner/chart-resolver.js +16 -62
  100. package/dist/runtime/runner/chart-resolver.js.map +1 -1
  101. package/dist/runtime/runner/chart-set-lock.d.ts +6 -20
  102. package/dist/runtime/runner/chart-set-lock.d.ts.map +1 -1
  103. package/dist/runtime/runner/chart-set-lock.js +55 -99
  104. package/dist/runtime/runner/chart-set-lock.js.map +1 -1
  105. package/dist/runtime/runner/helm-cli.d.ts +3 -1
  106. package/dist/runtime/runner/helm-cli.d.ts.map +1 -1
  107. package/dist/runtime/runner/helm-cli.js +9 -7
  108. package/dist/runtime/runner/helm-cli.js.map +1 -1
  109. package/dist/runtime/runner/helm-runner.d.ts +4 -4
  110. package/dist/runtime/runner/helm-runner.d.ts.map +1 -1
  111. package/dist/runtime/runner/helm-runner.js +18 -16
  112. package/dist/runtime/runner/helm-runner.js.map +1 -1
  113. package/dist/runtime/sources/kinds/git.d.ts +1 -2
  114. package/dist/runtime/sources/kinds/git.d.ts.map +1 -1
  115. package/dist/runtime/sources/kinds/git.js +8 -5
  116. package/dist/runtime/sources/kinds/git.js.map +1 -1
  117. package/dist/runtime/sources/manifest-walk.d.ts +3 -1
  118. package/dist/runtime/sources/manifest-walk.d.ts.map +1 -1
  119. package/dist/runtime/sources/manifest-walk.js +8 -3
  120. package/dist/runtime/sources/manifest-walk.js.map +1 -1
  121. package/dist/runtime/sources/schema.d.ts +3 -0
  122. package/dist/runtime/sources/schema.d.ts.map +1 -1
  123. package/dist/runtime/sources/schema.js +6 -1
  124. package/dist/runtime/sources/schema.js.map +1 -1
  125. package/dist/runtime/supervisor.d.ts +3 -0
  126. package/dist/runtime/supervisor.d.ts.map +1 -1
  127. package/dist/runtime/supervisor.js +2 -0
  128. package/dist/runtime/supervisor.js.map +1 -1
  129. package/edition/README.md +315 -0
  130. package/edition/assemble-producer-input.mjs +1251 -0
  131. package/edition/authorization-base.mjs +347 -0
  132. package/edition/biome-content.mjs +268 -0
  133. package/edition/build-biome-index.mjs +175 -0
  134. package/edition/build-platform-service-index.mjs +288 -0
  135. package/edition/build-runtime-image-source-index.mjs +821 -0
  136. package/edition/built-verifier.mjs +55 -0
  137. package/edition/catalogue-edition.mjs +49 -0
  138. package/edition/catalogue-fetch.mjs +64 -0
  139. package/edition/catalogue.mjs +135 -0
  140. package/edition/chart-set-source-commit.mjs +92 -0
  141. package/edition/check-committed-image-evidence.mjs +383 -0
  142. package/edition/checkout-indexed-source-repositories.mjs +105 -0
  143. package/edition/comment-blanker.mjs +75 -0
  144. package/edition/connector-source-authority.mjs +60 -0
  145. package/edition/customer-definition.mjs +183 -0
  146. package/edition/customer-flags.mjs +7 -0
  147. package/edition/develop-customer-edition.mjs +99 -0
  148. package/edition/develop-edition-resolve.mjs +65 -0
  149. package/edition/develop-edition.mjs +274 -0
  150. package/edition/develop-freeze.mjs +173 -0
  151. package/edition/develop-image-coordinate.mjs +54 -0
  152. package/edition/develop-seal.mjs +77 -0
  153. package/edition/develop-snapshot-inputs.mjs +104 -0
  154. package/edition/dist-check.mjs +986 -0
  155. package/edition/distribution-evidence-set.mjs +987 -0
  156. package/edition/distribution-paths.mjs +191 -0
  157. package/edition/edition-artifact.mjs +270 -0
  158. package/edition/edition-biome-manifests.mjs +85 -0
  159. package/edition/edition-channel.mjs +6 -0
  160. package/edition/edition-chart-set.mjs +93 -0
  161. package/edition/edition-config.mjs +207 -0
  162. package/edition/edition-constants.mjs +57 -0
  163. package/edition/edition-contract.json +23 -0
  164. package/edition/edition-list.mjs +35 -0
  165. package/edition/edition-locks.mjs +69 -0
  166. package/edition/edition-protocol.mjs +228 -0
  167. package/edition/edition-workspace.mjs +176 -0
  168. package/edition/evidence-checkout.mjs +418 -0
  169. package/edition/evidence-grammars.mjs +16 -0
  170. package/edition/evidence-trust-pin.mjs +304 -0
  171. package/edition/evidence-trust-policy.mjs +256 -0
  172. package/edition/external-source-walk.mjs +463 -0
  173. package/edition/first-party-source-ids.mjs +59 -0
  174. package/edition/fleet-coordinate-finality.mjs +350 -0
  175. package/edition/git-source-auth.mjs +52 -0
  176. package/edition/image-evidence-replay-state.mjs +242 -0
  177. package/edition/image-evidence.mjs +1225 -0
  178. package/edition/kernel-contract-authority.mjs +443 -0
  179. package/edition/lib.mjs +3018 -0
  180. package/edition/no-follow-file.mjs +94 -0
  181. package/edition/oci-evidence-verbs.mjs +392 -0
  182. package/edition/oci-image-source-evidence.mjs +239 -0
  183. package/edition/oras.mjs +648 -0
  184. package/edition/pin-source.mjs +227 -0
  185. package/edition/plan-image-evidence-refresh.mjs +408 -0
  186. package/edition/platform-lock-readability.mjs +892 -0
  187. package/edition/platform-service-class.mjs +18 -0
  188. package/edition/platform-service-source-authority.mjs +105 -0
  189. package/edition/positive-closure.mjs +162 -0
  190. package/edition/produce-distribution-completeness-evidence.mjs +311 -0
  191. package/edition/produce-image-delivery-entitlement-evidence.mjs +294 -0
  192. package/edition/produce-image-source-evidence.mjs +765 -0
  193. package/edition/producer-evidence-bundle.mjs +157 -0
  194. package/edition/registry-credentials.mjs +193 -0
  195. package/edition/release-catalogue.mjs +39 -0
  196. package/edition/release-channel-guard.mjs +99 -0
  197. package/edition/release-edition-artifact.mjs +158 -0
  198. package/edition/remedy-command.mjs +89 -0
  199. package/edition/repin-evidence-trust.mjs +101 -0
  200. package/edition/required-resource-provider.mjs +58 -0
  201. package/edition/resolve-chart-set.mjs +415 -0
  202. package/edition/resolve-customer-edition.mjs +288 -0
  203. package/edition/resolve-distribution.mjs +2318 -0
  204. package/edition/resolve-edition.mjs +186 -0
  205. package/edition/resolve-images.mjs +1606 -0
  206. package/edition/seal-image-digests.mjs +855 -0
  207. package/edition/sealed-evidence-accept.mjs +82 -0
  208. package/edition/source-authority.mjs +725 -0
  209. package/edition/source-closure.mjs +116 -0
  210. package/edition/strict-json.mjs +121 -0
  211. package/edition/string-order.mjs +5 -0
  212. package/edition/trust-policy-arming.mjs +120 -0
  213. package/edition/trusted-executable.mjs +166 -0
  214. package/edition/verifier-binding.mjs +45 -0
  215. package/edition/verifier-files.mjs +8 -0
  216. package/edition/verifier-kernel-schemas.mjs +22 -0
  217. package/edition/verifier-provenance.mjs +64 -0
  218. package/edition/verify-image-evidence.mjs +430 -0
  219. package/edition/verify-image-platforms.mjs +495 -0
  220. package/edition/why.mjs +56 -0
  221. package/edition/workspace-sections.mjs +195 -0
  222. package/examples/06-biome-sources.yaml +1 -0
  223. package/package.json +18 -7
  224. package/dist/commands/dist.d.ts +0 -16
  225. package/dist/commands/dist.d.ts.map +0 -1
  226. package/dist/commands/dist.js +0 -182
  227. package/dist/commands/dist.js.map +0 -1
  228. package/dist/runtime/distribution/available-biome.d.ts +0 -10
  229. package/dist/runtime/distribution/available-biome.d.ts.map +0 -1
  230. package/dist/runtime/distribution/available-biome.js +0 -154
  231. package/dist/runtime/distribution/available-biome.js.map +0 -1
  232. package/dist/runtime/distribution/compose.d.ts +0 -23
  233. package/dist/runtime/distribution/compose.d.ts.map +0 -1
  234. package/dist/runtime/distribution/compose.js +0 -48
  235. package/dist/runtime/distribution/compose.js.map +0 -1
  236. package/dist/runtime/runner/chart-trust.d.ts +0 -57
  237. package/dist/runtime/runner/chart-trust.d.ts.map +0 -1
  238. package/dist/runtime/runner/chart-trust.js +0 -270
  239. package/dist/runtime/runner/chart-trust.js.map +0 -1
@@ -4,14 +4,14 @@ exports.ChartPreflightFailureKind = void 0;
4
4
  exports.runChartPreflight = runChartPreflight;
5
5
  exports.assertChartPreflightPassed = assertChartPreflightPassed;
6
6
  exports.formatChartPreflight = formatChartPreflight;
7
+ const chart_pull_1 = require("./chart-pull");
7
8
  const chart_resolver_1 = require("./chart-resolver");
8
9
  var ChartPreflightFailureKind;
9
10
  (function (ChartPreflightFailureKind) {
10
11
  ChartPreflightFailureKind["EmptyScan"] = "empty-scan";
11
- ChartPreflightFailureKind["ChartSetUnclosed"] = "chart-set-unclosed";
12
12
  ChartPreflightFailureKind["ChartUnavailable"] = "chart-unavailable";
13
- ChartPreflightFailureKind["ChartNotServed"] = "chart-not-served";
14
- ChartPreflightFailureKind["ChartTrust"] = "chart-trust";
13
+ ChartPreflightFailureKind["ChartPullRefused"] = "chart-pull-refused";
14
+ ChartPreflightFailureKind["LocalChartUnrecorded"] = "local-chart-unrecorded";
15
15
  })(ChartPreflightFailureKind || (exports.ChartPreflightFailureKind = ChartPreflightFailureKind = {}));
16
16
  async function runChartPreflight(opts) {
17
17
  const failures = [];
@@ -19,7 +19,7 @@ async function runChartPreflight(opts) {
19
19
  return {
20
20
  resolved: [],
21
21
  unavailable: [],
22
- trust: null,
22
+ provenance: null,
23
23
  failures: [
24
24
  {
25
25
  kind: ChartPreflightFailureKind.EmptyScan,
@@ -31,33 +31,13 @@ async function runChartPreflight(opts) {
31
31
  passed: false,
32
32
  };
33
33
  }
34
- const unclosed = await unclosedPublisherIndexes(opts);
35
- if (unclosed.length > 0) {
36
- return {
37
- resolved: [],
38
- unavailable: [],
39
- trust: null,
40
- failures: [
41
- {
42
- kind: ChartPreflightFailureKind.ChartSetUnclosed,
43
- message: `The pinned chart set names ${unclosed.join(', ')}, which the registry ` +
44
- 'does not serve. An index is published only after its publisher has ' +
45
- 'pushed, signed and proved served every chart of its half, so a pin ' +
46
- 'the registry cannot resolve means the lock is ahead of the registry ' +
47
- 'or names a set that was pruned. Re-resolve it (xema-distributions: ' +
48
- 'node resolve-chart-set.mjs).',
49
- },
50
- ],
51
- passed: false,
52
- };
53
- }
54
34
  const resolved = [];
55
35
  const unavailable = [];
56
- const notServed = [];
36
+ const refused = [];
57
37
  for (const name of opts.charts) {
58
38
  let chart;
59
39
  try {
60
- chart = await opts.resolver.resolve(name);
40
+ chart = opts.resolver.resolve(name);
61
41
  }
62
42
  catch (error) {
63
43
  unavailable.push({ name, reason: messageOf(error) });
@@ -69,14 +49,19 @@ async function runChartPreflight(opts) {
69
49
  }
70
50
  if (opts.helm === undefined) {
71
51
  throw new Error(`Chart '${name}' resolved to ${chart.ref} at ${chart.version}, but the ` +
72
- 'pre-flight was built without a helm metadata reader and so cannot ' +
73
- 'prove the coordinate is served. Supply `helm`.');
52
+ 'pre-flight was built without a helm client and so cannot prove the ' +
53
+ 'pulled bytes match the lock. Supply `helm`.');
74
54
  }
75
55
  try {
76
- await opts.helm.showChart(chart.ref, chart.version);
56
+ if (opts.archives !== undefined) {
57
+ await opts.archives.hold(chart, opts.helm);
58
+ }
59
+ else {
60
+ await (0, chart_pull_1.withPulledChart)(chart, opts.helm, () => Promise.resolve());
61
+ }
77
62
  }
78
- catch {
79
- notServed.push(`${name} (${chart.ref} at ${chart.version})`);
63
+ catch (error) {
64
+ refused.push({ name, reason: messageOf(error) });
80
65
  }
81
66
  }
82
67
  if (unavailable.length > 0) {
@@ -90,53 +75,32 @@ async function runChartPreflight(opts) {
90
75
  unavailable.map((entry) => ` - ${entry.name}: ${entry.reason}`).join('\n'),
91
76
  });
92
77
  }
93
- if (notServed.length > 0) {
78
+ if (refused.length > 0) {
94
79
  failures.push({
95
- kind: ChartPreflightFailureKind.ChartNotServed,
96
- message: `The pinned chart set names ${notServed.join(', ')}, although the registry ` +
97
- 'does not serve that coordinate. The index vouches for a chart the ' +
98
- 'registry does not have.',
80
+ kind: ChartPreflightFailureKind.ChartPullRefused,
81
+ message: `The lock pins ${refused.map((entry) => entry.name).join(', ')}, but the ` +
82
+ 'registry does not serve them at the sealed digest:\n' +
83
+ refused.map((entry) => ` - ${entry.name}: ${entry.reason}`).join('\n'),
99
84
  });
100
85
  }
101
- let trust = null;
102
- if (unavailable.length === 0 && notServed.length === 0) {
103
- trust = await opts.trust.evaluate(resolved);
104
- if (!trust.passed) {
86
+ let provenance = null;
87
+ if (unavailable.length === 0 && refused.length === 0) {
88
+ provenance = opts.provenance.evaluate(resolved);
89
+ if (!provenance.passed) {
105
90
  failures.push({
106
- kind: ChartPreflightFailureKind.ChartTrust,
107
- message: trust.message,
91
+ kind: ChartPreflightFailureKind.LocalChartUnrecorded,
92
+ message: provenance.message,
108
93
  });
109
94
  }
110
95
  }
111
96
  return {
112
97
  resolved,
113
98
  unavailable,
114
- trust,
99
+ provenance,
115
100
  failures,
116
101
  passed: failures.length === 0,
117
102
  };
118
103
  }
119
- async function unclosedPublisherIndexes(opts) {
120
- const pins = opts.resolver.publisherPins();
121
- if (pins.length === 0) {
122
- return [];
123
- }
124
- if (opts.helm === undefined) {
125
- throw new Error(`${opts.resolver.lockPath} pins ${String(pins.length)} publisher index(es), ` +
126
- 'but the pre-flight was built without a helm metadata reader and so cannot ' +
127
- 'prove the set was closed. Supply `helm`.');
128
- }
129
- const unclosed = [];
130
- for (const pin of pins) {
131
- try {
132
- await opts.helm.showChart(`${opts.resolver.chartRepo}/${pin.index}`, pin.version);
133
- }
134
- catch {
135
- unclosed.push(`${pin.index}@${pin.version}`);
136
- }
137
- }
138
- return unclosed;
139
- }
140
104
  function assertChartPreflightPassed(report) {
141
105
  if (report.passed) {
142
106
  return;
@@ -151,11 +115,8 @@ function formatChartPreflight(report) {
151
115
  const remote = report.resolved.filter((chart) => chart.kind === chart_resolver_1.ChartSourceKind.Oci);
152
116
  lines.push(`charts : ${String(report.resolved.length)} resolved ` +
153
117
  `(${String(local.length)} local, ${String(remote.length)} from the registry)`);
154
- if (report.trust !== null && report.trust.message.length > 0) {
155
- lines.push(`trust : ${report.trust.message}`);
156
- }
157
- else if (report.trust !== null) {
158
- lines.push(`trust : ${report.trust.outcome} (${report.trust.mode})`);
118
+ if (report.provenance !== null && report.provenance.message.length > 0) {
119
+ lines.push(`local : ${report.provenance.message}`);
159
120
  }
160
121
  return lines.join('\n');
161
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chart-preflight.js","sourceRoot":"","sources":["../../../src/runtime/runner/chart-preflight.ts"],"names":[],"mappings":";;;AAmFA,8CA6HC;AAoCD,gEASC;AAGD,oDAcC;AA9QD,qDAI0B;AAsC1B,IAAY,yBAWX;AAXD,WAAY,yBAAyB;IAEnC,qDAAwB,CAAA;IAExB,oEAAuC,CAAA;IAEvC,mEAAsC,CAAA;IAEtC,gEAAmC,CAAA;IAEnC,uDAA0B,CAAA;AAC5B,CAAC,EAXW,yBAAyB,yCAAzB,yBAAyB,QAWpC;AA8BM,KAAK,UAAU,iBAAiB,CACrC,IAA2B;IAE3B,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,yBAAyB,CAAC,SAAS;oBACzC,OAAO,EACL,mEAAmE;wBACnE,kEAAkE;wBAClE,gCAAgC;iBACnC;aACF;YACD,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAID,MAAM,QAAQ,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAMxB,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,yBAAyB,CAAC,gBAAgB;oBAChD,OAAO,EACL,8BAA8B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB;wBACxE,qEAAqE;wBACrE,qEAAqE;wBACrE,sEAAsE;wBACtE,qEAAqE;wBACrE,8BAA8B;iBACjC;aACF;YACD,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAGD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,WAAW,GAAuC,EAAE,CAAC;IAC3D,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,KAAoB,CAAC;QACzB,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrD,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,EAAE,CAAC;YACvC,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,iBAAiB,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,OAAO,YAAY;gBACtE,oEAAoE;gBACpE,gDAAgD,CACnD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,yBAAyB,CAAC,gBAAgB;YAChD,OAAO,EACL,6BAA6B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAClF,oEAAoE;gBACpE,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,aAAa,IAAI,CAAC,QAAQ,CAAC,SAAS,yBAAyB;gBACvF,QAAQ,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAyB,IAAI;gBAClG,6BAA6B;gBAC7B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAC9E,CAAC,CAAC;IACL,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,yBAAyB,CAAC,cAAc;YAC9C,OAAO,EACL,8BAA8B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B;gBAC5E,oEAAoE;gBACpE,yBAAyB;SAC5B,CAAC,CAAC;IACL,CAAC;IAKD,IAAI,KAAK,GAA4B,IAAI,CAAC;IAC1C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,yBAAyB,CAAC,UAAU;gBAC1C,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ;QACR,WAAW;QACX,KAAK;QACL,QAAQ;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;KAC9B,CAAC;AACJ,CAAC;AAUD,KAAK,UAAU,wBAAwB,CACrC,IAA2B;IAE3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,SAAS,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,wBAAwB;YAC3E,4EAA4E;YAC5E,0CAA0C,CAC7C,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAGD,SAAgB,0BAA0B,CAAC,MAA4B;IACrE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CACb,CAAC,4DAA4D,EAAE,EAAE,CAAC;SAC/D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;SAChF,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;AACJ,CAAC;AAGD,SAAgB,oBAAoB,CAAC,MAA4B;IAC/D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,CAAC,CAAC;IACrF,KAAK,CAAC,IAAI,CACR,cAAc,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY;QACtD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAChF,CAAC;IACF,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"chart-preflight.js","sourceRoot":"","sources":["../../../src/runtime/runner/chart-preflight.ts"],"names":[],"mappings":";;;AAmFA,8CAkGC;AAGD,gEASC;AAGD,oDAYC;AAhND,6CAAiG;AACjG,qDAI0B;AAqC1B,IAAY,yBASX;AATD,WAAY,yBAAyB;IAEnC,qDAAwB,CAAA;IAExB,mEAAsC,CAAA;IAEtC,oEAAuC,CAAA;IAEvC,4EAA+C,CAAA;AACjD,CAAC,EATW,yBAAyB,yCAAzB,yBAAyB,QASpC;AAgCM,KAAK,UAAU,iBAAiB,CACrC,IAA2B;IAE3B,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,yBAAyB,CAAC,SAAS;oBACzC,OAAO,EACL,mEAAmE;wBACnE,kEAAkE;wBAClE,gCAAgC;iBACnC;aACF;YACD,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAGD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,WAAW,GAAuC,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAuC,EAAE,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,KAAoB,CAAC;QACzB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrD,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,EAAE,CAAC;YACvC,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,iBAAiB,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,OAAO,YAAY;gBACtE,qEAAqE;gBACrE,6CAA6C,CAChD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAA,4BAAe,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,yBAAyB,CAAC,gBAAgB;YAChD,OAAO,EACL,6BAA6B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAClF,oEAAoE;gBACpE,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,aAAa,IAAI,CAAC,QAAQ,CAAC,SAAS,yBAAyB;gBACvF,QAAQ,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAyB,IAAI;gBAClG,6BAA6B;gBAC7B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAC9E,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,yBAAyB,CAAC,gBAAgB;YAChD,OAAO,EACL,iBAAiB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY;gBAC1E,sDAAsD;gBACtD,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;IAGD,IAAI,UAAU,GAAiC,IAAI,CAAC;IACpD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,yBAAyB,CAAC,oBAAoB;gBACpD,OAAO,EAAE,UAAU,CAAC,OAAO;aAC5B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ;QACR,WAAW;QACX,UAAU;QACV,QAAQ;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;KAC9B,CAAC;AACJ,CAAC;AAGD,SAAgB,0BAA0B,CAAC,MAA4B;IACrE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CACb,CAAC,4DAA4D,EAAE,EAAE,CAAC;SAC/D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;SAChF,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;AACJ,CAAC;AAGD,SAAgB,oBAAoB,CAAC,MAA4B;IAC/D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gCAAe,CAAC,GAAG,CAAC,CAAC;IACrF,KAAK,CAAC,IAAI,CACR,cAAc,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY;QACtD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAChF,CAAC;IACF,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { ResolvedChart } from './chart-resolver';
2
+ export interface ChartPullClient {
3
+ pull(ref: string, version: string, destination: string): Promise<string>;
4
+ }
5
+ export declare function withPulledChart<T>(chart: ResolvedChart, client: ChartPullClient, use: (archivePath: string) => Promise<T>): Promise<T>;
6
+ export declare class VerifiedChartArchives {
7
+ private readonly held;
8
+ private readonly onExit;
9
+ constructor();
10
+ hold(chart: ResolvedChart, client: ChartPullClient): Promise<void>;
11
+ use<T>(chart: ResolvedChart, client: ChartPullClient, use: (archivePath: string) => Promise<T>): Promise<T>;
12
+ disposeAll(): void;
13
+ }
14
+ //# sourceMappingURL=chart-pull.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-pull.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/chart-pull.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAmBtD,MAAM,WAAW,eAAe;IAK9B,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1E;AAoCD,wBAAsB,eAAe,CAAC,CAAC,EACrC,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC,CAOZ;AAWD,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;;IAOlD,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE,GAAG,CAAC,CAAC,EACT,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC;IAeb,UAAU,IAAI,IAAI;CAOnB"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VerifiedChartArchives = void 0;
4
+ exports.withPulledChart = withPulledChart;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_os_1 = require("node:os");
7
+ const node_path_1 = require("node:path");
8
+ const chart_set_lock_1 = require("./chart-set-lock");
9
+ async function pullVerified(chart, client) {
10
+ const dir = (0, node_fs_1.mkdtempSync)((0, node_path_1.join)((0, node_os_1.tmpdir)(), 'xema-chart-'));
11
+ try {
12
+ const output = await client.pull(chart.ref, chart.version, dir);
13
+ const reported = reportedDigest(output, chart);
14
+ if (reported !== chart.digest) {
15
+ throw new Error(`Chart '${chart.name}' at ${chart.version} pulled from ${chart.ref} has ` +
16
+ `digest ${reported}, but the lock pins ${chart.digest}. The registry ` +
17
+ 'serves different bytes than were sealed (a re-pointed tag, or a ' +
18
+ 'mirror out of step). Refusing to install it.');
19
+ }
20
+ return { dir, archive: archiveIn(dir, chart) };
21
+ }
22
+ catch (error) {
23
+ (0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
24
+ throw error;
25
+ }
26
+ }
27
+ async function withPulledChart(chart, client, use) {
28
+ const { dir, archive } = await pullVerified(chart, client);
29
+ try {
30
+ return await use(archive);
31
+ }
32
+ finally {
33
+ (0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
34
+ }
35
+ }
36
+ class VerifiedChartArchives {
37
+ held = new Map();
38
+ onExit = () => this.disposeAll();
39
+ constructor() {
40
+ process.once('exit', this.onExit);
41
+ }
42
+ async hold(chart, client) {
43
+ const { dir } = await pullVerified(chart, client);
44
+ const key = holdKey(chart);
45
+ const previous = this.held.get(key);
46
+ if (previous !== undefined) {
47
+ (0, node_fs_1.rmSync)(previous, { recursive: true, force: true });
48
+ }
49
+ this.held.set(key, dir);
50
+ }
51
+ async use(chart, client, use) {
52
+ const key = holdKey(chart);
53
+ const dir = this.held.get(key);
54
+ if (dir === undefined) {
55
+ return withPulledChart(chart, client, use);
56
+ }
57
+ this.held.delete(key);
58
+ try {
59
+ return await use(archiveIn(dir, chart));
60
+ }
61
+ finally {
62
+ (0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
63
+ }
64
+ }
65
+ disposeAll() {
66
+ for (const dir of this.held.values()) {
67
+ (0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
68
+ }
69
+ this.held.clear();
70
+ process.removeListener('exit', this.onExit);
71
+ }
72
+ }
73
+ exports.VerifiedChartArchives = VerifiedChartArchives;
74
+ function holdKey(chart) {
75
+ return `${chart.ref}@${chart.version}@${chart.digest}`;
76
+ }
77
+ function reportedDigest(output, chart) {
78
+ const match = /^Digest:\s*(\S+)\s*$/m.exec(output);
79
+ const digest = match?.[1];
80
+ if (digest === undefined || !chart_set_lock_1.CHART_DIGEST_PATTERN.test(digest)) {
81
+ throw new Error(`helm pull of '${chart.name}' at ${chart.version} reported no usable ` +
82
+ "'Digest: sha256:…' line, so the pulled bytes cannot be compared with " +
83
+ 'the lock. Refusing to install them.');
84
+ }
85
+ return digest;
86
+ }
87
+ function archiveIn(dir, chart) {
88
+ const archives = (0, node_fs_1.readdirSync)(dir).filter((entry) => entry.endsWith('.tgz'));
89
+ const [only] = archives;
90
+ if (archives.length !== 1 || only === undefined) {
91
+ throw new Error(`helm pull of '${chart.name}' at ${chart.version} left ${String(archives.length)} ` +
92
+ 'archive(s) in its private directory; expected exactly one.');
93
+ }
94
+ return (0, node_path_1.join)(dir, only);
95
+ }
96
+ //# sourceMappingURL=chart-pull.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-pull.js","sourceRoot":"","sources":["../../../src/runtime/runner/chart-pull.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { type ChartMetadataReader, type ChartSetPublisherPin, type ChartSetRoster } from './chart-set-lock';
2
1
  export declare const CHARTS_DIR_ENV = "XEMA_CHARTS_DIR";
3
2
  export declare const CHART_REPO_ENV = "XEMA_CHART_REPO";
4
3
  export declare const CHARTS_DIR_NAME = "charts";
@@ -12,14 +11,12 @@ export interface ResolvedChart {
12
11
  readonly kind: ChartSourceKind;
13
12
  readonly ref: string;
14
13
  readonly version: string;
15
- readonly extraArgs: readonly string[];
14
+ readonly digest: string;
16
15
  }
17
16
  export interface ChartResolverOptions {
18
17
  readonly chartsDir?: string;
19
18
  readonly chartRepo?: string;
20
- readonly versionOverride?: string;
21
19
  readonly lockPath?: string;
22
- readonly helm?: ChartMetadataReader;
23
20
  readonly env?: NodeJS.ProcessEnv;
24
21
  }
25
22
  export declare class ChartResolver {
@@ -28,17 +25,12 @@ export declare class ChartResolver {
28
25
  private readonly declaredLockPath;
29
26
  private lockPathMemo;
30
27
  private readonly env;
31
- private readonly versionOverride;
32
- private readonly helm;
33
- private roster;
28
+ private lock;
34
29
  constructor(opts?: ChartResolverOptions);
35
30
  get remotePlaneEnabled(): boolean;
36
31
  get lockPath(): string;
37
- resolve(name: string): Promise<ResolvedChart>;
38
- private pinnedVersion;
39
- publisherPins(): readonly ChartSetPublisherPin[];
40
- chartSetRoster(): Promise<ChartSetRoster | null>;
41
- private readChartSetRoster;
32
+ resolve(name: string): ResolvedChart;
33
+ private sealedLock;
42
34
  }
43
35
  export declare function defaultChartsDir(env?: NodeJS.ProcessEnv): string;
44
36
  export declare function newestLocalArchive(dir: string, name: string): string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"chart-resolver.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/chart-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AA+B1B,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAGhD,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAGhD,eAAO,MAAM,eAAe,WAAW,CAAC;AAMxC,oBAAY,eAAe;IAEzB,cAAc,oBAAoB;IAElC,YAAY,kBAAkB;IAE9B,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAKrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAClC;AAED,qBAAa,aAAa;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IACtD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkC;IAMvD,OAAO,CAAC,MAAM,CAA6C;gBAE/C,IAAI,GAAE,oBAAyB;IAa3C,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAQD,IAAI,QAAQ,IAAI,MAAM,CAGrB;IAEK,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YA0DrC,aAAa;IAgB3B,aAAa,IAAI,SAAS,oBAAoB,EAAE;IAY1C,cAAc,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;YAKxC,kBAAkB;CAoBjC;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAQ7E;AAgBD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA6B3E;AAWD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA2BxE"}
1
+ {"version":3,"file":"chart-resolver.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/chart-resolver.ts"],"names":[],"mappings":"AAuCA,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAGhD,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAGhD,eAAO,MAAM,eAAe,WAAW,CAAC;AAMxC,oBAAY,eAAe;IAEzB,cAAc,oBAAoB;IAElC,YAAY,kBAAkB;IAE9B,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAK/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAKrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAClC;AAED,qBAAa,aAAa;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IACtD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IAExC,OAAO,CAAC,IAAI,CAAsD;gBAEtD,IAAI,GAAE,oBAAyB;IAW3C,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAQD,IAAI,QAAQ,IAAI,MAAM,CAGrB;IAED,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IAyCpC,OAAO,CAAC,UAAU;CAInB;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAQ7E;AAgBD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA6B3E;AAWD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA2BxE"}
@@ -24,17 +24,13 @@ class ChartResolver {
24
24
  declaredLockPath;
25
25
  lockPathMemo;
26
26
  env;
27
- versionOverride;
28
- helm;
29
- roster;
27
+ lock;
30
28
  constructor(opts = {}) {
31
29
  const env = opts.env ?? process.env;
32
30
  this.env = env;
33
31
  this.chartsDir = opts.chartsDir ?? defaultChartsDir(env);
34
32
  this.chartRepo = opts.chartRepo ?? env[exports.CHART_REPO_ENV] ?? helm_cli_1.DEFAULT_HELM_CHART_REPO;
35
- this.versionOverride = opts.versionOverride ?? env[chart_set_lock_1.CHART_VERSION_ENV] ?? '';
36
33
  this.declaredLockPath = opts.lockPath;
37
- this.helm = opts.helm;
38
34
  }
39
35
  get remotePlaneEnabled() {
40
36
  return this.chartRepo.length > 0;
@@ -43,26 +39,14 @@ class ChartResolver {
43
39
  this.lockPathMemo ??= this.declaredLockPath ?? (0, chart_set_lock_1.defaultChartSetLockPath)(this.env);
44
40
  return this.lockPathMemo;
45
41
  }
46
- async resolve(name) {
42
+ resolve(name) {
47
43
  const directory = (0, node_path_1.join)(this.chartsDir, name);
48
44
  if (pathExists((0, node_path_1.join)(directory, 'Chart.yaml'))) {
49
- return {
50
- name,
51
- kind: ChartSourceKind.LocalDirectory,
52
- ref: directory,
53
- version: '',
54
- extraArgs: [],
55
- };
45
+ return { name, kind: ChartSourceKind.LocalDirectory, ref: directory, version: '', digest: '' };
56
46
  }
57
47
  const archive = newestLocalArchive(this.chartsDir, name);
58
48
  if (archive !== null) {
59
- return {
60
- name,
61
- kind: ChartSourceKind.LocalArchive,
62
- ref: archive,
63
- version: '',
64
- extraArgs: [],
65
- };
49
+ return { name, kind: ChartSourceKind.LocalArchive, ref: archive, version: '', digest: '' };
66
50
  }
67
51
  if (!this.remotePlaneEnabled) {
68
52
  throw new Error(`Chart '${name}' is not in ${exports.CHARTS_DIR_ENV}=${this.chartsDir} (expected ` +
@@ -70,56 +54,26 @@ class ChartResolver {
70
54
  `plane is disabled (${exports.CHART_REPO_ENV} is empty). Stage the chart locally, ` +
71
55
  `or unset ${exports.CHART_REPO_ENV} to allow the published plane.`);
72
56
  }
73
- const version = await this.pinnedVersion(name);
74
- if (version.length === 0) {
57
+ const member = this.sealedLock()?.members.get(name);
58
+ if (member === undefined) {
75
59
  throw new Error(`Chart '${name}' is not in ${exports.CHARTS_DIR_ENV}=${this.chartsDir}, and the ` +
76
- `pinned chart set does not carry it — refusing to pull a floating ` +
77
- `version from ${this.chartRepo}. Every chart is published at a ` +
78
- `coordinate derived from its own content, and the set that names those ` +
79
- `coordinates is pinned in ${this.lockPath}. A chart missing from it was ` +
80
- `never published into this set. Re-resolve the lock ` +
81
- `(xema-distributions: node resolve-chart-set.mjs), or pin one version ` +
82
- `for this run with ${chart_set_lock_1.CHART_VERSION_ENV}.`);
60
+ `sealed chart set (${this.lockPath}) does not carry it — refusing to ` +
61
+ `pull an unpinned chart from ${this.chartRepo}. Every remote chart is ` +
62
+ 'installed at the version AND digest the lock seals; a chart missing ' +
63
+ 'from it was never sealed into this set (or there is no lock). Re-seal ' +
64
+ 'the lock (xema-distributions: node resolve-chart-set.mjs).');
83
65
  }
84
66
  return {
85
67
  name,
86
68
  kind: ChartSourceKind.Oci,
87
69
  ref: `${this.chartRepo}/${name}`,
88
- version,
89
- extraArgs: ['--version', version],
70
+ version: member.version,
71
+ digest: member.digest,
90
72
  };
91
73
  }
92
- async pinnedVersion(name) {
93
- if (this.versionOverride.length > 0) {
94
- return this.versionOverride;
95
- }
96
- const roster = await this.chartSetRoster();
97
- return roster?.versions.get(name) ?? '';
98
- }
99
- publisherPins() {
100
- if (!this.remotePlaneEnabled) {
101
- return [];
102
- }
103
- return (0, chart_set_lock_1.loadChartSetLock)(this.lockPath)?.publishers ?? [];
104
- }
105
- async chartSetRoster() {
106
- this.roster ??= this.readChartSetRoster();
107
- return this.roster;
108
- }
109
- async readChartSetRoster() {
110
- if (!this.remotePlaneEnabled) {
111
- return null;
112
- }
113
- const lock = (0, chart_set_lock_1.loadChartSetLock)(this.lockPath);
114
- if (lock === null) {
115
- return null;
116
- }
117
- if (this.helm === undefined) {
118
- throw new Error(`${this.lockPath} pins a chart set, but this resolver was built without a ` +
119
- 'helm metadata reader, so the pinned roster cannot be read. Construct ' +
120
- 'the ChartResolver with `helm` (a HelmCli).');
121
- }
122
- return (0, chart_set_lock_1.loadChartSetRoster)(lock, this.chartRepo, this.helm);
74
+ sealedLock() {
75
+ this.lock ??= { value: (0, chart_set_lock_1.loadChartSetLock)(this.lockPath) };
76
+ return this.lock.value;
123
77
  }
124
78
  }
125
79
  exports.ChartResolver = ChartResolver;
@@ -1 +1 @@
1
- {"version":3,"file":"chart-resolver.js","sourceRoot":"","sources":["../../../src/runtime/runner/chart-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chart-resolver.js","sourceRoot":"","sources":["../../../src/runtime/runner/chart-resolver.ts"],"names":[],"mappings":";;;AA2KA,4CAQC;AAgBD,gDA6BC;AAWD,oDA2BC;AAtQD,qCAAgD;AAChD,yCAAiC;AAEjC,2DAAiE;AACjE,qDAK0B;AAC1B,yCAAqD;AA6BxC,QAAA,cAAc,GAAG,iBAAiB,CAAC;AAGnC,QAAA,cAAc,GAAG,iBAAiB,CAAC;AAGnC,QAAA,eAAe,GAAG,QAAQ,CAAC;AAMxC,IAAY,eAOX;AAPD,WAAY,eAAe;IAEzB,qDAAkC,CAAA;IAElC,iDAA8B,CAAA;IAE9B,8BAAW,CAAA;AACb,CAAC,EAPW,eAAe,+BAAf,eAAe,QAO1B;AA6BD,MAAa,aAAa;IACf,SAAS,CAAS;IAElB,SAAS,CAAS;IACV,gBAAgB,CAAqB;IAC9C,YAAY,CAAqB;IACxB,GAAG,CAAoB;IAEhC,IAAI,CAAsD;IAElE,YAAY,OAA6B,EAAE;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;QACpC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAGzD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,sBAAc,CAAC,IAAI,kCAAuB,CAAC;QAClF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC;IACxC,CAAC;IAGD,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,CAAC;IAQD,IAAI,QAAQ;QACV,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,gBAAgB,IAAI,IAAA,wCAAuB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,MAAM,SAAS,GAAG,IAAA,gBAAI,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,UAAU,CAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACjG,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC7F,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,eAAe,sBAAc,IAAI,IAAI,CAAC,SAAS,aAAa;gBACxE,IAAI,IAAI,oBAAoB,IAAI,wCAAwC;gBACxE,sBAAsB,sBAAc,uCAAuC;gBAC3E,YAAY,sBAAc,gCAAgC,CAC7D,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,eAAe,sBAAc,IAAI,IAAI,CAAC,SAAS,YAAY;gBACvE,qBAAqB,IAAI,CAAC,QAAQ,oCAAoC;gBACtE,+BAA+B,IAAI,CAAC,SAAS,0BAA0B;gBACvE,sEAAsE;gBACtE,wEAAwE;gBACxE,4DAA4D,CAC/D,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI;YACJ,IAAI,EAAE,eAAe,CAAC,GAAG;YACzB,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE;YAChC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IAGO,UAAU;QAChB,IAAI,CAAC,IAAI,KAAK,EAAE,KAAK,EAAE,IAAA,iCAAgB,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;CACF;AAjFD,sCAiFC;AAGD,SAAgB,gBAAgB,CAAC,MAAyB,OAAO,CAAC,GAAG;IAGnE,MAAM,QAAQ,GAAG,GAAG,CAAC,sBAAc,CAAC,CAAC;IACrC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAA,gBAAI,EAAC,IAAA,8CAA0B,EAAC,EAAE,GAAG,EAAE,CAAC,EAAE,uBAAe,CAAC,CAAC;AACpE,CAAC;AAgBD,SAAgB,kBAAkB,CAAC,GAAW,EAAE,IAAY;IAC1D,IAAI,OAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,OAAO,GAAG,IAAA,qBAAW,EAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,IAAA,8BAAa,EAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;IAC1B,MAAM,UAAU,GAAwC,EAAE,CAAC;IAC3D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAWD,SAAgB,oBAAoB,CAAC,IAAY,EAAE,KAAa;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAC7D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAQD,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,CAAC;QACH,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,IAAA,8BAAa,EAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
@@ -1,31 +1,17 @@
1
- export declare const CHART_SET_ROSTER_ANNOTATION = "xema.dev/chart-set-charts";
2
1
  export declare const CHART_SET_LOCK_ENV = "XEMA_CHART_SET_LOCK";
3
- export declare const CHART_VERSION_ENV = "XEMA_CHART_VERSION";
4
2
  export declare const CHART_SET_LOCK_FILENAME = "chart-set.lock.json";
5
- export interface ChartSetPublisherPin {
6
- readonly index: string;
3
+ export declare const CHART_SET_LOCK_SCHEMA_VERSION = 3;
4
+ export declare const CHART_DIGEST_PATTERN: RegExp;
5
+ export interface ChartSetMember {
7
6
  readonly version: string;
7
+ readonly digest: string;
8
8
  }
9
9
  export interface ChartSetLock {
10
10
  readonly path: string;
11
- readonly publishers: readonly ChartSetPublisherPin[];
11
+ readonly registry: string;
12
+ readonly members: ReadonlyMap<string, ChartSetMember>;
12
13
  }
13
14
  export declare function defaultChartSetLockPath(env?: NodeJS.ProcessEnv): string;
14
15
  export declare function loadChartSetLock(path: string): ChartSetLock | null;
15
- export interface ChartMetadataReader {
16
- showChart(ref: string, version: string): Promise<string>;
17
- }
18
- export interface ChartSetRoster {
19
- readonly versions: ReadonlyMap<string, string>;
20
- readonly publishers: number;
21
- readonly lockPath: string;
22
- }
23
- export declare function loadChartSetRoster(lock: ChartSetLock, chartRepo: string, helm: ChartMetadataReader): Promise<ChartSetRoster>;
24
- interface ChartSetMember {
25
- readonly name: string;
26
- readonly version: string;
27
- }
28
- export declare function parseChartSetRosterAnnotation(shownChart: string, ref: string, version: string): readonly ChartSetMember[];
29
16
  export declare function isMissingPath(error: unknown): boolean;
30
- export {};
31
17
  //# sourceMappingURL=chart-set-lock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chart-set-lock.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/chart-set-lock.ts"],"names":[],"mappings":"AAgCA,eAAO,MAAM,2BAA2B,8BAA8B,CAAC;AAGvE,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AAGxD,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AAGtD,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAG7D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAE3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACtD;AAGD,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAQR;AAWD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAoClE;AA8BD,MAAM,WAAW,mBAAmB;IAElC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,cAAc;IAE7B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAcD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,cAAc,CAAC,CAuBzB;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAgBD,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GACd,SAAS,cAAc,EAAE,CA+D3B;AAGD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMrD"}
1
+ {"version":3,"file":"chart-set-lock.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/chart-set-lock.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AAGxD,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAG7D,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAG/C,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAG5D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAE3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvD;AAGD,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAQR;AAQD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAuBlE;AAkFD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMrD"}