@ue-shed/protocol 0.7.1 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/contracts/cameras/authoring/v1/README.md +63 -0
  2. package/contracts/cameras/authoring/v1/approval.schema.json +106 -0
  3. package/contracts/cameras/authoring/v1/arrangement.schema.json +1807 -0
  4. package/contracts/cameras/authoring/v1/bridge-request.schema.json +11077 -0
  5. package/contracts/cameras/authoring/v1/bridge-response.schema.json +10523 -0
  6. package/contracts/cameras/authoring/v1/command.schema.json +4115 -0
  7. package/contracts/cameras/authoring/v1/document.schema.json +4421 -0
  8. package/contracts/cameras/authoring/v1/panel-event.schema.json +4891 -0
  9. package/contracts/cameras/authoring/v1/panel-state.schema.json +3560 -0
  10. package/contracts/cameras/authoring/v1/recipe.schema.json +340 -0
  11. package/contracts/cameras/authoring/v1/visibility-preset.schema.json +205 -0
  12. package/contracts/cameras/map-tile/v1/README.md +4 -1
  13. package/contracts/cameras/map-tile/v1/capture-operation.schema.json +1643 -30
  14. package/contracts/cameras/map-tile/v1/capture-request.schema.json +497 -48
  15. package/contracts/cameras/map-tile/v1/capture-response.schema.json +1405 -96
  16. package/contracts/cameras/map-tile/v1/manifest.schema.json +1782 -110
  17. package/contracts/cameras/map-tile/v1/plan.schema.json +394 -200
  18. package/contracts/cameras/map-tile/v1/release-result.schema.json +7 -2
  19. package/contracts/cameras/provisioning/v1/provision-request.schema.json +663 -141
  20. package/contracts/cameras/render/v1/README.md +6 -0
  21. package/contracts/cameras/render/v1/begin-result.schema.json +173 -0
  22. package/contracts/cameras/render/v1/capabilities.schema.json +46 -0
  23. package/contracts/cameras/render/v1/fixtures/invalid-session-editor-previews-type.json +41 -0
  24. package/contracts/cameras/render/v1/fixtures/session-editor-previews.json +41 -0
  25. package/contracts/cameras/render/v1/fixtures/session-scene-capture-editor-previews.json +40 -0
  26. package/contracts/cameras/render/v1/frame-evidence.schema.json +262 -0
  27. package/contracts/cameras/render/v1/frame-status.schema.json +271 -0
  28. package/contracts/cameras/render/v1/policy.schema.json +165 -0
  29. package/contracts/cameras/render/v1/review-inspection-result.schema.json +285 -0
  30. package/contracts/cameras/render/v1/session-request.schema.json +173 -0
  31. package/contracts/cameras/review/v1/README.md +6 -0
  32. package/contracts/cameras/review/v1/capture-request.schema.json +221 -3
  33. package/contracts/cameras/review/v1/capture-response.schema.json +3692 -0
  34. package/contracts/cameras/review/v1/fixtures/capture-authored.json +205 -0
  35. package/contracts/core/v1/WINDOW-ACTIVATION.md +21 -0
  36. package/contracts/core/v1/window-activation-request.schema.json +20 -0
  37. package/contracts/core/v1/window-activation-result.schema.json +49 -0
  38. package/contracts/editor-world/v1/README.md +27 -0
  39. package/contracts/editor-world/v1/operation.schema.json +761 -0
  40. package/contracts/editor-world/v1/state.schema.json +92 -0
  41. package/contracts/uasset-io/v1/README.md +24 -0
  42. package/contracts/uasset-io/v1/event.schema.json +2642 -290
  43. package/contracts/uasset-io/v1/fixtures/invalid/inspect-string-table-nonstring-metadata.json +53 -0
  44. package/contracts/uasset-io/v1/fixtures/invalid/level-sequence-version.json +43 -0
  45. package/contracts/uasset-io/v1/fixtures/invalid/negative-instanced-size.json +97 -0
  46. package/contracts/uasset-io/v1/fixtures/invalid/non-string-metadata.json +97 -0
  47. package/contracts/uasset-io/v1/fixtures/invalid/unknown-native-value.json +97 -0
  48. package/contracts/uasset-io/v1/fixtures/valid/blueprint-request.json +15 -3
  49. package/contracts/uasset-io/v1/fixtures/valid/blueprint-result-event.json +22 -5
  50. package/contracts/uasset-io/v1/fixtures/valid/extract-text-string-table-occurrence-result-event.json +30 -0
  51. package/contracts/uasset-io/v1/fixtures/valid/inspect-native-result-event.json +97 -0
  52. package/contracts/uasset-io/v1/fixtures/valid/inspect-string-table-metadata-result-event.json +53 -0
  53. package/contracts/uasset-io/v1/fixtures/valid/level-sequence-request.json +18 -0
  54. package/contracts/uasset-io/v1/fixtures/valid/level-sequence-result-event.json +43 -0
  55. package/contracts/uasset-io/v1/request.schema.json +14 -0
  56. package/contracts/world/preparation/v1/fixtures/invalid-contract-version.json +10 -0
  57. package/contracts/world/preparation/v1/fixtures/invalid-extra-field.json +11 -0
  58. package/contracts/world/preparation/v1/fixtures/invalid-negative-budget.json +37 -0
  59. package/contracts/world/preparation/v1/fixtures/invalid-region-negative-extent.json +40 -0
  60. package/contracts/world/preparation/v1/fixtures/valid-actor-context.json +37 -0
  61. package/contracts/world/preparation/v1/fixtures/valid-describe.json +10 -0
  62. package/contracts/world/preparation/v1/request.schema.json +897 -0
  63. package/contracts/world/preparation/v1/response.schema.json +449 -0
  64. package/dist/blueprint-graph.d.ts +332 -8
  65. package/dist/blueprint-graph.d.ts.map +1 -1
  66. package/dist/blueprint-graph.js +42 -3
  67. package/dist/blueprint-graph.js.map +1 -1
  68. package/dist/cameras.d.ts +16 -12
  69. package/dist/cameras.d.ts.map +1 -1
  70. package/dist/cameras.js +1 -0
  71. package/dist/cameras.js.map +1 -1
  72. package/dist/companion.d.ts +6 -0
  73. package/dist/companion.d.ts.map +1 -1
  74. package/dist/companion.js +3 -0
  75. package/dist/companion.js.map +1 -1
  76. package/dist/editor-window-activation.d.ts +16 -0
  77. package/dist/editor-window-activation.d.ts.map +1 -0
  78. package/dist/editor-window-activation.js +19 -0
  79. package/dist/editor-window-activation.js.map +1 -0
  80. package/dist/editor-world-control.d.ts +125 -0
  81. package/dist/editor-world-control.d.ts.map +1 -1
  82. package/dist/editor-world-control.js +25 -0
  83. package/dist/editor-world-control.js.map +1 -1
  84. package/dist/index.d.ts +2 -0
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +2 -0
  87. package/dist/index.js.map +1 -1
  88. package/dist/level-sequence.d.ts +1315 -0
  89. package/dist/level-sequence.d.ts.map +1 -0
  90. package/dist/level-sequence.js +204 -0
  91. package/dist/level-sequence.js.map +1 -0
  92. package/dist/uasset-inspection.d.ts +128 -55
  93. package/dist/uasset-inspection.d.ts.map +1 -1
  94. package/dist/uasset-inspection.js +39 -2
  95. package/dist/uasset-inspection.js.map +1 -1
  96. package/dist/uasset-io.d.ts +1302 -9
  97. package/dist/uasset-io.d.ts.map +1 -1
  98. package/dist/uasset-io.js +4 -0
  99. package/dist/uasset-io.js.map +1 -1
  100. package/package.json +1 -1
