@tokenoftrust/storefront-runner 2.4.48 → 2.4.49

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,847 @@
1
+ {
2
+ "schema": "scrappy-orders-v1",
3
+ "digest": "093bd76dd114a73b950f59cd319999f60835f363ea6bb85511da478be187496e",
4
+ "scheduler": "tenant-pipeline-alarm",
5
+ "measuredFoxyListKeys": [
6
+ "orders",
7
+ "limit",
8
+ "offset",
9
+ "total",
10
+ "hasMore"
11
+ ],
12
+ "measuredFoxyOrderKeys": [
13
+ "source",
14
+ "externalId",
15
+ "externalNumber",
16
+ "orderedAt",
17
+ "currency",
18
+ "status",
19
+ "customerEmail",
20
+ "customerName",
21
+ "subtotal",
22
+ "shipping",
23
+ "tax",
24
+ "total",
25
+ "shippingAddress",
26
+ "billingAddress",
27
+ "paymentRef",
28
+ "paymentMetadata",
29
+ "lineItems",
30
+ "exciseTax"
31
+ ],
32
+ "adminListKeys": [
33
+ "orders",
34
+ "page"
35
+ ],
36
+ "orders": [
37
+ {
38
+ "id": "synthetic-order-1",
39
+ "placedAt": "2026-10-15T15:00:00.000Z",
40
+ "customer": {
41
+ "id": "synthetic-customer-1"
42
+ },
43
+ "currency": "USD",
44
+ "payment": "authorized",
45
+ "compliance": "UNKNOWN",
46
+ "stock": "reserved",
47
+ "fulfillment": "held",
48
+ "label": "none",
49
+ "totals": {
50
+ "subtotalMinor": 6248,
51
+ "shippingMinor": 500,
52
+ "taxMinor": 262,
53
+ "totalMinor": 7010
54
+ },
55
+ "verificationDetail": {
56
+ "verification": "UNKNOWN",
57
+ "tax": "stale",
58
+ "risk": "unreadable",
59
+ "stock": "UNKNOWN"
60
+ }
61
+ },
62
+ {
63
+ "id": "synthetic-order-2",
64
+ "placedAt": "2026-10-15T16:00:00.000Z",
65
+ "customer": {
66
+ "id": "synthetic-customer-2"
67
+ },
68
+ "currency": "USD",
69
+ "payment": "captured",
70
+ "compliance": "fresh",
71
+ "stock": "confirmed",
72
+ "fulfillment": "ready",
73
+ "label": "purchased",
74
+ "totals": {
75
+ "subtotalMinor": 4000,
76
+ "shippingMinor": 0,
77
+ "taxMinor": 0,
78
+ "totalMinor": 4000
79
+ },
80
+ "verificationDetail": {
81
+ "verification": "fresh",
82
+ "tax": "fresh",
83
+ "risk": "fresh",
84
+ "stock": "fresh"
85
+ }
86
+ }
87
+ ],
88
+ "page": {
89
+ "limit": 1,
90
+ "cursor": null,
91
+ "nextCursor": "MjAyNi0xMC0xNVQxNjowMDowMC4wMDBaCnN5bnRoZXRpYy1vcmRlci0y",
92
+ "total": 2
93
+ },
94
+ "events": [
95
+ {
96
+ "eventVersion": 1,
97
+ "type": "order.observed",
98
+ "orderId": "synthetic-order-1",
99
+ "placedAt": "2026-10-15T15:00:00.000Z",
100
+ "currency": "USD",
101
+ "payment": "authorized",
102
+ "compliance": "UNKNOWN",
103
+ "stock": "reserved",
104
+ "fulfillment": "held",
105
+ "label": "none",
106
+ "totals": {
107
+ "subtotalMinor": 6248,
108
+ "shippingMinor": 500,
109
+ "taxMinor": 262,
110
+ "totalMinor": 7010
111
+ },
112
+ "verificationDetail": {
113
+ "verification": "UNKNOWN",
114
+ "tax": "stale",
115
+ "risk": "unreadable",
116
+ "stock": "UNKNOWN"
117
+ }
118
+ },
119
+ {
120
+ "eventVersion": 1,
121
+ "type": "order.observed",
122
+ "orderId": "synthetic-order-2",
123
+ "placedAt": "2026-10-15T16:00:00.000Z",
124
+ "currency": "USD",
125
+ "payment": "captured",
126
+ "compliance": "fresh",
127
+ "stock": "confirmed",
128
+ "fulfillment": "ready",
129
+ "label": "purchased",
130
+ "totals": {
131
+ "subtotalMinor": 4000,
132
+ "shippingMinor": 0,
133
+ "taxMinor": 0,
134
+ "totalMinor": 4000
135
+ },
136
+ "verificationDetail": {
137
+ "verification": "fresh",
138
+ "tax": "fresh",
139
+ "risk": "fresh",
140
+ "stock": "fresh"
141
+ }
142
+ }
143
+ ],
144
+ "actors": [
145
+ {
146
+ "name": "owner",
147
+ "role": "owner",
148
+ "tenantId": "synthetic-tenant",
149
+ "stage": "preview",
150
+ "address": "permit"
151
+ },
152
+ {
153
+ "name": "other-tenant",
154
+ "role": "owner",
155
+ "tenantId": "synthetic-tenant-b",
156
+ "stage": "preview",
157
+ "address": "deny"
158
+ },
159
+ {
160
+ "name": "wrong-stage",
161
+ "role": "owner",
162
+ "tenantId": "synthetic-tenant",
163
+ "stage": "publication",
164
+ "address": "deny"
165
+ },
166
+ {
167
+ "name": "caller",
168
+ "role": "caller",
169
+ "tenantId": "synthetic-tenant",
170
+ "stage": "preview",
171
+ "address": "deny"
172
+ },
173
+ {
174
+ "name": "denied",
175
+ "role": "denied",
176
+ "tenantId": "synthetic-tenant",
177
+ "stage": "preview",
178
+ "address": "deny"
179
+ }
180
+ ],
181
+ "resource": {
182
+ "tenantId": "synthetic-tenant",
183
+ "stage": "preview"
184
+ },
185
+ "idempotency": {
186
+ "tenantId": "synthetic-tenant",
187
+ "stage": "preview",
188
+ "source": "foxycart",
189
+ "sourceEventId": "evt-1"
190
+ },
191
+ "finalCart": {
192
+ "tenantId": "synthetic-tenant",
193
+ "stage": "preview",
194
+ "currency": "USD",
195
+ "lines": [
196
+ {
197
+ "sku": "sku-1",
198
+ "quantity": 1,
199
+ "unitMinor": 4000
200
+ }
201
+ ],
202
+ "destinationDigest": "dest-synthetic",
203
+ "verificationExpiresAt": "2026-10-15T16:05:00.000Z",
204
+ "taxExpiresAt": "2026-10-15T16:05:00.000Z",
205
+ "now": "2026-10-15T16:00:00.000Z",
206
+ "expiresAt": "2026-10-15T16:05:00.000Z"
207
+ },
208
+ "tracking": {
209
+ "allowedHosts": [
210
+ "tracking.example"
211
+ ],
212
+ "admit": "https://tracking.example/label/synthetic",
213
+ "denyHost": "https://evil.example/label/synthetic",
214
+ "denyPlaintext": "http://tracking.example/label/synthetic"
215
+ },
216
+ "s2s": {
217
+ "scheme": "asymmetric-jwks",
218
+ "trustedIssuers": [
219
+ "https://foxycart-test.tokenoftrust.com"
220
+ ],
221
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
222
+ "activeKids": [
223
+ "caller-2026-10-b"
224
+ ],
225
+ "retiredKids": [
226
+ "caller-2026-10-a"
227
+ ],
228
+ "now": "2026-10-15T00:00:00.000Z",
229
+ "tenantId": "synthetic-tenant",
230
+ "stage": "preview",
231
+ "jwks": {
232
+ "keys": [
233
+ {
234
+ "kty": "OKP",
235
+ "crv": "Ed25519",
236
+ "kid": "caller-2026-10-a",
237
+ "use": "sig",
238
+ "alg": "EdDSA",
239
+ "status": "retired",
240
+ "x": "11qYAYKxCrfVS_7TyWQHOg7hcvPapiMlrwIaaPcHURo"
241
+ },
242
+ {
243
+ "kty": "OKP",
244
+ "crv": "Ed25519",
245
+ "kid": "caller-2026-10-b",
246
+ "use": "sig",
247
+ "alg": "EdDSA",
248
+ "status": "active",
249
+ "x": "11qYAYKxCrfVS_7TyWQHOg7hcvPapiMlrwIaaPcHURo"
250
+ }
251
+ ]
252
+ },
253
+ "tokens": [
254
+ {
255
+ "name": "accepted",
256
+ "scheme": "asymmetric-jwks",
257
+ "signatureValid": true,
258
+ "kid": "caller-2026-10-b",
259
+ "issuer": "https://foxycart-test.tokenoftrust.com",
260
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
261
+ "expiresAt": "2026-10-15T00:05:00.000Z",
262
+ "jti": "jti-accepted",
263
+ "tenantId": "synthetic-tenant",
264
+ "stage": "preview",
265
+ "expect": "ok"
266
+ },
267
+ {
268
+ "name": "retired-kid",
269
+ "scheme": "asymmetric-jwks",
270
+ "signatureValid": true,
271
+ "kid": "caller-2026-10-a",
272
+ "issuer": "https://foxycart-test.tokenoftrust.com",
273
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
274
+ "expiresAt": "2026-10-15T00:05:00.000Z",
275
+ "jti": "jti-retired",
276
+ "tenantId": "synthetic-tenant",
277
+ "stage": "preview",
278
+ "expect": "kid"
279
+ },
280
+ {
281
+ "name": "wrong-issuer",
282
+ "scheme": "asymmetric-jwks",
283
+ "signatureValid": true,
284
+ "kid": "caller-2026-10-b",
285
+ "issuer": "https://untrusted.example",
286
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
287
+ "expiresAt": "2026-10-15T00:05:00.000Z",
288
+ "jti": "jti-issuer",
289
+ "tenantId": "synthetic-tenant",
290
+ "stage": "preview",
291
+ "expect": "issuer"
292
+ },
293
+ {
294
+ "name": "wrong-audience",
295
+ "scheme": "asymmetric-jwks",
296
+ "signatureValid": true,
297
+ "kid": "caller-2026-10-b",
298
+ "issuer": "https://foxycart-test.tokenoftrust.com",
299
+ "audience": "https://untrusted.example/api",
300
+ "expiresAt": "2026-10-15T00:05:00.000Z",
301
+ "jti": "jti-audience",
302
+ "tenantId": "synthetic-tenant",
303
+ "stage": "preview",
304
+ "expect": "audience"
305
+ },
306
+ {
307
+ "name": "expired",
308
+ "scheme": "asymmetric-jwks",
309
+ "signatureValid": true,
310
+ "kid": "caller-2026-10-b",
311
+ "issuer": "https://foxycart-test.tokenoftrust.com",
312
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
313
+ "expiresAt": "2026-10-14T23:00:00.000Z",
314
+ "jti": "jti-expired",
315
+ "tenantId": "synthetic-tenant",
316
+ "stage": "preview",
317
+ "expect": "expired"
318
+ },
319
+ {
320
+ "name": "long-lived",
321
+ "scheme": "asymmetric-jwks",
322
+ "signatureValid": true,
323
+ "kid": "caller-2026-10-b",
324
+ "issuer": "https://foxycart-test.tokenoftrust.com",
325
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
326
+ "expiresAt": "2026-10-16T00:00:00.000Z",
327
+ "jti": "jti-long",
328
+ "tenantId": "synthetic-tenant",
329
+ "stage": "preview",
330
+ "expect": "lifetime"
331
+ },
332
+ {
333
+ "name": "bad-signature",
334
+ "scheme": "asymmetric-jwks",
335
+ "signatureValid": false,
336
+ "kid": "caller-2026-10-b",
337
+ "issuer": "https://foxycart-test.tokenoftrust.com",
338
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
339
+ "expiresAt": "2026-10-15T00:05:00.000Z",
340
+ "jti": "jti-signature",
341
+ "tenantId": "synthetic-tenant",
342
+ "stage": "preview",
343
+ "expect": "signature"
344
+ },
345
+ {
346
+ "name": "missing-jti",
347
+ "scheme": "asymmetric-jwks",
348
+ "signatureValid": true,
349
+ "kid": "caller-2026-10-b",
350
+ "issuer": "https://foxycart-test.tokenoftrust.com",
351
+ "audience": "https://storefront.tokenoftrust.store/api/apps/internal/order-forward",
352
+ "expiresAt": "2026-10-15T00:05:00.000Z",
353
+ "jti": "",
354
+ "tenantId": "synthetic-tenant",
355
+ "stage": "preview",
356
+ "expect": "jti"
357
+ },
358
+ {
359
+ "name": "shared-secret",
360
+ "scheme": "shared-secret",
361
+ "expect": "shared-secret"
362
+ }
363
+ ]
364
+ },
365
+ "apiRoutes": [
366
+ {
367
+ "provider": "cloudflare",
368
+ "phase": "preview",
369
+ "path": "/api/apps/internal/order-forward",
370
+ "origin": "worker"
371
+ },
372
+ {
373
+ "provider": "cloudflare",
374
+ "phase": "publication",
375
+ "path": "/api/apps/internal/order-forward",
376
+ "origin": "worker"
377
+ },
378
+ {
379
+ "provider": "cloudfront",
380
+ "phase": "preview",
381
+ "path": "/api/apps/internal/order-forward",
382
+ "origin": "worker"
383
+ },
384
+ {
385
+ "provider": "cloudfront",
386
+ "phase": "publication",
387
+ "path": "/api/apps/internal/order-forward",
388
+ "origin": "worker"
389
+ },
390
+ {
391
+ "provider": "cloudflare",
392
+ "phase": "preview",
393
+ "path": "/",
394
+ "origin": "storage"
395
+ },
396
+ {
397
+ "provider": "cloudflare",
398
+ "phase": "publication",
399
+ "path": "/",
400
+ "origin": "storage"
401
+ },
402
+ {
403
+ "provider": "cloudfront",
404
+ "phase": "preview",
405
+ "path": "/",
406
+ "origin": "storage"
407
+ },
408
+ {
409
+ "provider": "cloudfront",
410
+ "phase": "publication",
411
+ "path": "/",
412
+ "origin": "storage"
413
+ },
414
+ {
415
+ "provider": "cloudflare",
416
+ "phase": "preview",
417
+ "path": "/products/sku-1",
418
+ "origin": "storage"
419
+ },
420
+ {
421
+ "provider": "cloudfront",
422
+ "phase": "publication",
423
+ "path": "/products/sku-1",
424
+ "origin": "storage"
425
+ }
426
+ ],
427
+ "decisions": [
428
+ {
429
+ "name": "unknown-verification-cannot-authorize",
430
+ "command": "authorize-final-cart",
431
+ "payment": "authorized",
432
+ "stock": "unallocated",
433
+ "fulfillment": "held",
434
+ "label": "none",
435
+ "providerOutcome": null,
436
+ "evidence": {
437
+ "verification": "UNKNOWN",
438
+ "tax": "fresh",
439
+ "risk": "fresh",
440
+ "stock": "fresh"
441
+ },
442
+ "expect": {
443
+ "admit": false,
444
+ "reason": "evidence",
445
+ "restock": false,
446
+ "releaseReservation": false,
447
+ "blindRepurchase": false
448
+ }
449
+ },
450
+ {
451
+ "name": "stale-tax-cannot-authorize",
452
+ "command": "authorize-final-cart",
453
+ "payment": "authorized",
454
+ "stock": "unallocated",
455
+ "fulfillment": "held",
456
+ "label": "none",
457
+ "providerOutcome": null,
458
+ "evidence": {
459
+ "verification": "fresh",
460
+ "tax": "stale",
461
+ "risk": "fresh",
462
+ "stock": "fresh"
463
+ },
464
+ "expect": {
465
+ "admit": false,
466
+ "reason": "evidence",
467
+ "restock": false,
468
+ "releaseReservation": false,
469
+ "blindRepurchase": false
470
+ }
471
+ },
472
+ {
473
+ "name": "unreadable-risk-cannot-authorize",
474
+ "command": "authorize-final-cart",
475
+ "payment": "authorized",
476
+ "stock": "unallocated",
477
+ "fulfillment": "held",
478
+ "label": "none",
479
+ "providerOutcome": null,
480
+ "evidence": {
481
+ "verification": "fresh",
482
+ "tax": "fresh",
483
+ "risk": "unreadable",
484
+ "stock": "fresh"
485
+ },
486
+ "expect": {
487
+ "admit": false,
488
+ "reason": "evidence",
489
+ "restock": false,
490
+ "releaseReservation": false,
491
+ "blindRepurchase": false
492
+ }
493
+ },
494
+ {
495
+ "name": "unknown-stock-evidence-cannot-authorize",
496
+ "command": "authorize-final-cart",
497
+ "payment": "authorized",
498
+ "stock": "unallocated",
499
+ "fulfillment": "held",
500
+ "label": "none",
501
+ "providerOutcome": null,
502
+ "evidence": {
503
+ "verification": "fresh",
504
+ "tax": "fresh",
505
+ "risk": "fresh",
506
+ "stock": "UNKNOWN"
507
+ },
508
+ "expect": {
509
+ "admit": false,
510
+ "reason": "evidence",
511
+ "restock": false,
512
+ "releaseReservation": false,
513
+ "blindRepurchase": false
514
+ }
515
+ },
516
+ {
517
+ "name": "unknown-stock-state-cannot-authorize",
518
+ "command": "authorize-final-cart",
519
+ "payment": "pending",
520
+ "stock": "UNKNOWN",
521
+ "fulfillment": "held",
522
+ "label": "none",
523
+ "providerOutcome": null,
524
+ "evidence": {
525
+ "verification": "fresh",
526
+ "tax": "fresh",
527
+ "risk": "fresh",
528
+ "stock": "fresh"
529
+ },
530
+ "expect": {
531
+ "admit": false,
532
+ "reason": "stock",
533
+ "restock": false,
534
+ "releaseReservation": false,
535
+ "blindRepurchase": false
536
+ }
537
+ },
538
+ {
539
+ "name": "cancelled-fulfillment-cannot-authorize",
540
+ "command": "authorize-final-cart",
541
+ "payment": "authorized",
542
+ "stock": "unallocated",
543
+ "fulfillment": "cancelled",
544
+ "label": "none",
545
+ "providerOutcome": null,
546
+ "evidence": {
547
+ "verification": "fresh",
548
+ "tax": "fresh",
549
+ "risk": "fresh",
550
+ "stock": "fresh"
551
+ },
552
+ "expect": {
553
+ "admit": false,
554
+ "reason": "fulfillment",
555
+ "restock": false,
556
+ "releaseReservation": false,
557
+ "blindRepurchase": false
558
+ }
559
+ },
560
+ {
561
+ "name": "unknown-capture-cannot-authorize",
562
+ "command": "authorize-final-cart",
563
+ "payment": "capture_unknown",
564
+ "stock": "unallocated",
565
+ "fulfillment": "held",
566
+ "label": "none",
567
+ "providerOutcome": "unknown",
568
+ "evidence": {
569
+ "verification": "fresh",
570
+ "tax": "fresh",
571
+ "risk": "fresh",
572
+ "stock": "fresh"
573
+ },
574
+ "expect": {
575
+ "admit": false,
576
+ "reason": "reconcile",
577
+ "restock": false,
578
+ "releaseReservation": false,
579
+ "blindRepurchase": false
580
+ }
581
+ },
582
+ {
583
+ "name": "fresh-evidence-authorizes-without-capture",
584
+ "command": "authorize-final-cart",
585
+ "payment": "authorized",
586
+ "stock": "unallocated",
587
+ "fulfillment": "held",
588
+ "label": "none",
589
+ "providerOutcome": null,
590
+ "evidence": {
591
+ "verification": "fresh",
592
+ "tax": "fresh",
593
+ "risk": "fresh",
594
+ "stock": "fresh"
595
+ },
596
+ "expect": {
597
+ "admit": true,
598
+ "reason": "admitted",
599
+ "restock": false,
600
+ "releaseReservation": false,
601
+ "blindRepurchase": false
602
+ }
603
+ },
604
+ {
605
+ "name": "authorized-payment-cannot-hand-off",
606
+ "command": "hand-off",
607
+ "payment": "authorized",
608
+ "stock": "confirmed",
609
+ "fulfillment": "ready",
610
+ "label": "purchased",
611
+ "providerOutcome": "accepted",
612
+ "evidence": {
613
+ "verification": "fresh",
614
+ "tax": "fresh",
615
+ "risk": "fresh",
616
+ "stock": "fresh"
617
+ },
618
+ "expect": {
619
+ "admit": false,
620
+ "reason": "payment",
621
+ "restock": false,
622
+ "releaseReservation": false,
623
+ "blindRepurchase": false
624
+ }
625
+ },
626
+ {
627
+ "name": "captured-ready-label-can-hand-off",
628
+ "command": "hand-off",
629
+ "payment": "captured",
630
+ "stock": "confirmed",
631
+ "fulfillment": "ready",
632
+ "label": "purchased",
633
+ "providerOutcome": "accepted",
634
+ "evidence": {
635
+ "verification": "fresh",
636
+ "tax": "fresh",
637
+ "risk": "fresh",
638
+ "stock": "fresh"
639
+ },
640
+ "expect": {
641
+ "admit": true,
642
+ "reason": "admitted",
643
+ "restock": false,
644
+ "releaseReservation": false,
645
+ "blindRepurchase": false
646
+ }
647
+ },
648
+ {
649
+ "name": "refund-does-not-restock",
650
+ "command": "refund",
651
+ "payment": "captured",
652
+ "stock": "confirmed",
653
+ "fulfillment": "ready",
654
+ "label": "none",
655
+ "providerOutcome": "accepted",
656
+ "evidence": {
657
+ "verification": "fresh",
658
+ "tax": "fresh",
659
+ "risk": "fresh",
660
+ "stock": "fresh"
661
+ },
662
+ "expect": {
663
+ "admit": true,
664
+ "reason": "admitted",
665
+ "restock": false,
666
+ "releaseReservation": false,
667
+ "blindRepurchase": false
668
+ }
669
+ },
670
+ {
671
+ "name": "authorized-is-not-a-refund",
672
+ "command": "refund",
673
+ "payment": "authorized",
674
+ "stock": "reserved",
675
+ "fulfillment": "held",
676
+ "label": "none",
677
+ "providerOutcome": null,
678
+ "evidence": {
679
+ "verification": "fresh",
680
+ "tax": "fresh",
681
+ "risk": "fresh",
682
+ "stock": "fresh"
683
+ },
684
+ "expect": {
685
+ "admit": false,
686
+ "reason": "payment",
687
+ "restock": false,
688
+ "releaseReservation": false,
689
+ "blindRepurchase": false
690
+ }
691
+ },
692
+ {
693
+ "name": "cancel-before-handoff-releases-reservation",
694
+ "command": "cancel",
695
+ "payment": "captured",
696
+ "stock": "reserved",
697
+ "fulfillment": "ready",
698
+ "label": "none",
699
+ "providerOutcome": null,
700
+ "evidence": {
701
+ "verification": "fresh",
702
+ "tax": "fresh",
703
+ "risk": "fresh",
704
+ "stock": "fresh"
705
+ },
706
+ "expect": {
707
+ "admit": true,
708
+ "reason": "admitted",
709
+ "restock": false,
710
+ "releaseReservation": true,
711
+ "blindRepurchase": false
712
+ }
713
+ },
714
+ {
715
+ "name": "cancel-after-handoff-refused",
716
+ "command": "cancel",
717
+ "payment": "captured",
718
+ "stock": "confirmed",
719
+ "fulfillment": "handed_off",
720
+ "label": "printed",
721
+ "providerOutcome": "accepted",
722
+ "evidence": {
723
+ "verification": "fresh",
724
+ "tax": "fresh",
725
+ "risk": "fresh",
726
+ "stock": "fresh"
727
+ },
728
+ "expect": {
729
+ "admit": false,
730
+ "reason": "fulfillment",
731
+ "restock": false,
732
+ "releaseReservation": false,
733
+ "blindRepurchase": false
734
+ }
735
+ },
736
+ {
737
+ "name": "refund-requested-blocks-handoff",
738
+ "command": "hand-off",
739
+ "payment": "refund_requested",
740
+ "stock": "confirmed",
741
+ "fulfillment": "ready",
742
+ "label": "purchased",
743
+ "providerOutcome": "accepted",
744
+ "evidence": {
745
+ "verification": "fresh",
746
+ "tax": "fresh",
747
+ "risk": "fresh",
748
+ "stock": "fresh"
749
+ },
750
+ "expect": {
751
+ "admit": false,
752
+ "reason": "payment",
753
+ "restock": false,
754
+ "releaseReservation": false,
755
+ "blindRepurchase": false
756
+ }
757
+ },
758
+ {
759
+ "name": "unknown-label-outcome-reconciles",
760
+ "command": "purchase-label",
761
+ "payment": "captured",
762
+ "stock": "confirmed",
763
+ "fulfillment": "ready",
764
+ "label": "none",
765
+ "providerOutcome": "unknown",
766
+ "evidence": {
767
+ "verification": "fresh",
768
+ "tax": "fresh",
769
+ "risk": "fresh",
770
+ "stock": "fresh"
771
+ },
772
+ "expect": {
773
+ "admit": false,
774
+ "reason": "reconcile",
775
+ "restock": false,
776
+ "releaseReservation": false,
777
+ "blindRepurchase": false
778
+ }
779
+ },
780
+ {
781
+ "name": "purchased-label-is-reused",
782
+ "command": "purchase-label",
783
+ "payment": "captured",
784
+ "stock": "confirmed",
785
+ "fulfillment": "ready",
786
+ "label": "purchased",
787
+ "providerOutcome": "accepted",
788
+ "evidence": {
789
+ "verification": "fresh",
790
+ "tax": "fresh",
791
+ "risk": "fresh",
792
+ "stock": "fresh"
793
+ },
794
+ "expect": {
795
+ "admit": false,
796
+ "reason": "reuse",
797
+ "restock": false,
798
+ "releaseReservation": false,
799
+ "blindRepurchase": false
800
+ }
801
+ },
802
+ {
803
+ "name": "print-reuses-purchased-label",
804
+ "command": "print-label",
805
+ "payment": "captured",
806
+ "stock": "confirmed",
807
+ "fulfillment": "ready",
808
+ "label": "purchased",
809
+ "providerOutcome": "accepted",
810
+ "evidence": {
811
+ "verification": "fresh",
812
+ "tax": "fresh",
813
+ "risk": "fresh",
814
+ "stock": "fresh"
815
+ },
816
+ "expect": {
817
+ "admit": true,
818
+ "reason": "admitted",
819
+ "restock": false,
820
+ "releaseReservation": false,
821
+ "blindRepurchase": false
822
+ }
823
+ },
824
+ {
825
+ "name": "voided-label-can-be-purchased-again",
826
+ "command": "purchase-label",
827
+ "payment": "captured",
828
+ "stock": "confirmed",
829
+ "fulfillment": "ready",
830
+ "label": "voided",
831
+ "providerOutcome": "voided",
832
+ "evidence": {
833
+ "verification": "fresh",
834
+ "tax": "fresh",
835
+ "risk": "fresh",
836
+ "stock": "fresh"
837
+ },
838
+ "expect": {
839
+ "admit": true,
840
+ "reason": "admitted",
841
+ "restock": false,
842
+ "releaseReservation": false,
843
+ "blindRepurchase": false
844
+ }
845
+ }
846
+ ]
847
+ }