@serve.zone/interfaces 27.3.1 → 27.4.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.
@@ -0,0 +1,408 @@
1
+ import { deepFreezeValue } from './private/canonicaljson.js';
2
+ const oneSha = '1'.repeat(64);
3
+ const twoSha = '2'.repeat(64);
4
+ const stateA = `hmac-sha256:${'a'.repeat(64)}`;
5
+ const stateB = `hmac-sha256:${'b'.repeat(64)}`;
6
+ const sourceFile = {
7
+ format: 'smartdb.database.export.v1',
8
+ databaseName: 'cloudly',
9
+ byteLength: 153,
10
+ sha256: 'df3f7c55318a807851916057ba5fb410b87856b0821aa16140343274aee5e734',
11
+ lineFeedTerminator: 'single-lf',
12
+ };
13
+ const transformedCoreFile = {
14
+ ...sourceFile,
15
+ sha256: '90a65ce8addfe673454d542f842b2551ff322c6f618c89603a2cedd374b5e958',
16
+ };
17
+ const completeOutputFile = {
18
+ ...sourceFile,
19
+ byteLength: 4249,
20
+ sha256: '9321522806fa2957c169940990a4bb7072cec52fa65243eb5b4b570f9dbe9677',
21
+ };
22
+ const counts = {
23
+ operationCount: 1,
24
+ routeClaimsStabilized: 1,
25
+ routeClaimsRemoved: 0,
26
+ resourceClaimsRemoved: 1,
27
+ };
28
+ const classificationCounts = {
29
+ 'image-recorded-not-current': 1,
30
+ 'image-recorded-current-failed': 0,
31
+ 'rolling-out-current-failed': 0,
32
+ 'rolling-out-superseded': 0,
33
+ };
34
+ const plan = {
35
+ schemaVersion: 1,
36
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-plan',
37
+ operationId: 'offline-settlement-operation-1',
38
+ settlementId: 'offline-settlement-1',
39
+ sourceFile,
40
+ effectiveAt: 1_700_000_100_000,
41
+ sourceStateHmac: stateA,
42
+ finalStateHmac: stateB,
43
+ sourceCensus: {
44
+ operations: 3,
45
+ services: 2,
46
+ images: 2,
47
+ releases: 2,
48
+ rolloutOperations: 1,
49
+ routeClaims: 1,
50
+ resourceClaims: 1,
51
+ },
52
+ entries: [{
53
+ operationId: 'deployment-operation-1',
54
+ serviceId: 'service-cloudly',
55
+ sourceRevision: 4,
56
+ sourceState: 'image-recorded',
57
+ classification: 'image-recorded-not-current',
58
+ finalRevision: 7,
59
+ sourceDocumentHmac: `hmac-sha256:${'c'.repeat(64)}`,
60
+ finalDocumentHmac: `hmac-sha256:${'d'.repeat(64)}`,
61
+ routeClaimsStabilized: 1,
62
+ routeClaimsRemoved: 0,
63
+ resourceClaimsRemoved: 1,
64
+ }],
65
+ counts,
66
+ classificationCounts,
67
+ };
68
+ const sourceAuthority = {
69
+ schemaVersion: 1,
70
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-source-authority',
71
+ role: 'source-rehearsal',
72
+ operationId: plan.operationId,
73
+ settlementId: plan.settlementId,
74
+ authorityId: 'offline-source-authority-1',
75
+ keyId: 'offline-source-key-1',
76
+ keyVersion: 1,
77
+ issuedAt: 1_700_000_000_000,
78
+ expiresAt: 1_700_003_600_000,
79
+ sourceFile,
80
+ approvedSourceBackup: {
81
+ backupId: 'backup-cloudly-approved-1',
82
+ sourceServiceId: 'service-cloudly',
83
+ snapshotId: 'snapshot-cloudly-approved-1',
84
+ backupReceiptSha256: oneSha,
85
+ },
86
+ planSha256: 'cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211',
87
+ rehearsalRequestSha256: twoSha,
88
+ };
89
+ const sourceReference = {
90
+ schemaVersion: 1,
91
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-authority-reference',
92
+ role: 'source-rehearsal',
93
+ operationId: plan.operationId,
94
+ settlementId: plan.settlementId,
95
+ authorityId: sourceAuthority.authorityId,
96
+ keyId: sourceAuthority.keyId,
97
+ keyVersion: 1,
98
+ authorityMetadataSha256: 'd2a474d5525d8e8b0d2c34ab86132de0f0806bc8f7f32e38a588fb4ef19be672',
99
+ };
100
+ const rehearsalAttestation = {
101
+ schemaVersion: 1,
102
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-rehearsal-attestation',
103
+ sourceAuthority: sourceReference,
104
+ plan,
105
+ planSha256: sourceAuthority.planSha256,
106
+ rehearsalRequestSha256: sourceAuthority.rehearsalRequestSha256,
107
+ scratchAllocation: {
108
+ purpose: 'scratch-rehearsal',
109
+ rehearsalId: 'offline-rehearsal-1',
110
+ allocationId: '3'.repeat(64),
111
+ generation: 2,
112
+ bindingSha256: '4'.repeat(64),
113
+ receiptSha256: '5'.repeat(64),
114
+ },
115
+ outcome: 'transform-required',
116
+ observedFinalStateHmac: plan.finalStateHmac,
117
+ observedCounts: counts,
118
+ observedClassificationCounts: classificationCounts,
119
+ completedAt: 1_700_000_200_000,
120
+ payloadSha256: 'e0608cd3d32ffad30e5e6f0081f9b4f291721466d73ce10b4d67bd6af3f8cbd0',
121
+ mac: 'ZggVBSaNWSi9yHtkh7RT-9vpl1_k4AEDSXUeTL97klQ',
122
+ };
123
+ const productionTransformAuthority = {
124
+ schemaVersion: 1,
125
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-production-transform-authority',
126
+ role: 'production-transform',
127
+ operationId: plan.operationId,
128
+ settlementId: plan.settlementId,
129
+ authorityId: 'offline-production-transform-authority-1',
130
+ keyId: 'offline-production-transform-key-1',
131
+ keyVersion: 1,
132
+ issuedAt: 1_700_000_200_001,
133
+ expiresAt: 1_700_003_600_000,
134
+ sourceAuthority: sourceReference,
135
+ authenticatedRehearsalAttestationSha256: '52ef3f14f1b49d0deecc106084d9a9738452a71b6814eccc276768915895dabb',
136
+ };
137
+ const productionReference = {
138
+ schemaVersion: 1,
139
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-authority-reference',
140
+ role: 'production-transform',
141
+ operationId: plan.operationId,
142
+ settlementId: plan.settlementId,
143
+ authorityId: productionTransformAuthority.authorityId,
144
+ keyId: productionTransformAuthority.keyId,
145
+ keyVersion: 1,
146
+ authorityMetadataSha256: 'e908f529a2b690ee1bdc543a41aa817923293f4fd6020e6dbdba3bd1ba06afc3',
147
+ };
148
+ const transformAuthorization = {
149
+ schemaVersion: 1,
150
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-production-transform-authorization',
151
+ authority: productionReference,
152
+ sourceAuthority: sourceReference,
153
+ attemptId: 'offline-transform-attempt-1',
154
+ authenticatedRehearsalAttestationSha256: productionTransformAuthority.authenticatedRehearsalAttestationSha256,
155
+ planSha256: sourceAuthority.planSha256,
156
+ requestSha256: '6'.repeat(64),
157
+ requestedAt: 1_700_000_200_002,
158
+ authorizedAt: 1_700_000_200_003,
159
+ payloadSha256: '4b26aab4acbcab2906f4dee3933993557f2d5041cce054b85218095ea36c9553',
160
+ mac: 'zUsdWtWP-OCA5dxxiSgRE4SVyqlPgC45vIP2hRO9l5k',
161
+ };
162
+ const attemptJournal = {
163
+ _id: 'offline-export-attempt-697623f8e74a47f3877ecb8d8498990177790714',
164
+ schemaVersion: 1,
165
+ kind: 'cloudly_legacy_deployment_settlement_export_attempt_v1',
166
+ purpose: 'production-transform',
167
+ operationId: plan.operationId,
168
+ settlementId: plan.settlementId,
169
+ attemptId: transformAuthorization.attemptId,
170
+ sourceAuthority: sourceReference,
171
+ productionTransformAuthority: productionReference,
172
+ authenticatedRehearsalAttestationSha256: productionTransformAuthority.authenticatedRehearsalAttestationSha256,
173
+ transformAuthorizationSha256: '623ef0de5347ba67bae37669aca258037bde3646c8d61212b49aa69a2ea10704',
174
+ planSha256: sourceAuthority.planSha256,
175
+ requestSha256: transformAuthorization.requestSha256,
176
+ sourceFile,
177
+ transformedCoreFile,
178
+ sourceStateHmac: plan.sourceStateHmac,
179
+ finalStateHmac: plan.finalStateHmac,
180
+ outcome: 'transformed',
181
+ counts,
182
+ classificationCounts,
183
+ completedAt: 1_700_000_200_004,
184
+ mac: 'ie6_srw9DT1pKeY-89EByxuTB77pJnY6wtZ2oetoUn8',
185
+ };
186
+ const completeOutputReceipt = {
187
+ schemaVersion: 1,
188
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-complete-output-receipt',
189
+ authority: productionReference,
190
+ sourceAuthority: sourceReference,
191
+ operationId: plan.operationId,
192
+ settlementId: plan.settlementId,
193
+ attemptId: transformAuthorization.attemptId,
194
+ journalSha256: '20db40edc61104b0d6d68fceaf6ec05c1df48da5dacb63f7b08040cd763c6e8c',
195
+ transformedCoreFile,
196
+ completeOutputFile,
197
+ journalGrowthBytes: completeOutputFile.byteLength - transformedCoreFile.byteLength,
198
+ completedAt: 1_700_000_200_005,
199
+ payloadSha256: 'd4cd42199c816bb48a706be8c3d2a9e5b9ba2a1326b3ae092b1d97bf7335f407',
200
+ mac: 'ADs3Fb6Zrjl91eJroSX6XXKxbbvqWWgq-lsr9VdeRr8',
201
+ };
202
+ const result = {
203
+ schemaVersion: 1,
204
+ kind: 'cloudly-legacy-deployment-settlement-offline-export-transform-result',
205
+ status: 'completed',
206
+ operationId: plan.operationId,
207
+ settlementId: plan.settlementId,
208
+ attemptId: transformAuthorization.attemptId,
209
+ sourceAuthority: sourceReference,
210
+ productionTransformAuthority: productionReference,
211
+ planSha256: sourceAuthority.planSha256,
212
+ requestSha256: transformAuthorization.requestSha256,
213
+ completeOutputReceiptSha256: '47eea07082fa86f8bac5af82397321cffc55924f4487866a7b147d9c256e39f5',
214
+ outcome: 'transformed',
215
+ counts,
216
+ classificationCounts,
217
+ completedAt: completeOutputReceipt.completedAt,
218
+ };
219
+ const planCanonical = '{"classificationCounts":{"image-recorded-current-failed":0,"image-recorded-not-current":1,"rolling-out-current-failed":0,"rolling-out-superseded":0},'
220
+ + '"counts":{"operationCount":1,"resourceClaimsRemoved":1,"routeClaimsRemoved":0,"routeClaimsStabilized":1},'
221
+ + '"effectiveAt":1700000100000,"entries":[{"classification":"image-recorded-not-current",'
222
+ + '"finalDocumentHmac":"hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",'
223
+ + '"finalRevision":7,"operationId":"deployment-operation-1","resourceClaimsRemoved":1,'
224
+ + '"routeClaimsRemoved":0,"routeClaimsStabilized":1,"serviceId":"service-cloudly",'
225
+ + '"sourceDocumentHmac":"hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",'
226
+ + '"sourceRevision":4,"sourceState":"image-recorded"}],'
227
+ + '"finalStateHmac":"hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",'
228
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-plan",'
229
+ + '"operationId":"offline-settlement-operation-1","schemaVersion":1,'
230
+ + '"settlementId":"offline-settlement-1","sourceCensus":{"images":2,"operations":3,'
231
+ + '"releases":2,"resourceClaims":1,"rolloutOperations":1,"routeClaims":1,"services":2},'
232
+ + '"sourceFile":{"byteLength":153,"databaseName":"cloudly",'
233
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
234
+ + '"sha256":"df3f7c55318a807851916057ba5fb410b87856b0821aa16140343274aee5e734"},'
235
+ + '"sourceStateHmac":"hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}';
236
+ const sourceReferenceCanonical = '{"authorityId":"offline-source-authority-1",'
237
+ + '"authorityMetadataSha256":"d2a474d5525d8e8b0d2c34ab86132de0f0806bc8f7f32e38a588fb4ef19be672",'
238
+ + '"keyId":"offline-source-key-1","keyVersion":1,'
239
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-authority-reference",'
240
+ + '"operationId":"offline-settlement-operation-1","role":"source-rehearsal",'
241
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1"}';
242
+ const productionReferenceCanonical = '{"authorityId":"offline-production-transform-authority-1",'
243
+ + '"authorityMetadataSha256":"e908f529a2b690ee1bdc543a41aa817923293f4fd6020e6dbdba3bd1ba06afc3",'
244
+ + '"keyId":"offline-production-transform-key-1","keyVersion":1,'
245
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-authority-reference",'
246
+ + '"operationId":"offline-settlement-operation-1","role":"production-transform",'
247
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1"}';
248
+ const sourceAuthorityCanonical = '{"approvedSourceBackup":{"backupId":"backup-cloudly-approved-1",'
249
+ + '"backupReceiptSha256":"1111111111111111111111111111111111111111111111111111111111111111",'
250
+ + '"snapshotId":"snapshot-cloudly-approved-1","sourceServiceId":"service-cloudly"},'
251
+ + '"authorityId":"offline-source-authority-1","expiresAt":1700003600000,'
252
+ + '"issuedAt":1700000000000,"keyId":"offline-source-key-1","keyVersion":1,'
253
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-source-authority",'
254
+ + '"operationId":"offline-settlement-operation-1",'
255
+ + '"planSha256":"cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211",'
256
+ + '"rehearsalRequestSha256":"2222222222222222222222222222222222222222222222222222222222222222",'
257
+ + '"role":"source-rehearsal","schemaVersion":1,"settlementId":"offline-settlement-1",'
258
+ + '"sourceFile":{"byteLength":153,"databaseName":"cloudly",'
259
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
260
+ + '"sha256":"df3f7c55318a807851916057ba5fb410b87856b0821aa16140343274aee5e734"}}';
261
+ const rehearsalAttestationCanonical = '{"completedAt":1700000200000,'
262
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-rehearsal-attestation",'
263
+ + '"mac":"ZggVBSaNWSi9yHtkh7RT-9vpl1_k4AEDSXUeTL97klQ",'
264
+ + '"observedClassificationCounts":{"image-recorded-current-failed":0,'
265
+ + '"image-recorded-not-current":1,"rolling-out-current-failed":0,"rolling-out-superseded":0},'
266
+ + '"observedCounts":{"operationCount":1,"resourceClaimsRemoved":1,"routeClaimsRemoved":0,'
267
+ + '"routeClaimsStabilized":1},'
268
+ + '"observedFinalStateHmac":"hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",'
269
+ + '"outcome":"transform-required",'
270
+ + '"payloadSha256":"e0608cd3d32ffad30e5e6f0081f9b4f291721466d73ce10b4d67bd6af3f8cbd0",'
271
+ + `"plan":${planCanonical},`
272
+ + '"planSha256":"cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211",'
273
+ + '"rehearsalRequestSha256":"2222222222222222222222222222222222222222222222222222222222222222",'
274
+ + '"schemaVersion":1,"scratchAllocation":{'
275
+ + '"allocationId":"3333333333333333333333333333333333333333333333333333333333333333",'
276
+ + '"bindingSha256":"4444444444444444444444444444444444444444444444444444444444444444",'
277
+ + '"generation":2,"purpose":"scratch-rehearsal",'
278
+ + '"receiptSha256":"5555555555555555555555555555555555555555555555555555555555555555",'
279
+ + '"rehearsalId":"offline-rehearsal-1"},'
280
+ + `"sourceAuthority":${sourceReferenceCanonical}}`;
281
+ const productionTransformAuthorityCanonical = '{"authenticatedRehearsalAttestationSha256":'
282
+ + '"52ef3f14f1b49d0deecc106084d9a9738452a71b6814eccc276768915895dabb",'
283
+ + '"authorityId":"offline-production-transform-authority-1",'
284
+ + '"expiresAt":1700003600000,"issuedAt":1700000200001,'
285
+ + '"keyId":"offline-production-transform-key-1","keyVersion":1,'
286
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-production-transform-authority",'
287
+ + '"operationId":"offline-settlement-operation-1","role":"production-transform",'
288
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1",'
289
+ + `"sourceAuthority":${sourceReferenceCanonical}}`;
290
+ const transformAuthorizationCanonical = '{"attemptId":"offline-transform-attempt-1",'
291
+ + '"authenticatedRehearsalAttestationSha256":'
292
+ + '"52ef3f14f1b49d0deecc106084d9a9738452a71b6814eccc276768915895dabb",'
293
+ + `"authority":${productionReferenceCanonical},`
294
+ + '"authorizedAt":1700000200003,'
295
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-production-transform-authorization",'
296
+ + '"mac":"zUsdWtWP-OCA5dxxiSgRE4SVyqlPgC45vIP2hRO9l5k",'
297
+ + '"payloadSha256":"4b26aab4acbcab2906f4dee3933993557f2d5041cce054b85218095ea36c9553",'
298
+ + '"planSha256":"cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211",'
299
+ + '"requestSha256":"6666666666666666666666666666666666666666666666666666666666666666",'
300
+ + '"requestedAt":1700000200002,"schemaVersion":1,'
301
+ + `"sourceAuthority":${sourceReferenceCanonical}}`;
302
+ const attemptJournalCanonical = '{"_id":"offline-export-attempt-697623f8e74a47f3877ecb8d8498990177790714",'
303
+ + '"attemptId":"offline-transform-attempt-1",'
304
+ + '"authenticatedRehearsalAttestationSha256":'
305
+ + '"52ef3f14f1b49d0deecc106084d9a9738452a71b6814eccc276768915895dabb",'
306
+ + '"classificationCounts":{"image-recorded-current-failed":0,"image-recorded-not-current":1,'
307
+ + '"rolling-out-current-failed":0,"rolling-out-superseded":0},'
308
+ + '"completedAt":1700000200004,"counts":{"operationCount":1,"resourceClaimsRemoved":1,'
309
+ + '"routeClaimsRemoved":0,"routeClaimsStabilized":1},'
310
+ + '"finalStateHmac":"hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",'
311
+ + '"kind":"cloudly_legacy_deployment_settlement_export_attempt_v1",'
312
+ + '"mac":"ie6_srw9DT1pKeY-89EByxuTB77pJnY6wtZ2oetoUn8",'
313
+ + '"operationId":"offline-settlement-operation-1","outcome":"transformed",'
314
+ + '"planSha256":"cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211",'
315
+ + `"productionTransformAuthority":${productionReferenceCanonical},`
316
+ + '"purpose":"production-transform",'
317
+ + '"requestSha256":"6666666666666666666666666666666666666666666666666666666666666666",'
318
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1",'
319
+ + `"sourceAuthority":${sourceReferenceCanonical},`
320
+ + '"sourceFile":{"byteLength":153,"databaseName":"cloudly",'
321
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
322
+ + '"sha256":"df3f7c55318a807851916057ba5fb410b87856b0821aa16140343274aee5e734"},'
323
+ + '"sourceStateHmac":"hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",'
324
+ + '"transformAuthorizationSha256":'
325
+ + '"623ef0de5347ba67bae37669aca258037bde3646c8d61212b49aa69a2ea10704",'
326
+ + '"transformedCoreFile":{"byteLength":153,"databaseName":"cloudly",'
327
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
328
+ + '"sha256":"90a65ce8addfe673454d542f842b2551ff322c6f618c89603a2cedd374b5e958"}}';
329
+ const completeOutputReceiptCanonical = '{"attemptId":"offline-transform-attempt-1",'
330
+ + `"authority":${productionReferenceCanonical},`
331
+ + '"completeOutputFile":{"byteLength":4249,"databaseName":"cloudly",'
332
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
333
+ + '"sha256":"9321522806fa2957c169940990a4bb7072cec52fa65243eb5b4b570f9dbe9677"},'
334
+ + '"completedAt":1700000200005,"journalGrowthBytes":4096,'
335
+ + '"journalSha256":"20db40edc61104b0d6d68fceaf6ec05c1df48da5dacb63f7b08040cd763c6e8c",'
336
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-complete-output-receipt",'
337
+ + '"mac":"ADs3Fb6Zrjl91eJroSX6XXKxbbvqWWgq-lsr9VdeRr8",'
338
+ + '"operationId":"offline-settlement-operation-1",'
339
+ + '"payloadSha256":"d4cd42199c816bb48a706be8c3d2a9e5b9ba2a1326b3ae092b1d97bf7335f407",'
340
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1",'
341
+ + `"sourceAuthority":${sourceReferenceCanonical},`
342
+ + '"transformedCoreFile":{"byteLength":153,"databaseName":"cloudly",'
343
+ + '"format":"smartdb.database.export.v1","lineFeedTerminator":"single-lf",'
344
+ + '"sha256":"90a65ce8addfe673454d542f842b2551ff322c6f618c89603a2cedd374b5e958"}}';
345
+ const resultCanonical = '{"attemptId":"offline-transform-attempt-1",'
346
+ + '"classificationCounts":{"image-recorded-current-failed":0,"image-recorded-not-current":1,'
347
+ + '"rolling-out-current-failed":0,"rolling-out-superseded":0},'
348
+ + '"completeOutputReceiptSha256":'
349
+ + '"47eea07082fa86f8bac5af82397321cffc55924f4487866a7b147d9c256e39f5",'
350
+ + '"completedAt":1700000200005,"counts":{"operationCount":1,"resourceClaimsRemoved":1,'
351
+ + '"routeClaimsRemoved":0,"routeClaimsStabilized":1},'
352
+ + '"kind":"cloudly-legacy-deployment-settlement-offline-export-transform-result",'
353
+ + '"operationId":"offline-settlement-operation-1","outcome":"transformed",'
354
+ + '"planSha256":"cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211",'
355
+ + `"productionTransformAuthority":${productionReferenceCanonical},`
356
+ + '"requestSha256":"6666666666666666666666666666666666666666666666666666666666666666",'
357
+ + '"schemaVersion":1,"settlementId":"offline-settlement-1",'
358
+ + `"sourceAuthority":${sourceReferenceCanonical},"status":"completed"}`;
359
+ export const cloudlyLegacyDeploymentSettlementOfflineExportGoldenVectors = deepFreezeValue({
360
+ version: 1,
361
+ sourceAuthority: {
362
+ input: sourceAuthority,
363
+ reference: sourceReference,
364
+ canonical: sourceAuthorityCanonical,
365
+ sha256: 'd2a474d5525d8e8b0d2c34ab86132de0f0806bc8f7f32e38a588fb4ef19be672',
366
+ },
367
+ plan: {
368
+ input: plan,
369
+ canonical: planCanonical,
370
+ sha256: 'cc42fb32c5d39200abc02a5c660bd8bca83d6125e5804c567194e867f37e3211',
371
+ },
372
+ rehearsalAttestation: {
373
+ input: rehearsalAttestation,
374
+ canonical: rehearsalAttestationCanonical,
375
+ sha256: '52ef3f14f1b49d0deecc106084d9a9738452a71b6814eccc276768915895dabb',
376
+ hmac: 'ZggVBSaNWSi9yHtkh7RT-9vpl1_k4AEDSXUeTL97klQ',
377
+ },
378
+ productionTransformAuthority: {
379
+ input: productionTransformAuthority,
380
+ reference: productionReference,
381
+ canonical: productionTransformAuthorityCanonical,
382
+ sha256: 'e908f529a2b690ee1bdc543a41aa817923293f4fd6020e6dbdba3bd1ba06afc3',
383
+ },
384
+ transformAuthorization: {
385
+ input: transformAuthorization,
386
+ canonical: transformAuthorizationCanonical,
387
+ sha256: '623ef0de5347ba67bae37669aca258037bde3646c8d61212b49aa69a2ea10704',
388
+ hmac: 'zUsdWtWP-OCA5dxxiSgRE4SVyqlPgC45vIP2hRO9l5k',
389
+ },
390
+ attemptJournal: {
391
+ input: attemptJournal,
392
+ canonical: attemptJournalCanonical,
393
+ sha256: '20db40edc61104b0d6d68fceaf6ec05c1df48da5dacb63f7b08040cd763c6e8c',
394
+ hmac: 'ie6_srw9DT1pKeY-89EByxuTB77pJnY6wtZ2oetoUn8',
395
+ },
396
+ completeOutputReceipt: {
397
+ input: completeOutputReceipt,
398
+ canonical: completeOutputReceiptCanonical,
399
+ sha256: '47eea07082fa86f8bac5af82397321cffc55924f4487866a7b147d9c256e39f5',
400
+ hmac: 'ADs3Fb6Zrjl91eJroSX6XXKxbbvqWWgq-lsr9VdeRr8',
401
+ },
402
+ result: {
403
+ input: result,
404
+ canonical: resultCanonical,
405
+ sha256: '014686d7f47b1d7361d895c503350ff18dd8218c5d78a047374fb09034591962',
406
+ },
407
+ });
408
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS5jbG91ZGx5bGVnYWN5ZGVwbG95bWVudHNldHRsZW1lbnQub2ZmbGluZWV4cG9ydC5nb2xkZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9ydW50aW1lLmNsb3VkbHlsZWdhY3lkZXBsb3ltZW50c2V0dGxlbWVudC5vZmZsaW5lZXhwb3J0LmdvbGRlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUEwRDdELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDOUIsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM5QixNQUFNLE1BQU0sR0FBRyxlQUFlLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQVcsQ0FBQztBQUN4RCxNQUFNLE1BQU0sR0FBRyxlQUFlLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQVcsQ0FBQztBQUV4RCxNQUFNLFVBQVUsR0FBRztJQUNqQixNQUFNLEVBQUUsNEJBQXFDO0lBQzdDLFlBQVksRUFBRSxTQUFTO0lBQ3ZCLFVBQVUsRUFBRSxHQUFHO0lBQ2YsTUFBTSxFQUFFLGtFQUFrRTtJQUMxRSxrQkFBa0IsRUFBRSxXQUFvQjtDQUN6QyxDQUFDO0FBQ0YsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixHQUFHLFVBQVU7SUFDYixNQUFNLEVBQUUsa0VBQWtFO0NBQzNFLENBQUM7QUFDRixNQUFNLGtCQUFrQixHQUFHO0lBQ3pCLEdBQUcsVUFBVTtJQUNiLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE1BQU0sRUFBRSxrRUFBa0U7Q0FDM0UsQ0FBQztBQUNGLE1BQU0sTUFBTSxHQUFHO0lBQ2IsY0FBYyxFQUFFLENBQUM7SUFDakIscUJBQXFCLEVBQUUsQ0FBQztJQUN4QixrQkFBa0IsRUFBRSxDQUFDO0lBQ3JCLHFC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