@@ -1,69 +1,1682 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "https://ue-shed.dev/contracts/cameras/map-tile/v1/capture-operation.schema.json",
4
- "title": "UE Shed asynchronous map tile operation v1",
5
- "oneOf": [
4
+ "anyOf": [
6
5
  {
7
6
  "type": "object",
8
- "additionalProperties": false,
9
- "required": ["state", "operationId", "completedTiles"],
10
7
  "properties": {
11
- "state": {
12
- "const": "running"
13
- },
14
- "operationId": {
15
- "$ref": "plan.schema.json#/$defs/id"
16
- },
17
- "completedTiles": {
18
- "type": "integer",
19
- "minimum": 0,
20
- "maximum": 64
21
- },
22
8
  "phase": {
9
+ "type": "string",
23
10
  "enum": ["exposure_warmup", "tile_warmup", "capturing"]
24
11
  },
25
12
  "elapsedMs": {
26
13
  "type": "number",
27
- "minimum": 0
14
+ "allOf": [
15
+ {
16
+ "minimum": 0
17
+ }
18
+ ]
28
19
  },
29
20
  "totalTiles": {
30
21
  "type": "integer",
31
- "minimum": 0,
32
- "maximum": 64
22
+ "allOf": [
23
+ {
24
+ "minimum": 0
25
+ },
26
+ {
27
+ "maximum": 64
28
+ }
29
+ ]
33
30
  },
34
31
  "currentTile": {
35
32
  "type": "object",
36
- "additionalProperties": false,
37
- "required": ["zoom", "row", "column"],
38
33
  "properties": {
39
34
  "zoom": {
40
35
  "type": "integer",
41
- "minimum": 0
36
+ "allOf": [
37
+ {
38
+ "minimum": 0
39
+ }
40
+ ]
42
41
  },
43
42
  "row": {
44
43
  "type": "integer",
45
- "minimum": 0
44
+ "allOf": [
45
+ {
46
+ "minimum": 0
47
+ }
48
+ ]
46
49
  },
47
50
  "column": {
48
51
  "type": "integer",
52
+ "allOf": [
53
+ {
54
+ "minimum": 0
55
+ }
56
+ ]
57
+ }
58
+ },
59
+ "required": ["zoom", "row", "column"],
60
+ "additionalProperties": false
61
+ },
62
+ "state": {
63
+ "type": "string",
64
+ "enum": ["running"]
65
+ },
66
+ "operationId": {
67
+ "type": "string",
68
+ "allOf": [
69
+ {
70
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
71
+ }
72
+ ]
73
+ },
74
+ "completedTiles": {
75
+ "type": "integer",
76
+ "allOf": [
77
+ {
49
78
  "minimum": 0
79
+ },
80
+ {
81
+ "maximum": 64
50
82
  }
51
- }
83
+ ]
52
84
  }
53
- }
85
+ },
86
+ "required": ["state", "operationId", "completedTiles"],
87
+ "additionalProperties": false
54
88
  },
