@drisp/protocol 0.6.0 → 0.8.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,1100 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "oneOf": [
4
+ {
5
+ "type": "object",
6
+ "properties": {
7
+ "type": {
8
+ "type": "string",
9
+ "const": "hello"
10
+ },
11
+ "role": {
12
+ "type": "string",
13
+ "const": "runner"
14
+ },
15
+ "protocol": {
16
+ "type": "object",
17
+ "properties": {
18
+ "major": {
19
+ "type": "number",
20
+ "const": 2
21
+ },
22
+ "minor": {
23
+ "type": "integer",
24
+ "minimum": 0,
25
+ "maximum": 9007199254740991
26
+ }
27
+ },
28
+ "required": [
29
+ "major",
30
+ "minor"
31
+ ],
32
+ "additionalProperties": false
33
+ },
34
+ "runnerId": {
35
+ "type": "string",
36
+ "minLength": 1,
37
+ "maxLength": 160
38
+ },
39
+ "installationId": {
40
+ "type": "string",
41
+ "minLength": 1,
42
+ "maxLength": 160
43
+ },
44
+ "softwareVersion": {
45
+ "type": "string",
46
+ "maxLength": 128
47
+ },
48
+ "capabilities": {
49
+ "maxItems": 64,
50
+ "type": "array",
51
+ "items": {
52
+ "type": "string",
53
+ "maxLength": 128
54
+ }
55
+ },
56
+ "workflows": {
57
+ "maxItems": 256,
58
+ "type": "array",
59
+ "items": {
60
+ "type": "object",
61
+ "properties": {
62
+ "name": {
63
+ "type": "string",
64
+ "minLength": 1
65
+ },
66
+ "version": {
67
+ "type": "string"
68
+ },
69
+ "source": {
70
+ "oneOf": [
71
+ {
72
+ "type": "object",
73
+ "properties": {
74
+ "kind": {
75
+ "type": "string",
76
+ "const": "builtin"
77
+ }
78
+ },
79
+ "required": [
80
+ "kind"
81
+ ],
82
+ "additionalProperties": false
83
+ },
84
+ {
85
+ "type": "object",
86
+ "properties": {
87
+ "kind": {
88
+ "type": "string",
89
+ "const": "marketplace-remote"
90
+ },
91
+ "ref": {
92
+ "type": "string"
93
+ }
94
+ },
95
+ "required": [
96
+ "kind",
97
+ "ref"
98
+ ],
99
+ "additionalProperties": false
100
+ },
101
+ {
102
+ "type": "object",
103
+ "properties": {
104
+ "kind": {
105
+ "type": "string",
106
+ "const": "marketplace-local"
107
+ },
108
+ "repoDir": {
109
+ "type": "string"
110
+ },
111
+ "workflowName": {
112
+ "type": "string"
113
+ }
114
+ },
115
+ "required": [
116
+ "kind",
117
+ "repoDir",
118
+ "workflowName"
119
+ ],
120
+ "additionalProperties": false
121
+ },
122
+ {
123
+ "type": "object",
124
+ "properties": {
125
+ "kind": {
126
+ "type": "string",
127
+ "const": "filesystem"
128
+ },
129
+ "path": {
130
+ "type": "string"
131
+ }
132
+ },
133
+ "required": [
134
+ "kind",
135
+ "path"
136
+ ],
137
+ "additionalProperties": false
138
+ },
139
+ {
140
+ "type": "object",
141
+ "properties": {
142
+ "kind": {
143
+ "type": "string",
144
+ "const": "unknown"
145
+ }
146
+ },
147
+ "required": [
148
+ "kind"
149
+ ],
150
+ "additionalProperties": false
151
+ }
152
+ ]
153
+ }
154
+ },
155
+ "required": [
156
+ "name",
157
+ "source"
158
+ ],
159
+ "additionalProperties": false
160
+ }
161
+ },
162
+ "readiness": {
163
+ "type": "object",
164
+ "properties": {
165
+ "claude-code": {
166
+ "type": "object",
167
+ "properties": {
168
+ "installed": {
169
+ "type": "boolean"
170
+ },
171
+ "signedIn": {
172
+ "type": "boolean"
173
+ }
174
+ },
175
+ "required": [
176
+ "installed",
177
+ "signedIn"
178
+ ],
179
+ "additionalProperties": false
180
+ },
181
+ "codex": {
182
+ "type": "object",
183
+ "properties": {
184
+ "installed": {
185
+ "type": "boolean"
186
+ },
187
+ "signedIn": {
188
+ "type": "boolean"
189
+ }
190
+ },
191
+ "required": [
192
+ "installed",
193
+ "signedIn"
194
+ ],
195
+ "additionalProperties": false
196
+ }
197
+ },
198
+ "additionalProperties": false
199
+ },
200
+ "control": {
201
+ "type": "object",
202
+ "properties": {
203
+ "firstRetainedSeq": {
204
+ "type": "integer",
205
+ "minimum": 0,
206
+ "maximum": 9007199254740991
207
+ },
208
+ "lastProducedSeq": {
209
+ "type": "integer",
210
+ "minimum": 0,
211
+ "maximum": 9007199254740991
212
+ }
213
+ },
214
+ "required": [
215
+ "firstRetainedSeq",
216
+ "lastProducedSeq"
217
+ ],
218
+ "additionalProperties": false
219
+ }
220
+ },
221
+ "required": [
222
+ "type",
223
+ "role",
224
+ "protocol",
225
+ "runnerId",
226
+ "installationId",
227
+ "softwareVersion",
228
+ "capabilities",
229
+ "control"
230
+ ],
231
+ "additionalProperties": false
232
+ },
233
+ {
234
+ "type": "object",
235
+ "properties": {
236
+ "type": {
237
+ "type": "string",
238
+ "const": "control.batch"
239
+ },
240
+ "firstSeq": {
241
+ "type": "integer",
242
+ "minimum": 0,
243
+ "maximum": 9007199254740991
244
+ },
245
+ "records": {
246
+ "minItems": 1,
247
+ "maxItems": 128,
248
+ "type": "array",
249
+ "items": {
250
+ "oneOf": [
251
+ {
252
+ "type": "object",
253
+ "properties": {
254
+ "kind": {
255
+ "type": "string",
256
+ "const": "workflows.changed"
257
+ },
258
+ "workflows": {
259
+ "maxItems": 256,
260
+ "type": "array",
261
+ "items": {
262
+ "type": "object",
263
+ "properties": {
264
+ "name": {
265
+ "type": "string",
266
+ "minLength": 1
267
+ },
268
+ "version": {
269
+ "type": "string"
270
+ },
271
+ "source": {
272
+ "oneOf": [
273
+ {
274
+ "type": "object",
275
+ "properties": {
276
+ "kind": {
277
+ "type": "string",
278
+ "const": "builtin"
279
+ }
280
+ },
281
+ "required": [
282
+ "kind"
283
+ ],
284
+ "additionalProperties": false
285
+ },
286
+ {
287
+ "type": "object",
288
+ "properties": {
289
+ "kind": {
290
+ "type": "string",
291
+ "const": "marketplace-remote"
292
+ },
293
+ "ref": {
294
+ "type": "string"
295
+ }
296
+ },
297
+ "required": [
298
+ "kind",
299
+ "ref"
300
+ ],
301
+ "additionalProperties": false
302
+ },
303
+ {
304
+ "type": "object",
305
+ "properties": {
306
+ "kind": {
307
+ "type": "string",
308
+ "const": "marketplace-local"
309
+ },
310
+ "repoDir": {
311
+ "type": "string"
312
+ },
313
+ "workflowName": {
314
+ "type": "string"
315
+ }
316
+ },
317
+ "required": [
318
+ "kind",
319
+ "repoDir",
320
+ "workflowName"
321
+ ],
322
+ "additionalProperties": false
323
+ },
324
+ {
325
+ "type": "object",
326
+ "properties": {
327
+ "kind": {
328
+ "type": "string",
329
+ "const": "filesystem"
330
+ },
331
+ "path": {
332
+ "type": "string"
333
+ }
334
+ },
335
+ "required": [
336
+ "kind",
337
+ "path"
338
+ ],
339
+ "additionalProperties": false
340
+ },
341
+ {
342
+ "type": "object",
343
+ "properties": {
344
+ "kind": {
345
+ "type": "string",
346
+ "const": "unknown"
347
+ }
348
+ },
349
+ "required": [
350
+ "kind"
351
+ ],
352
+ "additionalProperties": false
353
+ }
354
+ ]
355
+ }
356
+ },
357
+ "required": [
358
+ "name",
359
+ "source"
360
+ ],
361
+ "additionalProperties": false
362
+ }
363
+ }
364
+ },
365
+ "required": [
366
+ "kind",
367
+ "workflows"
368
+ ],
369
+ "additionalProperties": false
370
+ },
371
+ {
372
+ "type": "object",
373
+ "properties": {
374
+ "kind": {
375
+ "type": "string",
376
+ "const": "readiness.changed"
377
+ },
378
+ "readiness": {
379
+ "type": "object",
380
+ "properties": {
381
+ "claude-code": {
382
+ "type": "object",
383
+ "properties": {
384
+ "installed": {
385
+ "type": "boolean"
386
+ },
387
+ "signedIn": {
388
+ "type": "boolean"
389
+ }
390
+ },
391
+ "required": [
392
+ "installed",
393
+ "signedIn"
394
+ ],
395
+ "additionalProperties": false
396
+ },
397
+ "codex": {
398
+ "type": "object",
399
+ "properties": {
400
+ "installed": {
401
+ "type": "boolean"
402
+ },
403
+ "signedIn": {
404
+ "type": "boolean"
405
+ }
406
+ },
407
+ "required": [
408
+ "installed",
409
+ "signedIn"
410
+ ],
411
+ "additionalProperties": false
412
+ }
413
+ },
414
+ "additionalProperties": false
415
+ }
416
+ },
417
+ "required": [
418
+ "kind",
419
+ "readiness"
420
+ ],
421
+ "additionalProperties": false
422
+ },
423
+ {
424
+ "type": "object",
425
+ "properties": {
426
+ "kind": {
427
+ "type": "string",
428
+ "const": "assignment.accepted"
429
+ },
430
+ "runId": {
431
+ "type": "string",
432
+ "minLength": 1,
433
+ "maxLength": 160
434
+ },
435
+ "attemptId": {
436
+ "type": "string",
437
+ "minLength": 1,
438
+ "maxLength": 160
439
+ }
440
+ },
441
+ "required": [
442
+ "kind",
443
+ "runId",
444
+ "attemptId"
445
+ ],
446
+ "additionalProperties": false
447
+ },
448
+ {
449
+ "type": "object",
450
+ "properties": {
451
+ "kind": {
452
+ "type": "string",
453
+ "const": "assignment.rejected"
454
+ },
455
+ "runId": {
456
+ "type": "string",
457
+ "minLength": 1,
458
+ "maxLength": 160
459
+ },
460
+ "attemptId": {
461
+ "type": "string",
462
+ "minLength": 1,
463
+ "maxLength": 160
464
+ },
465
+ "reason": {
466
+ "type": "string",
467
+ "maxLength": 1024
468
+ }
469
+ },
470
+ "required": [
471
+ "kind",
472
+ "runId",
473
+ "attemptId",
474
+ "reason"
475
+ ],
476
+ "additionalProperties": false
477
+ },
478
+ {
479
+ "type": "object",
480
+ "properties": {
481
+ "kind": {
482
+ "type": "string",
483
+ "const": "run.started"
484
+ },
485
+ "runId": {
486
+ "type": "string",
487
+ "minLength": 1,
488
+ "maxLength": 160
489
+ },
490
+ "attemptId": {
491
+ "type": "string",
492
+ "minLength": 1,
493
+ "maxLength": 160
494
+ },
495
+ "executionRevision": {
496
+ "type": "integer",
497
+ "minimum": 0,
498
+ "maximum": 9007199254740991
499
+ },
500
+ "emittedAt": {
501
+ "type": "string",
502
+ "format": "date-time",
503
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
504
+ },
505
+ "workflow": {
506
+ "type": "object",
507
+ "properties": {
508
+ "name": {
509
+ "type": "string",
510
+ "minLength": 1,
511
+ "maxLength": 128
512
+ },
513
+ "version": {
514
+ "type": "string",
515
+ "minLength": 1,
516
+ "maxLength": 128
517
+ }
518
+ },
519
+ "required": [
520
+ "name"
521
+ ],
522
+ "additionalProperties": false
523
+ }
524
+ },
525
+ "required": [
526
+ "kind",
527
+ "runId",
528
+ "attemptId",
529
+ "executionRevision",
530
+ "emittedAt"
531
+ ],
532
+ "additionalProperties": false
533
+ },
534
+ {
535
+ "type": "object",
536
+ "properties": {
537
+ "kind": {
538
+ "type": "string",
539
+ "const": "run.resumed"
540
+ },
541
+ "runId": {
542
+ "type": "string",
543
+ "minLength": 1,
544
+ "maxLength": 160
545
+ },
546
+ "attemptId": {
547
+ "type": "string",
548
+ "minLength": 1,
549
+ "maxLength": 160
550
+ },
551
+ "executionRevision": {
552
+ "type": "integer",
553
+ "minimum": 0,
554
+ "maximum": 9007199254740991
555
+ },
556
+ "emittedAt": {
557
+ "type": "string",
558
+ "format": "date-time",
559
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
560
+ }
561
+ },
562
+ "required": [
563
+ "kind",
564
+ "runId",
565
+ "attemptId",
566
+ "executionRevision",
567
+ "emittedAt"
568
+ ],
569
+ "additionalProperties": false
570
+ },
571
+ {
572
+ "type": "object",
573
+ "properties": {
574
+ "kind": {
575
+ "type": "string",
576
+ "const": "run.attention"
577
+ },
578
+ "runId": {
579
+ "type": "string",
580
+ "minLength": 1,
581
+ "maxLength": 160
582
+ },
583
+ "attemptId": {
584
+ "type": "string",
585
+ "minLength": 1,
586
+ "maxLength": 160
587
+ },
588
+ "executionRevision": {
589
+ "type": "integer",
590
+ "minimum": 0,
591
+ "maximum": 9007199254740991
592
+ },
593
+ "emittedAt": {
594
+ "type": "string",
595
+ "format": "date-time",
596
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
597
+ },
598
+ "interruption": {
599
+ "type": "object",
600
+ "properties": {
601
+ "interruptionId": {
602
+ "type": "string",
603
+ "minLength": 1,
604
+ "maxLength": 160
605
+ },
606
+ "revision": {
607
+ "type": "integer",
608
+ "minimum": 0,
609
+ "maximum": 9007199254740991
610
+ },
611
+ "kind": {
612
+ "type": "string",
613
+ "enum": [
614
+ "permission",
615
+ "question",
616
+ "guidance",
617
+ "recovery",
618
+ "waiting"
619
+ ]
620
+ },
621
+ "message": {
622
+ "type": "string",
623
+ "maxLength": 16384
624
+ },
625
+ "requestId": {
626
+ "type": "string",
627
+ "minLength": 1,
628
+ "maxLength": 160
629
+ }
630
+ },
631
+ "required": [
632
+ "interruptionId",
633
+ "revision",
634
+ "kind",
635
+ "message"
636
+ ],
637
+ "additionalProperties": false
638
+ },
639
+ "occupancy": {
640
+ "type": "string",
641
+ "enum": [
642
+ "held",
643
+ "released"
644
+ ]
645
+ },
646
+ "historyThrough": {
647
+ "type": "integer",
648
+ "minimum": 0,
649
+ "maximum": 9007199254740991
650
+ },
651
+ "continuation": {
652
+ "oneOf": [
653
+ {
654
+ "type": "object",
655
+ "properties": {
656
+ "kind": {
657
+ "type": "string",
658
+ "const": "live_request"
659
+ }
660
+ },
661
+ "required": [
662
+ "kind"
663
+ ],
664
+ "additionalProperties": false
665
+ },
666
+ {
667
+ "type": "object",
668
+ "properties": {
669
+ "kind": {
670
+ "type": "string",
671
+ "const": "local_checkpoint"
672
+ },
673
+ "checkpointId": {
674
+ "type": "string",
675
+ "minLength": 1,
676
+ "maxLength": 160
677
+ }
678
+ },
679
+ "required": [
680
+ "kind",
681
+ "checkpointId"
682
+ ],
683
+ "additionalProperties": false
684
+ },
685
+ {
686
+ "type": "object",
687
+ "properties": {
688
+ "kind": {
689
+ "type": "string",
690
+ "const": "portable_checkpoint"
691
+ },
692
+ "checkpointId": {
693
+ "type": "string",
694
+ "minLength": 1,
695
+ "maxLength": 160
696
+ }
697
+ },
698
+ "required": [
699
+ "kind",
700
+ "checkpointId"
701
+ ],
702
+ "additionalProperties": false
703
+ },
704
+ {
705
+ "type": "object",
706
+ "properties": {
707
+ "kind": {
708
+ "type": "string",
709
+ "const": "repair_required"
710
+ },
711
+ "detail": {
712
+ "type": "string",
713
+ "maxLength": 4096
714
+ }
715
+ },
716
+ "required": [
717
+ "kind",
718
+ "detail"
719
+ ],
720
+ "additionalProperties": false
721
+ }
722
+ ]
723
+ }
724
+ },
725
+ "required": [
726
+ "kind",
727
+ "runId",
728
+ "attemptId",
729
+ "executionRevision",
730
+ "emittedAt",
731
+ "interruption",
732
+ "occupancy",
733
+ "historyThrough",
734
+ "continuation"
735
+ ],
736
+ "additionalProperties": false
737
+ },
738
+ {
739
+ "type": "object",
740
+ "properties": {
741
+ "kind": {
742
+ "type": "string",
743
+ "const": "run.finished"
744
+ },
745
+ "runId": {
746
+ "type": "string",
747
+ "minLength": 1,
748
+ "maxLength": 160
749
+ },
750
+ "attemptId": {
751
+ "type": "string",
752
+ "minLength": 1,
753
+ "maxLength": 160
754
+ },
755
+ "executionRevision": {
756
+ "type": "integer",
757
+ "minimum": 0,
758
+ "maximum": 9007199254740991
759
+ },
760
+ "emittedAt": {
761
+ "type": "string",
762
+ "format": "date-time",
763
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
764
+ },
765
+ "status": {
766
+ "type": "string",
767
+ "enum": [
768
+ "completed",
769
+ "failed",
770
+ "cancelled"
771
+ ]
772
+ },
773
+ "historyThrough": {
774
+ "type": "integer",
775
+ "minimum": 0,
776
+ "maximum": 9007199254740991
777
+ },
778
+ "workspaceUnavailable": {
779
+ "type": "boolean",
780
+ "const": true
781
+ },
782
+ "reason": {
783
+ "type": "string",
784
+ "enum": [
785
+ "workflow_template_mismatch",
786
+ "child_project_dir_invalid",
787
+ "build_not_approved",
788
+ "approval_question_missing"
789
+ ]
790
+ }
791
+ },
792
+ "required": [
793
+ "kind",
794
+ "runId",
795
+ "attemptId",
796
+ "executionRevision",
797
+ "emittedAt",
798
+ "status",
799
+ "historyThrough"
800
+ ],
801
+ "additionalProperties": false
802
+ },
803
+ {
804
+ "type": "object",
805
+ "properties": {
806
+ "kind": {
807
+ "type": "string",
808
+ "const": "command.applied"
809
+ },
810
+ "runId": {
811
+ "type": "string",
812
+ "minLength": 1,
813
+ "maxLength": 160
814
+ },
815
+ "attemptId": {
816
+ "type": "string",
817
+ "minLength": 1,
818
+ "maxLength": 160
819
+ },
820
+ "commandId": {
821
+ "type": "string",
822
+ "minLength": 1,
823
+ "maxLength": 160
824
+ }
825
+ },
826
+ "required": [
827
+ "kind",
828
+ "runId",
829
+ "attemptId",
830
+ "commandId"
831
+ ],
832
+ "additionalProperties": false
833
+ },
834
+ {
835
+ "type": "object",
836
+ "properties": {
837
+ "kind": {
838
+ "type": "string",
839
+ "const": "command.rejected"
840
+ },
841
+ "runId": {
842
+ "type": "string",
843
+ "minLength": 1,
844
+ "maxLength": 160
845
+ },
846
+ "attemptId": {
847
+ "type": "string",
848
+ "minLength": 1,
849
+ "maxLength": 160
850
+ },
851
+ "commandId": {
852
+ "type": "string",
853
+ "minLength": 1,
854
+ "maxLength": 160
855
+ },
856
+ "reason": {
857
+ "type": "string",
858
+ "maxLength": 1024
859
+ }
860
+ },
861
+ "required": [
862
+ "kind",
863
+ "runId",
864
+ "attemptId",
865
+ "commandId",
866
+ "reason"
867
+ ],
868
+ "additionalProperties": false
869
+ },
870
+ {
871
+ "type": "object",
872
+ "properties": {
873
+ "kind": {
874
+ "type": "string",
875
+ "const": "revoked_not_started"
876
+ },
877
+ "runId": {
878
+ "type": "string",
879
+ "minLength": 1,
880
+ "maxLength": 160
881
+ },
882
+ "attemptId": {
883
+ "type": "string",
884
+ "minLength": 1,
885
+ "maxLength": 160
886
+ }
887
+ },
888
+ "required": [
889
+ "kind",
890
+ "runId",
891
+ "attemptId"
892
+ ],
893
+ "additionalProperties": false
894
+ }
895
+ ]
896
+ }
897
+ }
898
+ },
899
+ "required": [
900
+ "type",
901
+ "firstSeq",
902
+ "records"
903
+ ],
904
+ "additionalProperties": false
905
+ },
906
+ {
907
+ "type": "object",
908
+ "properties": {
909
+ "type": {
910
+ "type": "string",
911
+ "const": "history.batch"
912
+ },
913
+ "runId": {
914
+ "type": "string",
915
+ "minLength": 1,
916
+ "maxLength": 160
917
+ },
918
+ "firstSeq": {
919
+ "type": "integer",
920
+ "minimum": 0,
921
+ "maximum": 9007199254740991
922
+ },
923
+ "records": {
924
+ "minItems": 1,
925
+ "maxItems": 128,
926
+ "type": "array",
927
+ "items": {
928
+ "type": "object",
929
+ "properties": {
930
+ "eventId": {
931
+ "type": "string",
932
+ "minLength": 1,
933
+ "maxLength": 160
934
+ },
935
+ "attemptId": {
936
+ "type": "string",
937
+ "minLength": 1,
938
+ "maxLength": 160
939
+ },
940
+ "emittedAt": {
941
+ "type": "string",
942
+ "format": "date-time",
943
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
944
+ },
945
+ "kind": {
946
+ "type": "string",
947
+ "minLength": 1,
948
+ "maxLength": 128
949
+ },
950
+ "data": {
951
+ "$ref": "#/$defs/__schema0"
952
+ }
953
+ },
954
+ "required": [
955
+ "eventId",
956
+ "attemptId",
957
+ "emittedAt",
958
+ "kind",
959
+ "data"
960
+ ],
961
+ "additionalProperties": false
962
+ }
963
+ }
964
+ },
965
+ "required": [
966
+ "type",
967
+ "runId",
968
+ "firstSeq",
969
+ "records"
970
+ ],
971
+ "additionalProperties": false
972
+ },
973
+ {
974
+ "type": "object",
975
+ "properties": {
976
+ "type": {
977
+ "type": "string",
978
+ "const": "ping"
979
+ },
980
+ "nonce": {
981
+ "type": "string",
982
+ "minLength": 1,
983
+ "maxLength": 160
984
+ }
985
+ },
986
+ "required": [
987
+ "type",
988
+ "nonce"
989
+ ],
990
+ "additionalProperties": false
991
+ },
992
+ {
993
+ "type": "object",
994
+ "properties": {
995
+ "type": {
996
+ "type": "string",
997
+ "const": "reconcile.page"
998
+ },
999
+ "inventoryId": {
1000
+ "default": "single-page",
1001
+ "type": "string",
1002
+ "minLength": 1,
1003
+ "maxLength": 160
1004
+ },
1005
+ "page": {
1006
+ "default": 0,
1007
+ "type": "integer",
1008
+ "minimum": 0,
1009
+ "maximum": 9007199254740991
1010
+ },
1011
+ "complete": {
1012
+ "type": "boolean"
1013
+ },
1014
+ "runs": {
1015
+ "maxItems": 128,
1016
+ "type": "array",
1017
+ "items": {
1018
+ "type": "object",
1019
+ "properties": {
1020
+ "runId": {
1021
+ "type": "string",
1022
+ "minLength": 1,
1023
+ "maxLength": 160
1024
+ },
1025
+ "attemptId": {
1026
+ "type": "string",
1027
+ "minLength": 1,
1028
+ "maxLength": 160
1029
+ },
1030
+ "executionRevision": {
1031
+ "type": "integer",
1032
+ "minimum": 0,
1033
+ "maximum": 9007199254740991
1034
+ },
1035
+ "phase": {
1036
+ "type": "string",
1037
+ "enum": [
1038
+ "admitted",
1039
+ "prepared",
1040
+ "executing",
1041
+ "parked",
1042
+ "terminal",
1043
+ "recovery"
1044
+ ]
1045
+ }
1046
+ },
1047
+ "required": [
1048
+ "runId",
1049
+ "attemptId",
1050
+ "executionRevision",
1051
+ "phase"
1052
+ ],
1053
+ "additionalProperties": false
1054
+ }
1055
+ }
1056
+ },
1057
+ "required": [
1058
+ "type",
1059
+ "inventoryId",
1060
+ "page",
1061
+ "complete",
1062
+ "runs"
1063
+ ],
1064
+ "additionalProperties": false
1065
+ }
1066
+ ],
1067
+ "$defs": {
1068
+ "__schema0": {
1069
+ "anyOf": [
1070
+ {
1071
+ "type": "string"
1072
+ },
1073
+ {
1074
+ "type": "number"
1075
+ },
1076
+ {
1077
+ "type": "boolean"
1078
+ },
1079
+ {
1080
+ "type": "null"
1081
+ },
1082
+ {
1083
+ "type": "array",
1084
+ "items": {
1085
+ "$ref": "#/$defs/__schema0"
1086
+ }
1087
+ },
1088
+ {
1089
+ "type": "object",
1090
+ "propertyNames": {
1091
+ "type": "string"
1092
+ },
1093
+ "additionalProperties": {
1094
+ "$ref": "#/$defs/__schema0"
1095
+ }
1096
+ }
1097
+ ]
1098
+ }
1099
+ }
1100
+ }