@dsh-enhanced/plugin-control-plane 0.1.31 → 0.1.34

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 (199) hide show
  1. package/README.md +352 -4
  2. package/bin/dsh-local-release-adapter.js +80 -16
  3. package/bin/dsh-npm-registry-adapter.js +613 -0
  4. package/bin/dsh-source-adoption-authority.js +12 -0
  5. package/bin/dsh-source-approval-authority.js +16 -0
  6. package/bin/dsh-source-release-authority.js +12 -0
  7. package/bin/dsh-systemd-host-attestor.js +707 -0
  8. package/bin/dsh-task-observation-authority.js +15 -0
  9. package/lib/adapter-process.d.ts +23 -0
  10. package/lib/adapter-process.d.ts.map +1 -0
  11. package/lib/adapter-process.js +305 -0
  12. package/lib/adapter-process.js.map +1 -0
  13. package/lib/adoption-coordinator.d.ts +63 -0
  14. package/lib/adoption-coordinator.d.ts.map +1 -0
  15. package/lib/adoption-coordinator.js +241 -0
  16. package/lib/adoption-coordinator.js.map +1 -0
  17. package/lib/adoption-handoff.d.ts +16 -0
  18. package/lib/adoption-handoff.d.ts.map +1 -0
  19. package/lib/adoption-handoff.js +11 -0
  20. package/lib/adoption-handoff.js.map +1 -0
  21. package/lib/attestation.d.ts.map +1 -1
  22. package/lib/attestation.js +49 -1
  23. package/lib/attestation.js.map +1 -1
  24. package/lib/catalog.d.ts.map +1 -1
  25. package/lib/catalog.js +29 -2
  26. package/lib/catalog.js.map +1 -1
  27. package/lib/cli.d.ts +33 -9
  28. package/lib/cli.d.ts.map +1 -1
  29. package/lib/cli.js +624 -178
  30. package/lib/cli.js.map +1 -1
  31. package/lib/deployment-readiness.d.ts +38 -0
  32. package/lib/deployment-readiness.d.ts.map +1 -0
  33. package/lib/deployment-readiness.js +154 -0
  34. package/lib/deployment-readiness.js.map +1 -0
  35. package/lib/effect-blocked-replay.d.ts +81 -0
  36. package/lib/effect-blocked-replay.d.ts.map +1 -0
  37. package/lib/effect-blocked-replay.js +259 -0
  38. package/lib/effect-blocked-replay.js.map +1 -0
  39. package/lib/errors.d.ts +6 -0
  40. package/lib/errors.d.ts.map +1 -0
  41. package/lib/errors.js +9 -0
  42. package/lib/errors.js.map +1 -0
  43. package/lib/foreground-deployment-runtime.d.ts +20 -0
  44. package/lib/foreground-deployment-runtime.d.ts.map +1 -0
  45. package/lib/foreground-deployment-runtime.js +79 -0
  46. package/lib/foreground-deployment-runtime.js.map +1 -0
  47. package/lib/foreground-deployment.d.ts +17 -0
  48. package/lib/foreground-deployment.d.ts.map +1 -0
  49. package/lib/foreground-deployment.js +43 -0
  50. package/lib/foreground-deployment.js.map +1 -0
  51. package/lib/host-attestor.d.ts +1 -1
  52. package/lib/host-attestor.d.ts.map +1 -1
  53. package/lib/host-attestor.js +51 -57
  54. package/lib/host-attestor.js.map +1 -1
  55. package/lib/index.d.ts +25 -2
  56. package/lib/index.d.ts.map +1 -1
  57. package/lib/index.js +11 -2
  58. package/lib/index.js.map +1 -1
  59. package/lib/npm-publish.d.ts +25 -0
  60. package/lib/npm-publish.d.ts.map +1 -0
  61. package/lib/npm-publish.js +280 -0
  62. package/lib/npm-publish.js.map +1 -0
  63. package/lib/owner-task-gap-types.d.ts +21 -0
  64. package/lib/owner-task-gap-types.d.ts.map +1 -0
  65. package/lib/owner-task-gap-types.js +2 -0
  66. package/lib/owner-task-gap-types.js.map +1 -0
  67. package/lib/owner-task-gaps.d.ts +24 -0
  68. package/lib/owner-task-gaps.d.ts.map +1 -0
  69. package/lib/owner-task-gaps.js +74 -0
  70. package/lib/owner-task-gaps.js.map +1 -0
  71. package/lib/post-activation.d.ts +33 -0
  72. package/lib/post-activation.d.ts.map +1 -0
  73. package/lib/post-activation.js +219 -0
  74. package/lib/post-activation.js.map +1 -0
  75. package/lib/registry-fetch.d.ts +50 -0
  76. package/lib/registry-fetch.d.ts.map +1 -0
  77. package/lib/registry-fetch.js +267 -0
  78. package/lib/registry-fetch.js.map +1 -0
  79. package/lib/release.d.ts +4 -4
  80. package/lib/release.d.ts.map +1 -1
  81. package/lib/release.js +142 -56
  82. package/lib/release.js.map +1 -1
  83. package/lib/replay-endpoint-protocol.d.ts +65 -0
  84. package/lib/replay-endpoint-protocol.d.ts.map +1 -0
  85. package/lib/replay-endpoint-protocol.js +183 -0
  86. package/lib/replay-endpoint-protocol.js.map +1 -0
  87. package/lib/replay-endpoint.d.ts +7 -0
  88. package/lib/replay-endpoint.d.ts.map +1 -0
  89. package/lib/replay-endpoint.js +193 -0
  90. package/lib/replay-endpoint.js.map +1 -0
  91. package/lib/replay-grant.d.ts +62 -0
  92. package/lib/replay-grant.d.ts.map +1 -0
  93. package/lib/replay-grant.js +208 -0
  94. package/lib/replay-grant.js.map +1 -0
  95. package/lib/replay-journal.d.ts +25 -0
  96. package/lib/replay-journal.d.ts.map +1 -0
  97. package/lib/replay-journal.js +275 -0
  98. package/lib/replay-journal.js.map +1 -0
  99. package/lib/runtime-observer-protocol.d.ts +63 -0
  100. package/lib/runtime-observer-protocol.d.ts.map +1 -0
  101. package/lib/runtime-observer-protocol.js +280 -0
  102. package/lib/runtime-observer-protocol.js.map +1 -0
  103. package/lib/runtime-observer.d.ts +8 -0
  104. package/lib/runtime-observer.d.ts.map +1 -0
  105. package/lib/runtime-observer.js +182 -0
  106. package/lib/runtime-observer.js.map +1 -0
  107. package/lib/service.d.ts +145 -1
  108. package/lib/service.d.ts.map +1 -1
  109. package/lib/service.js +734 -6
  110. package/lib/service.js.map +1 -1
  111. package/lib/source-adoption-authority.d.ts +65 -0
  112. package/lib/source-adoption-authority.d.ts.map +1 -0
  113. package/lib/source-adoption-authority.js +271 -0
  114. package/lib/source-adoption-authority.js.map +1 -0
  115. package/lib/source-adoption-runner.d.ts +28 -0
  116. package/lib/source-adoption-runner.d.ts.map +1 -0
  117. package/lib/source-adoption-runner.js +197 -0
  118. package/lib/source-adoption-runner.js.map +1 -0
  119. package/lib/source-approval-authority.d.ts +50 -0
  120. package/lib/source-approval-authority.d.ts.map +1 -0
  121. package/lib/source-approval-authority.js +412 -0
  122. package/lib/source-approval-authority.js.map +1 -0
  123. package/lib/source-approval-client.d.ts +32 -0
  124. package/lib/source-approval-client.d.ts.map +1 -0
  125. package/lib/source-approval-client.js +175 -0
  126. package/lib/source-approval-client.js.map +1 -0
  127. package/lib/source-build.d.ts +60 -0
  128. package/lib/source-build.d.ts.map +1 -0
  129. package/lib/source-build.js +311 -0
  130. package/lib/source-build.js.map +1 -0
  131. package/lib/source-context.d.ts +24 -0
  132. package/lib/source-context.d.ts.map +1 -0
  133. package/lib/source-context.js +99 -0
  134. package/lib/source-context.js.map +1 -0
  135. package/lib/source-job-types.d.ts +87 -0
  136. package/lib/source-job-types.d.ts.map +1 -0
  137. package/lib/source-job-types.js +2 -0
  138. package/lib/source-job-types.js.map +1 -0
  139. package/lib/source-jobs.d.ts +113 -0
  140. package/lib/source-jobs.d.ts.map +1 -0
  141. package/lib/source-jobs.js +535 -0
  142. package/lib/source-jobs.js.map +1 -0
  143. package/lib/source-release-authority.d.ts +35 -0
  144. package/lib/source-release-authority.d.ts.map +1 -0
  145. package/lib/source-release-authority.js +271 -0
  146. package/lib/source-release-authority.js.map +1 -0
  147. package/lib/source-release-client.d.ts +10 -0
  148. package/lib/source-release-client.d.ts.map +1 -0
  149. package/lib/source-release-client.js +24 -0
  150. package/lib/source-release-client.js.map +1 -0
  151. package/lib/source-release-runner.d.ts +31 -0
  152. package/lib/source-release-runner.d.ts.map +1 -0
  153. package/lib/source-release-runner.js +125 -0
  154. package/lib/source-release-runner.js.map +1 -0
  155. package/lib/source-versioning.d.ts +24 -0
  156. package/lib/source-versioning.d.ts.map +1 -0
  157. package/lib/source-versioning.js +213 -0
  158. package/lib/source-versioning.js.map +1 -0
  159. package/lib/source-workspace.d.ts +117 -0
  160. package/lib/source-workspace.d.ts.map +1 -0
  161. package/lib/source-workspace.js +458 -0
  162. package/lib/source-workspace.js.map +1 -0
  163. package/lib/sqlite.d.ts +1 -1
  164. package/lib/sqlite.d.ts.map +1 -1
  165. package/lib/sqlite.js +509 -7
  166. package/lib/sqlite.js.map +1 -1
  167. package/lib/store.d.ts +229 -6
  168. package/lib/store.d.ts.map +1 -1
  169. package/lib/store.js +2431 -383
  170. package/lib/store.js.map +1 -1
  171. package/lib/task-observation-authority.d.ts +29 -0
  172. package/lib/task-observation-authority.d.ts.map +1 -0
  173. package/lib/task-observation-authority.js +370 -0
  174. package/lib/task-observation-authority.js.map +1 -0
  175. package/lib/task-observation-client.d.ts +4 -0
  176. package/lib/task-observation-client.d.ts.map +1 -0
  177. package/lib/task-observation-client.js +20 -0
  178. package/lib/task-observation-client.js.map +1 -0
  179. package/lib/task-observation-runtime.d.ts +59 -0
  180. package/lib/task-observation-runtime.d.ts.map +1 -0
  181. package/lib/task-observation-runtime.js +331 -0
  182. package/lib/task-observation-runtime.js.map +1 -0
  183. package/lib/task-observation-store.d.ts +17 -0
  184. package/lib/task-observation-store.d.ts.map +1 -0
  185. package/lib/task-observation-store.js +115 -0
  186. package/lib/task-observation-store.js.map +1 -0
  187. package/lib/task-observation-types.d.ts +67 -0
  188. package/lib/task-observation-types.d.ts.map +1 -0
  189. package/lib/task-observation-types.js +2 -0
  190. package/lib/task-observation-types.js.map +1 -0
  191. package/lib/trust.d.ts +3 -0
  192. package/lib/trust.d.ts.map +1 -1
  193. package/lib/trust.js +0 -0
  194. package/lib/trust.js.map +1 -1
  195. package/lib/types.d.ts +275 -8
  196. package/lib/types.d.ts.map +1 -1
  197. package/lib/version.d.ts +1 -1
  198. package/lib/version.js +1 -1
  199. package/package.json +40 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-publish.js","sourceRoot":"","sources":["../src/npm-publish.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { SourceJobOwnerReceipt } from './source-job-types.js';