55
89
  {
56
90
  "type": "object",
57
- "additionalProperties": false,
58
- "required": ["state", "response"],
59
91
  "properties": {
60
92
  "state": {
61
- "const": "finished"
93
+ "type": "string",
94
+ "enum": ["finished"]
62
95
  },
63
96
  "response": {
64
- "$ref": "capture-response.schema.json"
97
+ "type": "object",
98
+ "properties": {
99
+ "actualMapPath": {
100
+ "type": "string",
101
+ "allOf": [
102
+ {
103
+ "pattern": "^\\/[A-Za-z0-9_./-]+$"
104
+ }
105
+ ]
106
+ },
107
+ "contract": {
108
+ "type": "object",
109
+ "properties": {
110
+ "name": {
111
+ "type": "string",
112
+ "enum": ["ue-shed-map-tile-capture"]
113
+ },
114
+ "version": {
115
+ "type": "object",
116
+ "properties": {
117
+ "major": {
118
+ "type": "number",
119
+ "enum": [1]
120
+ },
121
+ "minor": {
122
+ "type": "number",
123
+ "enum": [0, 1, 2]
124
+ }
125
+ },
126
+ "required": ["major", "minor"],
127
+ "additionalProperties": false
128
+ }
129
+ },
130
+ "required": ["name", "version"],
131
+ "additionalProperties": false
132
+ },
133
+ "correlationId": {
134
+ "type": "string",
135
+ "allOf": [
136
+ {
137
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
138
+ }
139
+ ]
140
+ },
141
+ "dirtyState": {
142
+ "type": "object",
143
+ "properties": {
144
+ "before": {
145
+ "type": "boolean"
146
+ },
147
+ "after": {
148
+ "type": "boolean"
149
+ }
150
+ },
151
+ "required": ["before", "after"],
152
+ "additionalProperties": false
153
+ },
154
+ "durationMs": {
155
+ "type": "number",
156
+ "allOf": [
157
+ {
158
+ "minimum": 0
159
+ }
160
+ ]
161
+ },
162
+ "failure": {
163
+ "type": "object",
164
+ "properties": {
165
+ "code": {
166
+ "type": "string",
167
+ "enum": [
168
+ "cancelled",
169
+ "capture_failed",
170
+ "data_layer_policy_unsupported",
171
+ "dirty_state_changed",
172
+ "encoding_failed",
173
+ "invalid_request",
174
+ "map_mismatch",
175
+ "streaming_not_ready",
176
+ "write_failed"
177
+ ]
178
+ },
179
+ "message": {
180
+ "type": "string",
181
+ "allOf": [
182
+ {
183
+ "minLength": 1
184
+ },
185
+ {
186
+ "maxLength": 1024
187
+ }
188
+ ]
189
+ },
190
+ "recovery": {
191
+ "type": "string",
192
+ "allOf": [
193
+ {
194
+ "minLength": 1
195
+ },
196
+ {
197
+ "maxLength": 1024
198
+ }
199
+ ]
200
+ },
201
+ "retrySafe": {
202
+ "type": "boolean"
203
+ }
204
+ },
205
+ "required": ["code", "message", "recovery", "retrySafe"],
206
+ "additionalProperties": false
207
+ },
208
+ "operationId": {
209
+ "type": "string",
210
+ "allOf": [
211
+ {
212
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
213
+ }
214
+ ]
215
+ },
216
+ "results": {
217
+ "type": "array",
218
+ "items": {
219
+ "anyOf": [
220
+ {
221
+ "type": "object",
222
+ "properties": {
223
+ "renderEvidence": {
224
+ "type": "object",
225
+ "properties": {
226
+ "visibilityDiagnostics": {
227
+ "type": "array",
228
+ "items": {
229
+ "type": "object",
230
+ "properties": {
231
+ "locator": {
232
+ "anyOf": [
233
+ {
234
+ "type": "object",
235
+ "properties": {
236
+ "kind": {
237
+ "type": "string",
238
+ "enum": [
239
+ "actor_path"
240
+ ]
241
+ },
242
+ "actorPath": {
243
+ "type": "string",
244
+ "allOf": [
245
+ {
246
+ "pattern": "^\\/Game\\/"
247
+ },
248
+ {
249
+ "maxLength": 4096
250
+ }
251
+ ]
252
+ }
253
+ },
254
+ "required": [
255
+ "kind",
256
+ "actorPath"
257
+ ],
258
+ "additionalProperties": false
259
+ },
260
+ {
261
+ "type": "object",
262
+ "properties": {
263
+ "kind": {
264
+ "type": "string",
265
+ "enum": [
266
+ "actor_guid"
267
+ ]
268
+ },
269
+ "actorGuid": {
270
+ "type": "string",
271
+ "allOf": [
272
+ {
273
+ "pattern": "^(?!00000000-00000000-00000000-00000000$)[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{8}){3}$"
274
+ }
275
+ ]
276
+ },
277
+ "lastKnownActorPath": {
278
+ "type": "string",
279
+ "allOf": [
280
+ {
281
+ "maxLength": 4096
282
+ }
283
+ ]
284
+ }
285
+ },
286
+ "required": [
287
+ "kind",
288
+ "actorGuid",
289
+ "lastKnownActorPath"
290
+ ],
291
+ "additionalProperties": false
292
+ }
293
+ ]
294
+ },
295
+ "status": {
296
+ "type": "string",
297
+ "enum": [
298
+ "resolved",
299
+ "missing_or_unloaded",
300
+ "ambiguous",
301
+ "unsupported"
302
+ ]
303
+ },
304
+ "actorPath": {
305
+ "type": "string"
306
+ },
307
+ "message": {
308
+ "type": "string"
309
+ }
310
+ },
311
+ "required": [
312
+ "locator",
313
+ "status",
314
+ "actorPath",
315
+ "message"
316
+ ],
317
+ "additionalProperties": false
318
+ }
319
+ },
320
+ "editorPreviews": {
321
+ "type": "object",
322
+ "properties": {
323
+ "revealedChildActors": {
324
+ "type": "integer",
325
+ "allOf": [
326
+ {
327
+ "minimum": 0,
328
+ "maximum": 1000000
329
+ }
330
+ ]
331
+ }
332
+ },
333
+ "required": ["revealedChildActors"],
334
+ "additionalProperties": false
335
+ },
336
+ "editorState": {
337
+ "type": "object",
338
+ "properties": {
339
+ "mapPackageDirtyBefore": {
340
+ "type": "boolean"
341
+ },
342
+ "mapPackageDirtyAfter": {
343
+ "type": "boolean"
344
+ }
345
+ },
346
+ "required": [
347
+ "mapPackageDirtyBefore",
348
+ "mapPackageDirtyAfter"
349
+ ],
350
+ "additionalProperties": false
351
+ },
352
+ "camera": {
353
+ "type": "object",
354
+ "properties": {
355
+ "location": {
356
+ "type": "object",
357
+ "properties": {
358
+ "x": {
359
+ "type": "number"
360
+ },
361
+ "y": {
362
+ "type": "number"
363
+ },
364
+ "z": {
365
+ "type": "number"
366
+ }
367
+ },
368
+ "required": ["x", "y", "z"],
369
+ "additionalProperties": false
370
+ },
371
+ "rotation": {
372
+ "type": "object",
373
+ "properties": {
374
+ "pitch": {
375
+ "type": "number"
376
+ },
377
+ "roll": {
378
+ "type": "number"
379
+ },
380
+ "yaw": {
381
+ "type": "number"
382
+ }
383
+ },
384
+ "required": [
385
+ "pitch",
386
+ "roll",
387
+ "yaw"
388
+ ],
389
+ "additionalProperties": false
390
+ },
391
+ "projection": {
392
+ "anyOf": [
393
+ {
394
+ "type": "object",
395
+ "properties": {
396
+ "kind": {
397
+ "type": "string",
398
+ "enum": [
399
+ "perspective"
400
+ ]
401
+ },
402
+ "horizontalFieldOfView": {
403
+ "type": "number",
404
+ "allOf": [
405
+ {
406
+ "minimum": 5,
407
+ "maximum": 170
408
+ }
409
+ ]
410
+ }
411
+ },
412
+ "required": [
413
+ "kind",
414
+ "horizontalFieldOfView"
415
+ ],
416
+ "additionalProperties": false
417
+ },
418
+ {
419
+ "type": "object",
420
+ "properties": {
421
+ "kind": {
422
+ "type": "string",
423
+ "enum": [
424
+ "orthographic"
425
+ ]
426
+ },
427
+ "width": {
428
+ "type": "number",
429
+ "allOf": [
430
+ {
431
+ "exclusiveMinimum": 0
432
+ },
433
+ {
434
+ "maximum": 1000000000
435
+ }
436
+ ]
437
+ }
438
+ },
439
+ "required": [
440
+ "kind",
441
+ "width"
442
+ ],
443
+ "additionalProperties": false
444
+ }
445
+ ]
446
+ }
447
+ },
448
+ "required": [
449
+ "location",
450
+ "rotation",
451
+ "projection"
452
+ ],
453
+ "additionalProperties": false
454
+ },
455
+ "size": {
456
+ "type": "object",
457
+ "properties": {
458
+ "width": {
459
+ "type": "integer",
460
+ "allOf": [
461
+ {
462
+ "minimum": 16,
463
+ "maximum": 16384
464
+ }
465
+ ]
466
+ },
467
+ "height": {
468
+ "type": "integer",
469
+ "allOf": [
470
+ {
471
+ "minimum": 16,
472
+ "maximum": 16384
473
+ }
474
+ ]
475
+ }
476
+ },
477
+ "required": ["width", "height"],
478
+ "additionalProperties": false
479
+ },
480
+ "policy": {
481
+ "type": "object",
482
+ "properties": {
483
+ "visibility": {
484
+ "type": "object",
485
+ "properties": {
486
+ "hide": {
487
+ "type": "array",
488
+ "items": {
489
+ "type": "object",
490
+ "properties": {
491
+ "locator": {
492
+ "anyOf": [
493
+ {
494
+ "type": "object",
495
+ "properties": {
496
+ "kind": {
497
+ "type": "string",
498
+ "enum": [
499
+ "actor_path"
500
+ ]
501
+ },
502
+ "actorPath": {
503
+ "type": "string",
504
+ "allOf": [
505
+ {
506
+ "pattern": "^\\/Game\\/"
507
+ },
508
+ {
509
+ "maxLength": 4096
510
+ }
511
+ ]
512
+ }
513
+ },
514
+ "required": [
515
+ "kind",
516
+ "actorPath"
517
+ ],
518
+ "additionalProperties": false
519
+ },
520
+ {
521
+ "type": "object",
522
+ "properties": {
523
+ "kind": {
524
+ "type": "string",
525
+ "enum": [
526
+ "actor_guid"
527
+ ]
528
+ },
529
+ "actorGuid": {
530
+ "type": "string",
531
+ "allOf": [
532
+ {
533
+ "pattern": "^(?!00000000-00000000-00000000-00000000$)[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{8}){3}$"
534
+ }
535
+ ]
536
+ },
537
+ "lastKnownActorPath": {
538
+ "type": "string",
539
+ "allOf": [
540
+ {
541
+ "maxLength": 4096
542
+ }
543
+ ]
544
+ }
545
+ },
546
+ "required": [
547
+ "kind",
548
+ "actorGuid",
549
+ "lastKnownActorPath"
550
+ ],
551
+ "additionalProperties": false
552
+ }
553
+ ]
554
+ },
555
+ "label": {
556
+ "type": "string",
557
+ "allOf": [
558
+ {
559
+ "maxLength": 256
560
+ }
561
+ ]
562
+ }
563
+ },
564
+ "required": [
565
+ "locator",
566
+ "label"
567
+ ],
568
+ "additionalProperties": false
569
+ },
570
+ "allOf": [
571
+ {
572
+ "maxItems": 256
573
+ }
574
+ ]
575
+ },
576
+ "protect": {
577
+ "type": "array",
578
+ "items": {
579
+ "type": "object",
580
+ "properties": {
581
+ "locator": {
582
+ "anyOf": [
583
+ {
584
+ "type": "object",
585
+ "properties": {
586
+ "kind": {
587
+ "type": "string",
588
+ "enum": [
589
+ "actor_path"
590
+ ]
591
+ },
592
+ "actorPath": {
593
+ "type": "string",
594
+ "allOf": [
595
+ {
596
+ "pattern": "^\\/Game\\/"
597
+ },
598
+ {
599
+ "maxLength": 4096
600
+ }
601
+ ]
602
+ }
603
+ },
604
+ "required": [
605
+ "kind",
606
+ "actorPath"
607
+ ],
608
+ "additionalProperties": false
609
+ },
610
+ {
611
+ "type": "object",
612
+ "properties": {
613
+ "kind": {
614
+ "type": "string",
615
+ "enum": [
616
+ "actor_guid"
617
+ ]
618
+ },
619
+ "actorGuid": {
620
+ "type": "string",
621
+ "allOf": [
622
+ {
623
+ "pattern": "^(?!00000000-00000000-00000000-00000000$)[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{8}){3}$"
624
+ }
625
+ ]
626
+ },
627
+ "lastKnownActorPath": {
628
+ "type": "string",
629
+ "allOf": [
630
+ {
631
+ "maxLength": 4096
632
+ }
633
+ ]
634
+ }
635
+ },
636
+ "required": [
637
+ "kind",
638
+ "actorGuid",
639
+ "lastKnownActorPath"
640
+ ],
641
+ "additionalProperties": false
642
+ }
643
+ ]
644
+ },
645
+ "label": {
646
+ "type": "string",
647
+ "allOf": [
648
+ {
649
+ "maxLength": 256
650
+ }
651
+ ]
652
+ }
653
+ },
654
+ "required": [
655
+ "locator",
656
+ "label"
657
+ ],
658
+ "additionalProperties": false
659
+ },
660
+ "allOf": [
661
+ {
662
+ "maxItems": 256
663
+ }
664
+ ]
665
+ }
666
+ },
667
+ "required": ["hide", "protect"],
668
+ "additionalProperties": false
669
+ },
670
+ "renderer": {
671
+ "anyOf": [
672
+ {
673
+ "type": "object",
674
+ "properties": {
675
+ "kind": {
676
+ "type": "string",
677
+ "enum": [
678
+ "editor_viewport"
679
+ ]
680
+ },
681
+ "strategy": {
682
+ "type": "string",
683
+ "enum": [
684
+ "high_resolution_screenshot"
685
+ ]
686
+ },
687
+ "profile": {
688
+ "type": "string",
689
+ "enum": [
690
+ "lit",
691
+ "observation"
692
+ ]
693
+ },
694
+ "vignette": {
695
+ "type": "string",
696
+ "enum": [
697
+ "project",
698
+ "disabled"
699
+ ]
700
+ },
701
+ "fog": {
702
+ "type": "boolean"
703
+ },
704
+ "volumetricFog": {
705
+ "type": "boolean"
706
+ },
707
+ "editorPreviews": {
708
+ "type": "boolean"
709
+ }
710
+ },
711
+ "required": [
712
+ "kind",
713
+ "strategy",
714
+ "profile",
715
+ "vignette",
716
+ "fog",
717
+ "volumetricFog"
718
+ ],
719
+ "additionalProperties": false
720
+ },
721
+ {
722
+ "type": "object",
723
+ "properties": {
724
+ "kind": {
725
+ "type": "string",
726
+ "enum": [
727
+ "scene_capture"
728
+ ]
729
+ },
730
+ "profile": {
731
+ "type": "string",
732
+ "enum": [
733
+ "full_fidelity",
734
+ "seam_stable",
735
+ "scene_capture_defaults",
736
+ "observation"
737
+ ]
738
+ },
739
+ "lodDistanceScale": {
740
+ "type": "number",
741
+ "allOf": [
742
+ {
743
+ "minimum": 0.1,
744
+ "maximum": 100
745
+ }
746
+ ]
747
+ },
748
+ "fog": {
749
+ "type": "boolean"
750
+ },
751
+ "volumetricFog": {
752
+ "type": "boolean"
753
+ },
754
+ "editorPreviews": {
755
+ "type": "boolean"
756
+ }
757
+ },
758
+ "required": [
759
+ "kind",
760
+ "profile",
761
+ "lodDistanceScale",
762
+ "fog",
763
+ "volumetricFog"
764
+ ],
765
+ "additionalProperties": false
766
+ }
767
+ ]
768
+ },
769
+ "exposure": {
770
+ "anyOf": [
771
+ {
772
+ "type": "object",
773
+ "properties": {
774
+ "mode": {
775
+ "type": "string",
776
+ "enum": [
777
+ "project_auto"
778
+ ]
779
+ }
780
+ },
781
+ "required": ["mode"],
782
+ "additionalProperties": false
783
+ },
784
+ {
785
+ "type": "object",
786
+ "properties": {
787
+ "mode": {
788
+ "type": "string",
789
+ "enum": [
790
+ "fixed_ev100"
791
+ ]
792
+ },
793
+ "ev100": {
794
+ "type": "number",
795
+ "allOf": [
796
+ {
797
+ "minimum": -20,
798
+ "maximum": 30
799
+ }
800
+ ]
801
+ },
802
+ "compensation": {
803
+ "type": "string",
804
+ "enum": ["project"]
805
+ }
806
+ },
807
+ "required": [
808
+ "mode",
809
+ "ev100",
810
+ "compensation"
811
+ ],
812
+ "additionalProperties": false
813
+ },
814
+ {
815
+ "type": "object",
816
+ "properties": {
817
+ "mode": {
818
+ "type": "string",
819
+ "enum": [
820
+ "meter_once"
821
+ ]
822
+ },
823
+ "referenceCamera": {
824
+ "type": "object",
825
+ "properties": {
826
+ "location": {
827
+ "type": "object",
828
+ "properties": {
829
+ "x": {
830
+ "type": "number"
831
+ },
832
+ "y": {
833
+ "type": "number"
834
+ },
835
+ "z": {
836
+ "type": "number"
837
+ }
838
+ },
839
+ "required": [
840
+ "x",
841
+ "y",
842
+ "z"
843
+ ],
844
+ "additionalProperties": false
845
+ },
846
+ "rotation": {
847
+ "type": "object",
848
+ "properties": {
849
+ "pitch": {
850
+ "type": "number"
851
+ },
852
+ "roll": {
853
+ "type": "number"
854
+ },
855
+ "yaw": {
856
+ "type": "number"
857
+ }
858
+ },
859
+ "required": [
860
+ "pitch",
861
+ "roll",
862
+ "yaw"
863
+ ],
864
+ "additionalProperties": false
865
+ },
866
+ "projection": {
867
+ "anyOf": [
868
+ {
869
+ "type": "object",
870
+ "properties": {
871
+ "kind": {
872
+ "type": "string",
873
+ "enum": [
874
+ "perspective"
875
+ ]
876
+ },
877
+ "horizontalFieldOfView": {
878
+ "type": "number",
879
+ "allOf": [
880
+ {
881
+ "minimum": 5,
882
+ "maximum": 170
883
+ }
884
+ ]
885
+ }
886
+ },
887
+ "required": [
888
+ "kind",
889
+ "horizontalFieldOfView"
890
+ ],
891
+ "additionalProperties": false
892
+ },
893
+ {
894
+ "type": "object",
895
+ "properties": {
896
+ "kind": {
897
+ "type": "string",
898
+ "enum": [
899
+ "orthographic"
900
+ ]
901
+ },
902
+ "width": {
903
+ "type": "number",
904
+ "allOf": [
905
+ {
906
+ "exclusiveMinimum": 0
907
+ },
908
+ {
909
+ "maximum": 1000000000
910
+ }
911
+ ]
912
+ }
913
+ },
914
+ "required": [
915
+ "kind",
916
+ "width"
917
+ ],
918
+ "additionalProperties": false
919
+ }
920
+ ]
921
+ }
922
+ },
923
+ "required": [
924
+ "location",
925
+ "rotation",
926
+ "projection"
927
+ ],
928
+ "additionalProperties": false
929
+ },
930
+ "referenceSize": {
931
+ "type": "object",
932
+ "properties": {
933
+ "width": {
934
+ "type": "integer",
935
+ "allOf": [
936
+ {
937
+ "minimum": 16,
938
+ "maximum": 16384
939
+ }
940
+ ]
941
+ },
942
+ "height": {
943
+ "type": "integer",
944
+ "allOf": [
945
+ {
946
+ "minimum": 16,
947
+ "maximum": 16384
948
+ }
949
+ ]
950
+ }
951
+ },
952
+ "required": [
953
+ "width",
954
+ "height"
955
+ ],
956
+ "additionalProperties": false
957
+ },
958
+ "minimumFrames": {
959
+ "type": "integer",
960
+ "allOf": [
961
+ {
962
+ "minimum": 1,
963
+ "maximum": 4096
964
+ }
965
+ ]
966
+ }
967
+ },
968
+ "required": [
969
+ "mode",
970
+ "referenceCamera",
971
+ "referenceSize",
972
+ "minimumFrames"
973
+ ],
974
+ "additionalProperties": false
975
+ }
976
+ ]
977
+ },
978
+ "settling": {
979
+ "type": "object",
980
+ "properties": {
981
+ "minimumFrames": {
982
+ "type": "integer",
983
+ "allOf": [
984
+ {
985
+ "minimum": 1,
986
+ "maximum": 4096
987
+ }
988
+ ]
989
+ },
990
+ "timeoutMs": {
991
+ "type": "integer",
992
+ "allOf": [
993
+ {
994
+ "minimum": 1000,
995
+ "maximum": 900000
996
+ }
997
+ ]
998
+ },
999
+ "initialView": {
1000
+ "type": "object",
1001
+ "properties": {
1002
+ "camera": {
1003
+ "type": "object",
1004
+ "properties": {
1005
+ "location": {
1006
+ "type": "object",
1007
+ "properties": {
1008
+ "x": {
1009
+ "type": "number"
1010
+ },
1011
+ "y": {
1012
+ "type": "number"
1013
+ },
1014
+ "z": {
1015
+ "type": "number"
1016
+ }
1017
+ },
1018
+ "required": [
1019
+ "x",
1020
+ "y",
1021
+ "z"
1022
+ ],
1023
+ "additionalProperties": false
1024
+ },
1025
+ "rotation": {
1026
+ "type": "object",
1027
+ "properties": {
1028
+ "pitch": {
1029
+ "type": "number"
1030
+ },
1031
+ "roll": {
1032
+ "type": "number"
1033
+ },
1034
+ "yaw": {
1035
+ "type": "number"
1036
+ }
1037
+ },
1038
+ "required": [
1039
+ "pitch",
1040
+ "roll",
1041
+ "yaw"
1042
+ ],
1043
+ "additionalProperties": false
1044
+ },
1045
+ "projection": {
1046
+ "anyOf": [
1047
+ {
1048
+ "type": "object",
1049
+ "properties": {
1050
+ "kind": {
1051
+ "type": "string",
1052
+ "enum": [
1053
+ "perspective"
1054
+ ]
1055
+ },
1056
+ "horizontalFieldOfView": {
1057
+ "type": "number",
1058
+ "allOf": [
1059
+ {
1060
+ "minimum": 5,
1061
+ "maximum": 170
1062
+ }
1063
+ ]
1064
+ }
1065
+ },
1066
+ "required": [
1067
+ "kind",
1068
+ "horizontalFieldOfView"
1069
+ ],
1070
+ "additionalProperties": false
1071
+ },
1072
+ {
1073
+ "type": "object",
1074
+ "properties": {
1075
+ "kind": {
1076
+ "type": "string",
1077
+ "enum": [
1078
+ "orthographic"
1079
+ ]
1080
+ },
1081
+ "width": {
1082
+ "type": "number",
1083
+ "allOf": [
1084
+ {
1085
+ "exclusiveMinimum": 0
1086
+ },
1087
+ {
1088
+ "maximum": 1000000000
1089
+ }
1090
+ ]
1091
+ }
1092
+ },
1093
+ "required": [
1094
+ "kind",
1095
+ "width"
1096
+ ],
1097
+ "additionalProperties": false
1098
+ }
1099
+ ]
1100
+ }
1101
+ },
1102
+ "required": [
1103
+ "location",
1104
+ "rotation",
1105
+ "projection"
1106
+ ],
1107
+ "additionalProperties": false
1108
+ },
1109
+ "size": {
1110
+ "type": "object",
1111
+ "properties": {
1112
+ "width": {
1113
+ "type": "integer",
1114
+ "allOf": [
1115
+ {
1116
+ "minimum": 16,
1117
+ "maximum": 16384
1118
+ }
1119
+ ]
1120
+ },
1121
+ "height": {
1122
+ "type": "integer",
1123
+ "allOf": [
1124
+ {
1125
+ "minimum": 16,
1126
+ "maximum": 16384
1127
+ }
1128
+ ]
1129
+ }
1130
+ },
1131
+ "required": [
1132
+ "width",
1133
+ "height"
1134
+ ],
1135
+ "additionalProperties": false
1136
+ },
1137
+ "minimumFrames": {
1138
+ "type": "integer",
1139
+ "allOf": [
1140
+ {
1141
+ "minimum": 1,
1142
+ "maximum": 4096
1143
+ }
1144
+ ]
1145
+ }
1146
+ },
1147
+ "required": [
1148
+ "camera",
1149
+ "size",
1150
+ "minimumFrames"
1151
+ ],
1152
+ "additionalProperties": false
1153
+ }
1154
+ },
1155
+ "required": [
1156
+ "minimumFrames",
1157
+ "timeoutMs"
1158
+ ],
1159
+ "additionalProperties": false
1160
+ },
1161
+ "time": {
1162
+ "type": "string",
1163
+ "enum": [
1164
+ "live_editor",
1165
+ "freeze_materials_and_ticks"
1166
+ ]
1167
+ },
1168
+ "preparation": {
1169
+ "type": "object",
1170
+ "properties": {
1171
+ "geometry": {
1172
+ "anyOf": [
1173
+ {
1174
+ "type": "object",
1175
+ "properties": {
1176
+ "mode": {
1177
+ "type": "string",
1178
+ "enum": [
1179
+ "preserve_loading"
1180
+ ]
1181
+ }
1182
+ },
1183
+ "required": [
1184
+ "mode"
1185
+ ],
1186
+ "additionalProperties": false
1187
+ },
1188
+ {
1189
+ "type": "object",
1190
+ "properties": {
1191
+ "mode": {
1192
+ "type": "string",
1193
+ "enum": [
1194
+ "camera_regions"
1195
+ ]
1196
+ },
1197
+ "maximumRegions": {
1198
+ "type": "integer",
1199
+ "allOf": [
1200
+ {
1201
+ "minimum": 1,
1202
+ "maximum": 64
1203
+ }
1204
+ ]
1205
+ },
1206
+ "extent": {
1207
+ "type": "object",
1208
+ "properties": {
1209
+ "x": {
1210
+ "type": "number",
1211
+ "allOf": [
1212
+ {
1213
+ "minimum": 0,
1214
+ "maximum": 10000000
1215
+ }
1216
+ ]
1217
+ },
1218
+ "y": {
1219
+ "type": "number",
1220
+ "allOf": [
1221
+ {
1222
+ "minimum": 0,
1223
+ "maximum": 10000000
1224
+ }
1225
+ ]
1226
+ },
1227
+ "z": {
1228
+ "type": "number",
1229
+ "allOf": [
1230
+ {
1231
+ "minimum": 0,
1232
+ "maximum": 10000000
1233
+ }
1234
+ ]
1235
+ }
1236
+ },
1237
+ "required": [
1238
+ "x",
1239
+ "y",
1240
+ "z"
1241
+ ],
1242
+ "additionalProperties": false
1243
+ }
1244
+ },
1245
+ "required": [
1246
+ "mode",
1247
+ "maximumRegions",
1248
+ "extent"
1249
+ ],
1250
+ "additionalProperties": false
1251
+ }
1252
+ ]
1253
+ },
1254
+ "dataLayers": {
1255
+ "type": "array",
1256
+ "items": {
1257
+ "type": "object",
1258
+ "properties": {
1259
+ "assetPath": {
1260
+ "type": "string",
1261
+ "allOf": [
1262
+ {
1263
+ "pattern": "^\\/[A-Za-z0-9_./-]+$"
1264
+ },
1265
+ {
1266
+ "maxLength": 1024
1267
+ }
1268
+ ]
1269
+ },
1270
+ "loaded": {
1271
+ "type": "boolean"
1272
+ },
1273
+ "visible": {
1274
+ "type": "boolean"
1275
+ }
1276
+ },
1277
+ "required": [
1278
+ "assetPath",
1279
+ "loaded",
1280
+ "visible"
1281
+ ],
1282
+ "additionalProperties": false
1283
+ },
1284
+ "allOf": [
1285
+ {
1286
+ "maxItems": 64
1287
+ }
1288
+ ]
1289
+ }
1290
+ },
1291
+ "required": [
1292
+ "geometry",
1293
+ "dataLayers"
1294
+ ],
1295
+ "additionalProperties": false
1296
+ }
1297
+ },
1298
+ "required": [
1299
+ "renderer",
1300
+ "exposure",
1301
+ "settling",
1302
+ "time",
1303
+ "preparation"
1304
+ ],
1305
+ "additionalProperties": false
1306
+ },
1307
+ "exposureEV100": {
1308
+ "anyOf": [
1309
+ {
1310
+ "type": "number"
1311
+ },
1312
+ {
1313
+ "type": "null"
1314
+ }
1315
+ ]
1316
+ },
1317
+ "preparation": {
1318
+ "type": "object",
1319
+ "properties": {
1320
+ "status": {
1321
+ "type": "string",
1322
+ "enum": [
1323
+ "preserved",
1324
+ "ready",
1325
+ "partial"
1326
+ ]
1327
+ },
1328
+ "regionsHeld": {
1329
+ "type": "integer",
1330
+ "allOf": [
1331
+ {
1332
+ "minimum": 0,
1333
+ "maximum": 64
1334
+ }
1335
+ ]
1336
+ },
1337
+ "dataLayersApplied": {
1338
+ "type": "integer",
1339
+ "allOf": [
1340
+ {
1341
+ "minimum": 0,
1342
+ "maximum": 64
1343
+ }
1344
+ ]
1345
+ },
1346
+ "limitations": {
1347
+ "type": "array",
1348
+ "items": {
1349
+ "type": "string",
1350
+ "allOf": [
1351
+ {
1352
+ "minLength": 1
1353
+ },
1354
+ {
1355
+ "maxLength": 1024
1356
+ }
1357
+ ]
1358
+ }
1359
+ }
1360
+ },
1361
+ "required": [
1362
+ "status",
1363
+ "regionsHeld",
1364
+ "dataLayersApplied",
1365
+ "limitations"
1366
+ ],
1367
+ "additionalProperties": false
1368
+ },
1369
+ "settling": {
1370
+ "type": "object",
1371
+ "properties": {
1372
+ "renderedFrames": {
1373
+ "type": "integer",
1374
+ "allOf": [
1375
+ {
1376
+ "minimum": 0,
1377
+ "maximum": 1000000
1378
+ }
1379
+ ]
1380
+ },
1381
+ "elapsedMs": {
1382
+ "type": "number",
1383
+ "allOf": [
1384
+ {
1385
+ "minimum": 0
1386
+ }
1387
+ ]
1388
+ },
1389
+ "convergence": {
1390
+ "type": "string",
1391
+ "enum": ["not_assessed"]
1392
+ }
1393
+ },
1394
+ "required": [
1395
+ "renderedFrames",
1396
+ "elapsedMs",
1397
+ "convergence"
1398
+ ],
1399
+ "additionalProperties": false
1400
+ },
1401
+ "engineVersion": {
1402
+ "type": "string",
1403
+ "allOf": [
1404
+ {
1405
+ "minLength": 1
1406
+ },
1407
+ {
1408
+ "maxLength": 1024
1409
+ }
1410
+ ]
1411
+ },
1412
+ "pluginVersion": {
1413
+ "type": "string",
1414
+ "allOf": [
1415
+ {
1416
+ "minLength": 1
1417
+ },
1418
+ {
1419
+ "maxLength": 1024
1420
+ }
1421
+ ]
1422
+ }
1423
+ },
1424
+ "required": [
1425
+ "editorState",
1426
+ "camera",
1427
+ "size",
1428
+ "policy",
1429
+ "exposureEV100",
1430
+ "preparation",
1431
+ "settling",
1432
+ "engineVersion",
1433
+ "pluginVersion"
1434
+ ],
1435
+ "additionalProperties": false
1436
+ },
1437
+ "bytes": {
1438
+ "type": "integer",
1439
+ "allOf": [
1440
+ {
1441
+ "exclusiveMinimum": 0
1442
+ }
1443
+ ]
1444
+ },
1445
+ "captureDurationMs": {
1446
+ "type": "number",
1447
+ "allOf": [
1448
+ {
1449
+ "minimum": 0
1450
+ }
1451
+ ]
1452
+ },
1453
+ "height": {
1454
+ "type": "integer",
1455
+ "allOf": [
1456
+ {
1457
+ "exclusiveMinimum": 0
1458
+ }
1459
+ ]
1460
+ },
1461
+ "key": {
1462
+ "type": "object",
1463
+ "properties": {
1464
+ "zoom": {
1465
+ "type": "integer",
1466
+ "allOf": [
1467
+ {
1468
+ "minimum": 0
1469
+ }
1470
+ ]
1471
+ },
1472
+ "row": {
1473
+ "type": "integer",
1474
+ "allOf": [
1475
+ {
1476
+ "minimum": 0
1477
+ }
1478
+ ]
1479
+ },
1480
+ "column": {
1481
+ "type": "integer",
1482
+ "allOf": [
1483
+ {
1484
+ "minimum": 0
1485
+ }
1486
+ ]
1487
+ }
1488
+ },
1489
+ "required": ["zoom", "row", "column"],
1490
+ "additionalProperties": false
1491
+ },
1492
+ "stagedPath": {
1493
+ "type": "string",
1494
+ "allOf": [
1495
+ {
1496
+ "minLength": 1
1497
+ },
1498
+ {
1499
+ "maxLength": 1024
1500
+ }
1501
+ ]
1502
+ },
1503
+ "status": {
1504
+ "type": "string",
1505
+ "enum": ["captured"]
1506
+ },
1507
+ "width": {
1508
+ "type": "integer",
1509
+ "allOf": [
1510
+ {
1511
+ "exclusiveMinimum": 0
1512
+ }
1513
+ ]
1514
+ }
1515
+ },
1516
+ "required": [
1517
+ "bytes",
1518
+ "captureDurationMs",
1519
+ "height",
1520
+ "key",
1521
+ "stagedPath",
1522
+ "status",
1523
+ "width"
1524
+ ],
1525
+ "additionalProperties": false
1526
+ },
1527
+ {
1528
+ "type": "object",
1529
+ "properties": {
1530
+ "failure": {
1531
+ "type": "object",
1532
+ "properties": {
1533
+ "code": {
1534
+ "type": "string",
1535
+ "enum": [
1536
+ "cancelled",
1537
+ "capture_failed",
1538
+ "data_layer_policy_unsupported",
1539
+ "dirty_state_changed",
1540
+ "encoding_failed",
1541
+ "invalid_request",
1542
+ "map_mismatch",
1543
+ "streaming_not_ready",
1544
+ "write_failed"
1545
+ ]
1546
+ },
1547
+ "message": {
1548
+ "type": "string",
1549
+ "allOf": [
1550
+ {
1551
+ "minLength": 1
1552
+ },
1553
+ {
1554
+ "maxLength": 1024
1555
+ }
1556
+ ]
1557
+ },
1558
+ "recovery": {
1559
+ "type": "string",
1560
+ "allOf": [
1561
+ {
1562
+ "minLength": 1
1563
+ },
1564
+ {
1565
+ "maxLength": 1024
1566
+ }
1567
+ ]
1568
+ },
1569
+ "retrySafe": {
1570
+ "type": "boolean"
1571
+ }
1572
+ },
1573
+ "required": [
1574
+ "code",
1575
+ "message",
1576
+ "recovery",
1577
+ "retrySafe"
1578
+ ],
1579
+ "additionalProperties": false
1580
+ },
1581
+ "key": {
1582
+ "type": "object",
1583
+ "properties": {
1584
+ "zoom": {
1585
+ "type": "integer",
1586
+ "allOf": [
1587
+ {
1588
+ "minimum": 0
1589
+ }
1590
+ ]
1591
+ },
1592
+ "row": {
1593
+ "type": "integer",
1594
+ "allOf": [
1595
+ {
1596
+ "minimum": 0
1597
+ }
1598
+ ]
1599
+ },
1600
+ "column": {
1601
+ "type": "integer",
1602
+ "allOf": [
1603
+ {
1604
+ "minimum": 0
1605
+ }
1606
+ ]
1607
+ }
1608
+ },
1609
+ "required": ["zoom", "row", "column"],
1610
+ "additionalProperties": false
1611
+ },
1612
+ "status": {
1613
+ "type": "string",
1614
+ "enum": ["failed"]
1615
+ }
1616
+ },
1617
+ "required": ["failure", "key", "status"],
1618
+ "additionalProperties": false
1619
+ }
1620
+ ]
1621
+ },
1622
+ "allOf": [
1623
+ {
1624
+ "maxItems": 64
1625
+ }
1626
+ ]
1627
+ },
1628
+ "status": {
1629
+ "type": "string",
1630
+ "enum": ["completed", "partial", "cancelled", "failed"]
1631
+ },
1632
+ "tileCounts": {
1633
+ "type": "object",
1634
+ "properties": {
1635
+ "failed": {
1636
+ "type": "integer",
1637
+ "allOf": [
1638
+ {
1639
+ "minimum": 0
1640
+ }
1641
+ ]
1642
+ },
1643
+ "requested": {
1644
+ "type": "integer",
1645
+ "allOf": [
1646
+ {
1647
+ "minimum": 0
1648
+ }
1649
+ ]
1650
+ },
1651
+ "succeeded": {
1652
+ "type": "integer",
1653
+ "allOf": [
1654
+ {
1655
+ "minimum": 0
1656
+ }
1657
+ ]
1658
+ }
1659
+ },
1660
+ "required": ["failed", "requested", "succeeded"],
1661
+ "additionalProperties": false
1662
+ }
1663
+ },
1664
+ "required": [
1665
+ "contract",
1666
+ "correlationId",
1667
+ "dirtyState",
1668
+ "durationMs",
1669
+ "operationId",
1670
+ "results",
1671
+ "status",
1672
+ "tileCounts"
1673
+ ],
1674
+ "additionalProperties": false
65
1675
  }
66
- }
1676
+ },
1677
+ "required": ["state", "response"],
1678
+ "additionalProperties": false
67
1679
  }
68
- ]
1680
+ ],
1681
+ "$defs": {}
69
1682
  }