2
+ /**
3
+ * Private, immutable pointer to one owner-verified foreground failure. It
4
+ * intentionally contains no task text, prompt, tool arguments, or evidence
5
+ * body; consumers must re-read those facts through their fenced Host APIs.
6
+ */
7
+ export interface OwnerTaskFailureReference {
8
+ schemaVersion: 1;
9
+ owner: SourceJobOwnerReceipt;
10
+ outcomeId: string;
11
+ projection: {
12
+ subjectKind: 'foreground-turn';
13
+ subjectRef: string;
14
+ version: number;
15
+ digest: string;
16
+ disposition: 'upsert';
17
+ evidenceOutcomeId?: string;
18
+ };
19
+ sourceDigest: string;
20
+ }
21
+ //# sourceMappingURL=owner-task-gap-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"owner-task-gap-types.d.ts","sourceRoot":"","sources":["../src/owner-task-gap-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAElE;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,CAAC,CAAA;IAChB,KAAK,EAAE,qBAAqB,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE;QACV,WAAW,EAAE,iBAAiB,CAAA;QAC9B,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,MAAM,CAAA;QACf,MAAM,EAAE,MAAM,CAAA;QACd,WAAW,EAAE,QAAQ,CAAA;QACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAC3B,CAAA;IACD,YAAY,EAAE,MAAM,CAAA;CACrB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=owner-task-gap-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"owner-task-gap-types.js","sourceRoot":"","sources":["../src/owner-task-gap-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import type { AssistantDeliveryService, OwnerForegroundLearningTask } from '@dsh-enhanced/assistant-delivery';
2
+ import type { AssistantEvaluationService } from '@dsh-enhanced/assistant-evaluation';
3
+ import { type ControlPlaneStore } from './store.js';
4
+ import type { SourceJobCaller } from './source-jobs.js';
5
+ import type { SourceJobOwnerReceipt } from './source-job-types.js';
6
+ type Ports = {
7
+ delivery: Pick<AssistantDeliveryService, 'inspectOwnerForegroundLearningTask'>;
8
+ evaluation: Pick<AssistantEvaluationService, 'canonicalHostScope' | 'withTrustedCanonicalTaskWriterFence'>;
9
+ };
10
+ /** Host-only bridge. A caller's source is an expectation, never evidence. */
11
+ export declare class OwnerTaskFailureGaps {
12
+ private readonly store;
13
+ private readonly ports;
14
+ constructor(store: ControlPlaneStore, ports: () => Ports);
15
+ private reference;
16
+ private read;
17
+ private fence;
18
+ record(source: OwnerForegroundLearningTask): import("./types.js").StoredCapabilityGap;
19
+ /** Private Host snapshot; objective and actual model never enter the public gap. */
20
+ snapshot(gapId: string, owner: SourceJobOwnerReceipt): OwnerForegroundLearningTask;
21
+ withCurrent<T>(gapId: string, owner: SourceJobCaller | SourceJobOwnerReceipt | undefined, callback: () => T): T;
22
+ }
23
+ export {};
24
+ //# sourceMappingURL=owner-task-gaps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"owner-task-gaps.d.ts","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAC7G,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAElE,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EAAE,oCAAoC,CAAC,CAAA;IAC9E,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,oBAAoB,GAAG,qCAAqC,CAAC,CAAA;CAC3G,CAAA;AAED,6EAA6E;AAC7E,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAqB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAhD,KAAK,EAAE,iBAAiB,EAAmB,KAAK,EAAE,MAAM,KAAK;IAE1F,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,IAAI;IAUZ,OAAO,CAAC,KAAK;IAeb,MAAM,CAAC,MAAM,EAAE,2BAA2B;IAK1C,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,2BAA2B;IAMlF,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,qBAAqB,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;CAahH"}
@@ -0,0 +1,74 @@
1
+ import { controlPlaneDigest } from './store.js';
2
+ /** Host-only bridge. A caller's source is an expectation, never evidence. */
3
+ export class OwnerTaskFailureGaps {
4
+ store;
5
+ ports;
6
+ constructor(store, ports) {
7
+ this.store = store;
8
+ this.ports = ports;
9
+ }
10
+ reference(source) {
11
+ const projection = source.canonical.projection;
12
+ if (source.protocol !== 'assistant-delivery/owner-foreground-learning/v1'
13
+ || !['independent-verifier', 'owner-feedback'].includes(source.judgement)
14
+ || source.canonical.objective?.status !== 'not-achieved'
15
+ || projection.subjectKind !== 'foreground-turn' || projection.disposition !== 'upsert'
16
+ || source.source.inboxId !== projection.subjectRef || source.source.truncated || !source.source.quiescent
17
+ || source.ownerRevision?.action === 'withdraw')
18
+ throw new Error('task repair requires a current trusted foreground failure');
19
+ return { schemaVersion: 1, owner: source.owner, outcomeId: source.canonical.triggerOutcomeId,
20
+ projection: { ...projection, subjectKind: 'foreground-turn', disposition: 'upsert' },
21
+ sourceDigest: controlPlaneDigest({ protocol: source.protocol, source: source.source,
22
+ judgement: source.judgement, ownerRevision: source.ownerRevision }) };
23
+ }
24
+ read(reference, ports) {
25
+ const owner = reference.owner;
26
+ const current = ports.delivery.inspectOwnerForegroundLearningTask({ authorityId: owner.authorityId,
27
+ principalId: owner.principalId, workspace: owner.workspace, agentPreset: owner.agentPreset, outcomeId: reference.outcomeId });
28
+ if (!current || controlPlaneDigest(this.reference(current)) !== controlPlaneDigest(reference)) {
29
+ throw new Error('task repair source or owner changed');
30
+ }
31
+ return current;
32
+ }
33
+ fence(reference, callback) {
34
+ const ports = this.ports();
35
+ const current = this.read(reference, ports);
36
+ const scope = ports.evaluation.canonicalHostScope({ workspace: current.owner.workspace, preset: current.owner.agentPreset });
37
+ const fenced = ports.evaluation.withTrustedCanonicalTaskWriterFence({ scope,
38
+ scopeWatermark: current.canonical.scopeWatermark, evidence: [current.canonical.projection] }, () => {
39
+ // Keep the owner and source reread inside Evaluation's synchronous writer
40
+ // fence, including after a long build or a durable-job restart.
41
+ this.read(reference, ports);
42
+ return callback();
43
+ });
44
+ if (!fenced.matched)
45
+ throw new Error('task repair canonical writer fence changed');
46
+ return fenced.value;
47
+ }
48
+ record(source) {
49
+ const reference = this.reference(source);
50
+ return this.fence(reference, () => this.store.recordOwnerTaskFailureGap(reference));
51
+ }
52
+ /** Private Host snapshot; objective and actual model never enter the public gap. */
53
+ snapshot(gapId, owner) {
54
+ const reference = this.store.getOwnerTaskFailureReference(gapId);
55
+ if (!reference)
56
+ throw new Error('task repair source unavailable');
57
+ return this.withCurrent(gapId, owner, () => structuredClone(this.read(reference, this.ports())));
58
+ }
59
+ withCurrent(gapId, owner, callback) {
60
+ const reference = this.store.getOwnerTaskFailureReference(gapId);
61
+ if (!reference)
62
+ return callback();
63
+ const expected = reference.owner;
64
+ if (!owner || ('receiptVersion' in owner
65
+ ? controlPlaneDigest(owner) !== controlPlaneDigest(expected)
66
+ : owner.ownerRouteId !== expected.authorityId || owner.principalId !== expected.principalId
67
+ || owner.principalRecordId !== expected.principalRecordId || owner.principalVersion !== expected.principalVersion
68
+ || owner.workspace !== expected.workspace || owner.preset !== expected.agentPreset)) {
69
+ throw new Error('task repair gap does not belong to the caller');
70
+ }
71
+ return this.fence(reference, () => this.store.withOwnerTaskFailureGapAdmission(gapId, callback));
72
+ }
73
+ }
74
+ //# sourceMappingURL=owner-task-gaps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"owner-task-gaps.js","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { ActivationRetractionAuthority, ActivationRetractionReceipt, PluginActivationPlan, PostActivationHealthEvidence, PostActivationObservationAuthority, PostActivationObservationReceipt, VerifiedActivationRetraction, VerifiedPostActivationObservation, WatchExactTarget } from './types.js';
2
+ export declare function postActivationEvidenceDigest(evidence: PostActivationHealthEvidence): string;
3
+ export declare function parsePostActivationObservation(value: unknown): PostActivationObservationReceipt;
4
+ export interface PostActivationVerifyOptions {
5
+ /** Freshness bound for an observation submission; defaults to the host policy 30s window. */
6
+ receiptTtlMs?: number;
7
+ }
8
+ export declare class Ed25519PostActivationObservationAuthority implements PostActivationObservationAuthority {
9
+ readonly publicKey: string | Buffer;
10
+ readonly expectedAuthority: string;
11
+ readonly expectedKeyId: string;
12
+ private readonly options;
13
+ readonly now: () => number;
14
+ constructor(publicKey: string | Buffer, expectedAuthority: string, expectedKeyId: string, options?: PostActivationVerifyOptions, now?: () => number);
15
+ verify(receiptInput: PostActivationObservationReceipt, plan: PluginActivationPlan, exact: WatchExactTarget): Promise<VerifiedPostActivationObservation>;
16
+ }
17
+ export declare function postActivationObservationSigningPayload(receipt: Omit<PostActivationObservationReceipt, 'signature'>): string;
18
+ export declare function parseActivationRetraction(value: unknown): ActivationRetractionReceipt;
19
+ export interface ActivationRetractionVerifyOptions {
20
+ /** Submission freshness window; defaults to the approval 15 minute window. */
21
+ receiptTtlMs?: number;
22
+ }
23
+ export declare class Ed25519ActivationRetractionAuthority implements ActivationRetractionAuthority {
24
+ readonly publicKey: string | Buffer;
25
+ readonly expectedAuthority: string;
26
+ readonly expectedKeyId: string;
27
+ private readonly options;
28
+ readonly now: () => number;
29
+ constructor(publicKey: string | Buffer, expectedAuthority: string, expectedKeyId: string, options?: ActivationRetractionVerifyOptions, now?: () => number);
30
+ verify(receiptInput: ActivationRetractionReceipt, plan: PluginActivationPlan, exact: WatchExactTarget): Promise<VerifiedActivationRetraction>;
31
+ }
32
+ export declare function activationRetractionSigningPayload(receipt: Omit<ActivationRetractionReceipt, 'signature'>): string;
33
+ //# sourceMappingURL=post-activation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-activation.d.ts","sourceRoot":"","sources":["../src/post-activation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,6BAA6B,EAC7B,2BAA2B,EAC3B,oBAAoB,EACpB,4BAA4B,EAC5B,kCAAkC,EAClC,gCAAgC,EAChC,4BAA4B,EAC5B,iCAAiC,EACjC,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAuEnB,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,4BAA4B,GAAG,MAAM,CAA4B;AAExH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,gCAAgC,CA6B/F;AAED,MAAM,WAAW,2BAA2B;IAC1C,6FAA6F;IAC7F,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,qBAAa,yCAA0C,YAAW,kCAAkC;IAEhG,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM;gBAJjB,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,MAAM,EACb,OAAO,GAAE,2BAAgC,EACjD,GAAG,GAAE,MAAM,MAAiB;IAGjC,MAAM,CAAC,YAAY,EAAE,gCAAgC,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,gBAAgB,GAC9G,OAAO,CAAC,iCAAiC,CAAC;CAsB7C;AAED,wBAAgB,uCAAuC,CAAC,OAAO,EAAE,IAAI,CAAC,gCAAgC,EAAE,WAAW,CAAC,GAAG,MAAM,CAE5H;AAqBD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,2BAA2B,CAuBrF;AAED,MAAM,WAAW,iCAAiC;IAChD,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,qBAAa,oCAAqC,YAAW,6BAA6B;IAEtF,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM;gBAJjB,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,MAAM,EACb,OAAO,GAAE,iCAAsC,EACvD,GAAG,GAAE,MAAM,MAAiB;IAGjC,MAAM,CAAC,YAAY,EAAE,2BAA2B,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,gBAAgB,GACzG,OAAO,CAAC,4BAA4B,CAAC;CAwBxC;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,WAAW,CAAC,GAAG,MAAM,CAElH"}
@@ -0,0 +1,219 @@
1
+ import { createHash, createPublicKey, verify } from 'node:crypto';
2
+ import { ControlPlaneStoreError } from './store.js';
3
+ const ID = /^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$/u;
4
+ const DIGEST = /^[a-f0-9]{64}$/u;
5
+ const UUID = /^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/u;
6
+ const VERSION = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-(?:0|[1-9]\d*|[A-Za-z-][0-9A-Za-z-]*)(?:\.(?:0|[1-9]\d*|[A-Za-z-][0-9A-Za-z-]*))*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/u;
7
+ const SIGNATURE = /^[A-Za-z0-9+/]+={0,2}$/u;
8
+ // Mirror the catalog admission invariants so a watch can only pin an exact
9
+ // package@version the owner catalog would itself admit.
10
+ const PACKAGE = /^@[a-z0-9][a-z0-9-]*\/[a-z0-9][a-z0-9-]*$/u;
11
+ const INTEGRITY = /^sha512-[A-Za-z0-9+/=]+$/u;
12
+ function canonical(value) {
13
+ if (Array.isArray(value))
14
+ return `[${value.map(canonical).join(',')}]`;
15
+ if (typeof value === 'object' && value !== null) {
16
+ return `{${Object.entries(value).filter(([, item]) => item !== undefined)
17
+ .sort(([left], [right]) => left.localeCompare(right)).map(([key, item]) => `${JSON.stringify(key)}:${canonical(item)}`).join(',')}}`;
18
+ }
19
+ return JSON.stringify(value);
20
+ }
21
+ function digest(value) { return createHash('sha256').update(canonical(value)).digest('hex'); }
22
+ function record(value, label) {
23
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
24
+ throw new ControlPlaneStoreError('invalid-input', `${label} must be an object`);
25
+ return value;
26
+ }
27
+ function exact(value, fields, label) {
28
+ if (Object.keys(value).sort().join('\0') !== [...fields].sort().join('\0'))
29
+ throw new ControlPlaneStoreError('invalid-input', `${label} has unknown or missing fields`);
30
+ }
31
+ function integer(value, label, minimum = 0) {
32
+ if (!Number.isSafeInteger(value) || Number(value) < minimum)
33
+ throw new ControlPlaneStoreError('invalid-input', `${label} must be a bounded integer`);
34
+ return Number(value);
35
+ }
36
+ function id(value, label, pattern = ID) {
37
+ if (typeof value !== 'string' || !pattern.test(value))
38
+ throw new ControlPlaneStoreError('invalid-input', `${label} is invalid`);
39
+ return value;
40
+ }
41
+ function parseHealthEvidence(value) {
42
+ const item = record(value, 'post-activation health evidence');
43
+ exact(item, ['kind', 'checks', 'failures', 'probeDigest'], 'post-activation health evidence');
44
+ if (item.kind !== 'post-activation-health')
45
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation evidence kind is invalid');
46
+ const checks = integer(item.checks, 'checks');
47
+ const failures = integer(item.failures, 'failures');
48
+ if (failures > checks)
49
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation failures exceed checks');
50
+ return { kind: 'post-activation-health', checks, failures, probeDigest: id(item.probeDigest, 'probeDigest', DIGEST) };
51
+ }
52
+ // ---------------------------------------------------------------------------
53
+ // Host-signed post-activation observation (independent failure/health evidence)
54
+ // ---------------------------------------------------------------------------
55
+ const observationFields = ['schemaVersion', 'observationId', 'authority', 'keyId', 'installationId', 'planId',
56
+ 'planDigest', 'activationId', 'fence', 'package', 'version', 'integrity', 'disposition', 'evidence',
57
+ 'evidenceDigest', 'hostGeneration', 'observedAt', 'expiresAt', 'signature'];
58
+ function canonicalObservation(receipt) {
59
+ return canonical({
60
+ schemaVersion: receipt.schemaVersion, observationId: receipt.observationId, authority: receipt.authority,
61
+ keyId: receipt.keyId, installationId: receipt.installationId, planId: receipt.planId,
62
+ planDigest: receipt.planDigest, activationId: receipt.activationId, fence: receipt.fence,
63
+ package: receipt.package, version: receipt.version, integrity: receipt.integrity,
64
+ disposition: receipt.disposition, evidence: receipt.evidence, evidenceDigest: receipt.evidenceDigest,
65
+ hostGeneration: receipt.hostGeneration, observedAt: receipt.observedAt, expiresAt: receipt.expiresAt,
66
+ });
67
+ }
68
+ export function postActivationEvidenceDigest(evidence) { return digest(evidence); }
69
+ export function parsePostActivationObservation(value) {
70
+ const item = record(value, 'post-activation observation');
71
+ exact(item, observationFields, 'post-activation observation');
72
+ if (item.schemaVersion !== 1 || (item.disposition !== 'regressed' && item.disposition !== 'healthy')
73
+ || typeof item.signature !== 'string' || !SIGNATURE.test(item.signature)) {
74
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation observation fields are invalid');
75
+ }
76
+ const receipt = {
77
+ schemaVersion: 1, observationId: id(item.observationId, 'observationId'), authority: id(item.authority, 'authority'),
78
+ keyId: id(item.keyId, 'keyId'), installationId: id(item.installationId, 'installationId', UUID),
79
+ planId: id(item.planId, 'planId'), planDigest: id(item.planDigest, 'planDigest', DIGEST),
80
+ activationId: id(item.activationId, 'activationId'), fence: integer(item.fence, 'fence', 1),
81
+ package: id(item.package, 'package', PACKAGE), version: id(item.version, 'version', VERSION),
82
+ integrity: id(item.integrity, 'integrity', INTEGRITY), disposition: item.disposition,
83
+ evidence: parseHealthEvidence(item.evidence), evidenceDigest: id(item.evidenceDigest, 'evidenceDigest', DIGEST),
84
+ hostGeneration: integer(item.hostGeneration, 'hostGeneration', 1),
85
+ observedAt: integer(item.observedAt, 'observedAt'), expiresAt: integer(item.expiresAt, 'expiresAt'),
86
+ signature: item.signature,
87
+ };
88
+ if (receipt.expiresAt <= receipt.observedAt || postActivationEvidenceDigest(receipt.evidence) !== receipt.evidenceDigest) {
89
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation evidence digest or validity interval is invalid');
90
+ }
91
+ // The disposition is not a free-form signer claim: it must agree with the signed
92
+ // counters. A clean probe is positive evidence; at least one failure is a regression.
93
+ if ((receipt.disposition === 'healthy' && receipt.evidence.failures !== 0)
94
+ || (receipt.disposition === 'regressed' && receipt.evidence.failures === 0)) {
95
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation disposition does not match its signed failure evidence');
96
+ }
97
+ return receipt;
98
+ }
99
+ export class Ed25519PostActivationObservationAuthority {
100
+ publicKey;
101
+ expectedAuthority;
102
+ expectedKeyId;
103
+ options;
104
+ now;
105
+ constructor(publicKey, expectedAuthority, expectedKeyId, options = {}, now = Date.now) {
106
+ this.publicKey = publicKey;
107
+ this.expectedAuthority = expectedAuthority;
108
+ this.expectedKeyId = expectedKeyId;
109
+ this.options = options;
110
+ this.now = now;
111
+ }
112
+ async verify(receiptInput, plan, exact) {
113
+ const receipt = parsePostActivationObservation(receiptInput);
114
+ if (receipt.authority !== this.expectedAuthority || receipt.keyId !== this.expectedKeyId
115
+ || receipt.installationId !== plan.installationId || receipt.planId !== plan.id
116
+ || receipt.planDigest !== plan.digest || !plan.activation
117
+ || receipt.activationId !== plan.activation.id || receipt.fence !== plan.activation.fence
118
+ || receipt.package !== exact.package || receipt.version !== exact.version || receipt.integrity !== exact.integrity) {
119
+ throw new ControlPlaneStoreError('conflict', 'post-activation observation is not bound to the exact installation, plan, activation fence, and pinned package');
120
+ }
121
+ const ttl = this.options.receiptTtlMs ?? 30000;
122
+ const now = this.now();
123
+ if (receipt.observedAt < plan.createdAt || receipt.observedAt > now || now > receipt.expiresAt
124
+ || receipt.expiresAt - receipt.observedAt > ttl) {
125
+ throw new ControlPlaneStoreError('expired', 'post-activation observation is outside its validity interval');
126
+ }
127
+ const signature = Buffer.from(receipt.signature, 'base64');
128
+ if (!verify(null, Buffer.from(canonicalObservation(receipt)), createPublicKey(this.publicKey), signature)) {
129
+ throw new ControlPlaneStoreError('invalid-input', 'post-activation observation signature is invalid');
130
+ }
131
+ const { signature: _signature, ...fields } = receipt;
132
+ return Object.freeze({ ...fields, signatureDigest: createHash('sha256').update(signature).digest('hex') });
133
+ }
134
+ }
135
+ export function postActivationObservationSigningPayload(receipt) {
136
+ return canonicalObservation({ ...receipt, signature: '' });
137
+ }
138
+ // ---------------------------------------------------------------------------
139
+ // Owner-signed activation retraction (the only retracted-closure authority)
140
+ // ---------------------------------------------------------------------------
141
+ const retractionFields = ['schemaVersion', 'retractionId', 'authority', 'keyId', 'installationId', 'planId',
142
+ 'planDigest', 'activationId', 'fence', 'package', 'version', 'integrity', 'principal', 'reason',
143
+ 'decidedAt', 'expiresAt', 'signature'];
144
+ function canonicalRetraction(receipt) {
145
+ return canonical({
146
+ schemaVersion: receipt.schemaVersion, retractionId: receipt.retractionId, authority: receipt.authority,
147
+ keyId: receipt.keyId, installationId: receipt.installationId, planId: receipt.planId,
148
+ planDigest: receipt.planDigest, activationId: receipt.activationId, fence: receipt.fence,
149
+ package: receipt.package, version: receipt.version, integrity: receipt.integrity,
150
+ principal: receipt.principal.normalize('NFC').trim(), reason: receipt.reason,
151
+ decidedAt: receipt.decidedAt, expiresAt: receipt.expiresAt,
152
+ });
153
+ }
154
+ export function parseActivationRetraction(value) {
155
+ const item = record(value, 'activation retraction');
156
+ exact(item, retractionFields, 'activation retraction');
157
+ if (item.schemaVersion !== 1 || typeof item.signature !== 'string' || !SIGNATURE.test(item.signature)
158
+ || typeof item.principal !== 'string' || typeof item.reason !== 'string') {
159
+ throw new ControlPlaneStoreError('invalid-input', 'activation retraction fields are invalid');
160
+ }
161
+ const principal = item.principal.normalize('NFC').trim();
162
+ const receipt = {
163
+ schemaVersion: 1, retractionId: id(item.retractionId, 'retractionId'), authority: id(item.authority, 'authority'),
164
+ keyId: id(item.keyId, 'keyId'), installationId: id(item.installationId, 'installationId', UUID),
165
+ planId: id(item.planId, 'planId'), planDigest: id(item.planDigest, 'planDigest', DIGEST),
166
+ activationId: id(item.activationId, 'activationId'), fence: integer(item.fence, 'fence', 1),
167
+ package: id(item.package, 'package', PACKAGE), version: id(item.version, 'version', VERSION),
168
+ integrity: id(item.integrity, 'integrity', INTEGRITY), principal, reason: item.reason,
169
+ decidedAt: integer(item.decidedAt, 'decidedAt'), expiresAt: integer(item.expiresAt, 'expiresAt'),
170
+ signature: item.signature,
171
+ };
172
+ if (principal === '' || principal.length > 256 || receipt.reason.trim() === '' || receipt.reason.length > 1024
173
+ || receipt.expiresAt <= receipt.decidedAt) {
174
+ throw new ControlPlaneStoreError('invalid-input', 'activation retraction values are invalid');
175
+ }
176
+ return receipt;
177
+ }
178
+ export class Ed25519ActivationRetractionAuthority {
179
+ publicKey;
180
+ expectedAuthority;
181
+ expectedKeyId;
182
+ options;
183
+ now;
184
+ constructor(publicKey, expectedAuthority, expectedKeyId, options = {}, now = Date.now) {
185
+ this.publicKey = publicKey;
186
+ this.expectedAuthority = expectedAuthority;
187
+ this.expectedKeyId = expectedKeyId;
188
+ this.options = options;
189
+ this.now = now;
190
+ }
191
+ async verify(receiptInput, plan, exact) {
192
+ const receipt = parseActivationRetraction(receiptInput);
193
+ if (receipt.authority !== this.expectedAuthority || receipt.keyId !== this.expectedKeyId
194
+ || receipt.installationId !== plan.installationId || receipt.planId !== plan.id
195
+ || receipt.planDigest !== plan.digest || !plan.activation
196
+ || receipt.activationId !== plan.activation.id || receipt.fence !== plan.activation.fence
197
+ || receipt.package !== exact.package || receipt.version !== exact.version || receipt.integrity !== exact.integrity) {
198
+ throw new ControlPlaneStoreError('conflict', 'activation retraction is not bound to the exact owner authority, plan, activation fence, and pinned package');
199
+ }
200
+ // A retraction is a long-lived post-activation owner decision: it is bounded by
201
+ // plan creation (not by the short proposal TTL) and by its own submission window.
202
+ const ttl = this.options.receiptTtlMs ?? 900000;
203
+ const now = this.now();
204
+ if (receipt.decidedAt < plan.createdAt || receipt.decidedAt > now || now > receipt.expiresAt
205
+ || receipt.expiresAt - receipt.decidedAt > ttl) {
206
+ throw new ControlPlaneStoreError('expired', 'activation retraction is outside its validity interval');
207
+ }
208
+ const signature = Buffer.from(receipt.signature, 'base64');
209
+ if (!verify(null, Buffer.from(canonicalRetraction(receipt)), createPublicKey(this.publicKey), signature)) {
210
+ throw new ControlPlaneStoreError('invalid-input', 'activation retraction signature is invalid');
211
+ }
212
+ const { signature: _signature, ...fields } = receipt;
213
+ return Object.freeze({ ...fields, signatureDigest: createHash('sha256').update(signature).digest('hex') });
214
+ }
215
+ }
216
+ export function activationRetractionSigningPayload(receipt) {
217
+ return canonicalRetraction({ ...receipt, signature: '' });
218
+ }
219
+ //# sourceMappingURL=post-activation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-activation.js","sourceRoot":"","sources":["../src/post-activation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAanD,MAAM,EAAE,GAAG,sCAAsC,CAAA;AACjD,MAAM,MAAM,GAAG,iBAAiB,CAAA;AAChC,MAAM,IAAI,GAAG,4EAA4E,CAAA;AACzF,MAAM,OAAO,GAAG,4KAA4K,CAAA;AAC5L,MAAM,SAAS,GAAG,yBAAyB,CAAA;AAC3C,2EAA2E;AAC3E,wDAAwD;AACxD,MAAM,OAAO,GAAG,4CAA4C,CAAA;AAC5D,MAAM,SAAS,GAAG,2BAA2B,CAAA;AAE7C,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC;aACjG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACxI,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,IAAY,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC;AAE9G,SAAS,MAAM,CAAC,KAAc,EAAE,KAAa;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,GAAG,KAAK,oBAAoB,CAAC,CAAA;IACxJ,OAAO,KAAgC,CAAA;AACzC,CAAC;AAED,SAAS,KAAK,CAAC,KAA8B,EAAE,MAAyB,EAAE,KAAa;IACrF,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,GAAG,KAAK,gCAAgC,CAAC,CAAA;AACzK,CAAC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,KAAa,EAAE,OAAO,GAAG,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,GAAG,KAAK,4BAA4B,CAAC,CAAA;IACpJ,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACtB,CAAC;AAED,SAAS,EAAE,CAAC,KAAc,EAAE,KAAa,EAAE,UAAkB,EAAE;IAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,GAAG,KAAK,aAAa,CAAC,CAAA;IAC/H,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,iCAAiC,CAAC,CAAA;IAC7D,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,iCAAiC,CAAC,CAAA;IAC7F,IAAI,IAAI,CAAC,IAAI,KAAK,wBAAwB;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,0CAA0C,CAAC,CAAA;IACzI,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;IACnD,IAAI,QAAQ,GAAG,MAAM;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,wCAAwC,CAAC,CAAA;IAClH,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,CAAA;AACvH,CAAC;AAED,8EAA8E;AAC9E,gFAAgF;AAChF,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,CAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ;IAC3G,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU;IACnG,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAU,CAAA;AAEtF,SAAS,oBAAoB,CAAC,OAAyC;IACrE,OAAO,SAAS,CAAC;QACf,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;QACxG,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;QACpF,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK;QACxF,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;QAChF,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc;QACpG,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;KACrG,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,QAAsC,IAAY,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC;AAExH,MAAM,UAAU,8BAA8B,CAAC,KAAc;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAA;IACzD,KAAK,CAAC,IAAI,EAAE,iBAAiB,EAAE,6BAA6B,CAAC,CAAA;IAC7D,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,WAAW,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC;WAC/F,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,gDAAgD,CAAC,CAAA;IACrG,CAAC;IACD,MAAM,OAAO,GAAqC;QAChD,aAAa,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;QACpH,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,EAAE,IAAI,CAAC;QAC/F,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAC;QACxF,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;QAC5F,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW;QACpF,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,EAAE,MAAM,CAAC;QAC/G,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACjE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;QACnG,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAA;IACD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,UAAU,IAAI,4BAA4B,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;QACzH,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,iEAAiE,CAAC,CAAA;IACtH,CAAC;IACD,iFAAiF;IACjF,sFAAsF;IACtF,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,KAAK,CAAC,CAAC;WACrE,CAAC,OAAO,CAAC,WAAW,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,wEAAwE,CAAC,CAAA;IAC7H,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAOD,MAAM,OAAO,yCAAyC;IAEzC;IACA;IACA;IACQ;IACR;IALX,YACW,SAA0B,EAC1B,iBAAyB,EACzB,aAAqB,EACb,UAAuC,EAAE,EACjD,MAAoB,IAAI,CAAC,GAAG;QAJ5B,cAAS,GAAT,SAAS,CAAiB;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAQ;QACzB,kBAAa,GAAb,aAAa,CAAQ;QACb,YAAO,GAAP,OAAO,CAAkC;QACjD,QAAG,GAAH,GAAG,CAAyB;IACpC,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,YAA8C,EAAE,IAA0B,EAAE,KAAuB;QAE9G,MAAM,OAAO,GAAG,8BAA8B,CAAC,YAAY,CAAC,CAAA;QAC5D,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa;eACnF,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE;eAC5E,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU;eACtD,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK;eACtF,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACrH,MAAM,IAAI,sBAAsB,CAAC,UAAU,EAAE,gHAAgH,CAAC,CAAA;QAChK,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK,CAAA;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,UAAU,GAAG,GAAG,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS;eACzF,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;YAClD,MAAM,IAAI,sBAAsB,CAAC,SAAS,EAAE,8DAA8D,CAAC,CAAA;QAC7G,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;YAC1G,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,kDAAkD,CAAC,CAAA;QACvG,CAAC;QACD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;QACpD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC5G,CAAC;CACF;AAED,MAAM,UAAU,uCAAuC,CAAC,OAA4D;IAClH,OAAO,oBAAoB,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAE9E,MAAM,gBAAgB,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ;IACzG,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ;IAC/F,WAAW,EAAE,WAAW,EAAE,WAAW,CAAU,CAAA;AAEjD,SAAS,mBAAmB,CAAC,OAAoC;IAC/D,OAAO,SAAS,CAAC;QACf,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;QACtG,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;QACpF,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK;QACxF,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;QAChF,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;QAC5E,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;KAC3D,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAA;IACnD,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,uBAAuB,CAAC,CAAA;IACtD,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;WAChG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC3E,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,0CAA0C,CAAC,CAAA;IAC/F,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;IACxD,MAAM,OAAO,GAAgC;QAC3C,aAAa,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;QACjH,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,EAAE,IAAI,CAAC;QAC/F,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAC;QACxF,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;QAC5F,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;QACrF,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;QAChG,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAA;IACD,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,CAAC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI;WACzG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,0CAA0C,CAAC,CAAA;IAC/F,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAOD,MAAM,OAAO,oCAAoC;IAEpC;IACA;IACA;IACQ;IACR;IALX,YACW,SAA0B,EAC1B,iBAAyB,EACzB,aAAqB,EACb,UAA6C,EAAE,EACvD,MAAoB,IAAI,CAAC,GAAG;QAJ5B,cAAS,GAAT,SAAS,CAAiB;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAQ;QACzB,kBAAa,GAAb,aAAa,CAAQ;QACb,YAAO,GAAP,OAAO,CAAwC;QACvD,QAAG,GAAH,GAAG,CAAyB;IACpC,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,YAAyC,EAAE,IAA0B,EAAE,KAAuB;QAEzG,MAAM,OAAO,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAA;QACvD,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa;eACnF,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE;eAC5E,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU;eACtD,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK;eACtF,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACrH,MAAM,IAAI,sBAAsB,CAAC,UAAU,EAAE,6GAA6G,CAAC,CAAA;QAC7J,CAAC;QACD,gFAAgF;QAChF,kFAAkF;QAClF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,MAAM,CAAA;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,GAAG,GAAG,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS;eACvF,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;YACjD,MAAM,IAAI,sBAAsB,CAAC,SAAS,EAAE,wDAAwD,CAAC,CAAA;QACvG,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;YACzG,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,4CAA4C,CAAC,CAAA;QACjG,CAAC;QACD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;QACpD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC5G,CAAC;CACF;AAED,MAAM,UAAU,kCAAkC,CAAC,OAAuD;IACxG,OAAO,mBAAmB,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAA;AAC3D,CAAC"}
@@ -0,0 +1,50 @@
1
+ export declare class RegistryFetchError extends Error {
2
+ constructor(message: string);
3
+ }
4
+ export interface RegistryBinding {
5
+ id: string;
6
+ locator: string;
7
+ protocol?: 'dsh' | 'npm';
8
+ caPins: readonly string[];
9
+ tokenEnvironment: string | null;
10
+ }
11
+ export interface FetchedRegistryArtifact {
12
+ bytes: Buffer;
13
+ mediaType: string | null;
14
+ reference: string;
15
+ }
16
+ export interface ObservedNpmArtifact extends FetchedRegistryArtifact {
17
+ metadataReference: string;
18
+ metadataIntegrity: string;
19
+ }
20
+ interface RegistryArtifactRequest {
21
+ registry: RegistryBinding;
22
+ packageName: string;
23
+ version: string;
24
+ signal?: AbortSignal;
25
+ timeoutMs?: number;
26
+ }
27
+ export declare function observeNpmRegistryArtifact(request: RegistryArtifactRequest, environment: NodeJS.ProcessEnv): Promise<ObservedNpmArtifact>;
28
+ export declare function fetchRegistryArtifact(request: RegistryArtifactRequest & {
29
+ expectedIntegrity?: string;
30
+ }, environment: NodeJS.ProcessEnv): Promise<FetchedRegistryArtifact>;
31
+ export interface LocalHttpsRegistry {
32
+ origin: string;
33
+ close: () => Promise<void>;
34
+ }
35
+ export interface RegistryRequestView {
36
+ method: string;
37
+ path: string;
38
+ authorization: string | undefined;
39
+ }
40
+ export declare function startLocalHttpsRegistry(options: {
41
+ key: string;
42
+ cert: string;
43
+ handle: (request: RegistryRequestView) => {
44
+ status: number;
45
+ bytes?: Buffer;
46
+ contentType?: string;
47
+ };
48
+ }): Promise<LocalHttpsRegistry>;
49
+ export {};
50
+ //# sourceMappingURL=registry-fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-fetch.d.ts","sourceRoot":"","sources":["../src/registry-fetch.ts"],"names":[],"mappings":"AAMA,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;IACxB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CAClB;AAID,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAClE,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,eAAe,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAqKD,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,uBAAuB,EAC/E,WAAW,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAI9D;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,uBAAuB,GAAG;IAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3G,WAAW,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAWlE;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC;AAID,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACrD,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACnG,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6B9B"}