@toolproof-core/schema 1.0.2 → 1.0.3

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 (32) hide show
  1. package/dist/generated/dependencyMap.json +292 -0
  2. package/dist/generated/normalized/Genesis.d.ts +2 -0
  3. package/dist/generated/normalized/Genesis.js +2 -0
  4. package/dist/generated/normalized/Genesis.json +2000 -0
  5. package/dist/generated/resources/Genesis.d.ts +2 -0
  6. package/dist/generated/resources/Genesis.js +2 -0
  7. package/dist/generated/resources/Genesis.json +2899 -0
  8. package/dist/generated/schemas/Genesis.d.ts +2 -0
  9. package/dist/generated/schemas/Genesis.js +2 -0
  10. package/dist/generated/schemas/Genesis.json +1458 -0
  11. package/dist/generated/schemas/standalone/Goal.d.ts +2 -0
  12. package/dist/generated/schemas/standalone/Goal.js +2 -0
  13. package/dist/generated/schemas/standalone/Goal.json +86 -0
  14. package/dist/generated/schemas/standalone/Job.d.ts +2 -0
  15. package/dist/generated/schemas/standalone/Job.js +2 -0
  16. package/dist/generated/schemas/standalone/Job.json +236 -0
  17. package/dist/generated/schemas/standalone/RawStrategy.d.ts +2 -0
  18. package/dist/generated/schemas/standalone/RawStrategy.js +2 -0
  19. package/dist/generated/schemas/standalone/RawStrategy.json +642 -0
  20. package/dist/generated/schemas/standalone/ResourceType.d.ts +2 -0
  21. package/dist/generated/schemas/standalone/ResourceType.js +2 -0
  22. package/dist/generated/schemas/standalone/ResourceType.json +140 -0
  23. package/dist/generated/schemas/standalone/RunnableStrategy.d.ts +2 -0
  24. package/dist/generated/schemas/standalone/RunnableStrategy.js +2 -0
  25. package/dist/generated/schemas/standalone/RunnableStrategy.json +712 -0
  26. package/dist/generated/schemas/standalone/StrategyRun.d.ts +2 -0
  27. package/dist/generated/schemas/standalone/StrategyRun.js +2 -0
  28. package/dist/generated/schemas/standalone/StrategyRun.json +994 -0
  29. package/dist/index.d.ts +13 -0
  30. package/dist/index.js +7 -0
  31. package/package.json +2 -2
  32. package/src/index.ts +93 -1
@@ -0,0 +1,712 @@
1
+ {
2
+ "$anchor": "RunnableStrategy",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "type": "object",
5
+ "required": [
6
+ "identity",
7
+ "runnableStrategyContext"
8
+ ],
9
+ "properties": {
10
+ "identity": {
11
+ "$ref": "#/$defs/RunnableStrategyIdentity"
12
+ },
13
+ "runnableStrategyContext": {
14
+ "$ref": "#/$defs/RunnableStrategyContext"
15
+ }
16
+ },
17
+ "allOf": [
18
+ {
19
+ "$comment": "The Engine runs jobs specified by steps in strategyThreadMap. The Engine also injects repeted steps when encountering loops.",
20
+ "$ref": "#/$defs/StrategyThreadMapFacet"
21
+ },
22
+ {
23
+ "$comment": "The Engine updates strategyState with materialized Resources upon job completions and runtime-provided input events. It also inserts input-potential and output-potential Resources upon step injections.",
24
+ "$ref": "#/$defs/StrategyStateFacet"
25
+ }
26
+ ],
27
+ "unevaluatedProperties": false,
28
+ "$defs": {
29
+ "RunnableStrategyIdentity": {
30
+ "$anchor": "RunnableStrategyIdentity",
31
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
32
+ "type": "string",
33
+ "pattern": "^RUNNABLE_STRATEGY-.+$"
34
+ },
35
+ "RunnableStrategyContext": {
36
+ "$anchor": "RunnableStrategyContext",
37
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
38
+ "type": "object",
39
+ "required": [
40
+ "status"
41
+ ],
42
+ "properties": {
43
+ "status": {
44
+ "$ref": "#/$defs/RunnableStrategyStatus"
45
+ },
46
+ "startedAt": {
47
+ "$ref": "#/$defs/Timestamp"
48
+ },
49
+ "completedAt": {
50
+ "$ref": "#/$defs/Timestamp"
51
+ }
52
+ },
53
+ "unevaluatedProperties": false
54
+ },
55
+ "StrategyThreadMapFacet": {
56
+ "$anchor": "StrategyThreadMapFacet",
57
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
58
+ "type": "object",
59
+ "required": [
60
+ "strategyThreadMap"
61
+ ],
62
+ "properties": {
63
+ "strategyThreadMap": {
64
+ "$ref": "#/$defs/StrategyThreadMap"
65
+ }
66
+ }
67
+ },
68
+ "StrategyStateFacet": {
69
+ "$anchor": "StrategyStateFacet",
70
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
71
+ "type": "object",
72
+ "required": [
73
+ "strategyState"
74
+ ],
75
+ "properties": {
76
+ "strategyState": {
77
+ "$ref": "#/$defs/StrategyState"
78
+ }
79
+ }
80
+ },
81
+ "RunnableStrategyStatus": {
82
+ "$anchor": "RunnableStrategyStatus",
83
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
84
+ "type": "string",
85
+ "enum": [
86
+ "pending",
87
+ "running",
88
+ "completed",
89
+ "failed",
90
+ "cancelled"
91
+ ]
92
+ },
93
+ "Timestamp": {
94
+ "$anchor": "Timestamp",
95
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
96
+ "type": "string",
97
+ "format": "date-time"
98
+ },
99
+ "StrategyThreadMap": {
100
+ "$anchor": "StrategyThreadMap",
101
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
102
+ "type": "object",
103
+ "propertyNames": {
104
+ "$ref": "#/$defs/StrategyThreadIdentity"
105
+ },
106
+ "additionalProperties": {
107
+ "$ref": "#/$defs/StepArray"
108
+ },
109
+ "$comment": "Each thread contains an array of steps, allowing for sequential execution within a thread while supporting parallel execution across multiple threads."
110
+ },
111
+ "StrategyState": {
112
+ "$anchor": "StrategyState",
113
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
114
+ "type": "object",
115
+ "propertyNames": {
116
+ "$ref": "#/$defs/JobStepIdentity"
117
+ },
118
+ "additionalProperties": {
119
+ "$ref": "#/$defs/JobStepSocket"
120
+ }
121
+ },
122
+ "StrategyThreadIdentity": {
123
+ "$anchor": "StrategyThreadIdentity",
124
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
125
+ "type": "string",
126
+ "pattern": "^STRATEGY_THREAD-.+$"
127
+ },
128
+ "StepArray": {
129
+ "$anchor": "StepArray",
130
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
131
+ "type": "array",
132
+ "items": {
133
+ "$ref": "#/$defs/Step"
134
+ },
135
+ "uniqueItems": true
136
+ },
137
+ "JobStepIdentity": {
138
+ "$anchor": "JobStepIdentity",
139
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
140
+ "type": "string",
141
+ "pattern": "^JOB_STEP-.+$"
142
+ },
143
+ "JobStepSocket": {
144
+ "$anchor": "JobStepSocket",
145
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
146
+ "type": "object",
147
+ "propertyNames": {
148
+ "$ref": "#/$defs/ResourceRoleIdentity"
149
+ },
150
+ "additionalProperties": {
151
+ "$ref": "#/$defs/Resource"
152
+ }
153
+ },
154
+ "Step": {
155
+ "$anchor": "Step",
156
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
157
+ "type": "object",
158
+ "oneOf": [
159
+ {
160
+ "$ref": "#/$defs/JobStep"
161
+ },
162
+ {
163
+ "$ref": "#/$defs/BranchStep"
164
+ },
165
+ {
166
+ "$ref": "#/$defs/WhileStep"
167
+ },
168
+ {
169
+ "$ref": "#/$defs/ForStep"
170
+ }
171
+ ],
172
+ "unevaluatedProperties": false
173
+ },
174
+ "ResourceRoleIdentity": {
175
+ "$anchor": "ResourceRoleIdentity",
176
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
177
+ "type": "string",
178
+ "pattern": "^ROLE-.+$"
179
+ },
180
+ "Resource": {
181
+ "$anchor": "Resource",
182
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
183
+ "type": "object",
184
+ "oneOf": [
185
+ {
186
+ "$ref": "#/$defs/ResourceMissing"
187
+ },
188
+ {
189
+ "$ref": "#/$defs/ResourceInputPotential"
190
+ },
191
+ {
192
+ "$ref": "#/$defs/ResourceOutputPotential"
193
+ },
194
+ {
195
+ "$ref": "#/$defs/ResourceMaterialized"
196
+ }
197
+ ],
198
+ "unevaluatedProperties": false
199
+ },
200
+ "JobStep": {
201
+ "$anchor": "JobStep",
202
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
203
+ "type": "object",
204
+ "required": [
205
+ "identity",
206
+ "jobHandle"
207
+ ],
208
+ "properties": {
209
+ "identity": {
210
+ "$ref": "#/$defs/JobStepIdentity"
211
+ },
212
+ "stepKind": {
213
+ "const": "job"
214
+ },
215
+ "jobHandle": {
216
+ "$ref": "#/$defs/JobIdentity"
217
+ }
218
+ },
219
+ "allOf": [
220
+ {
221
+ "$ref": "#/$defs/StepKindFacet"
222
+ },
223
+ {
224
+ "$comment": "This will be overlayed dynamically to specify roleBindings corresponding to the roles of the underlying job.",
225
+ "$ref": "#/$defs/RoleBindingsFacet"
226
+ }
227
+ ]
228
+ },
229
+ "BranchStep": {
230
+ "$anchor": "BranchStep",
231
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
232
+ "type": "object",
233
+ "required": [
234
+ "identity",
235
+ "cases"
236
+ ],
237
+ "properties": {
238
+ "identity": {
239
+ "$ref": "#/$defs/BranchStepIdentity"
240
+ },
241
+ "stepKind": {
242
+ "const": "branch"
243
+ },
244
+ "cases": {
245
+ "type": "array",
246
+ "items": {
247
+ "$ref": "#/$defs/Conditional"
248
+ },
249
+ "minItems": 1,
250
+ "uniqueItems": true
251
+ }
252
+ },
253
+ "allOf": [
254
+ {
255
+ "$ref": "#/$defs/StepKindFacet"
256
+ }
257
+ ]
258
+ },
259
+ "WhileStep": {
260
+ "$anchor": "WhileStep",
261
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
262
+ "type": "object",
263
+ "required": [
264
+ "identity",
265
+ "case"
266
+ ],
267
+ "properties": {
268
+ "identity": {
269
+ "$ref": "#/$defs/WhileStepIdentity"
270
+ },
271
+ "stepKind": {
272
+ "const": "while"
273
+ },
274
+ "case": {
275
+ "$ref": "#/$defs/Conditional"
276
+ }
277
+ },
278
+ "allOf": [
279
+ {
280
+ "$ref": "#/$defs/StepKindFacet"
281
+ }
282
+ ]
283
+ },
284
+ "ForStep": {
285
+ "$anchor": "ForStep",
286
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
287
+ "type": "object",
288
+ "required": [
289
+ "identity",
290
+ "case"
291
+ ],
292
+ "properties": {
293
+ "identity": {
294
+ "$ref": "#/$defs/ForStepIdentity"
295
+ },
296
+ "stepKind": {
297
+ "const": "for"
298
+ },
299
+ "case": {
300
+ "$ref": "#/$defs/Conditional"
301
+ }
302
+ },
303
+ "allOf": [
304
+ {
305
+ "$ref": "#/$defs/StepKindFacet"
306
+ }
307
+ ]
308
+ },
309
+ "ResourceMissing": {
310
+ "$anchor": "ResourceMissing",
311
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
312
+ "type": "object",
313
+ "$ref": "#/$defs/ShellMissing",
314
+ "unevaluatedProperties": false
315
+ },
316
+ "ResourceInputPotential": {
317
+ "$anchor": "ResourceInputPotential",
318
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
319
+ "type": "object",
320
+ "$ref": "#/$defs/ShellInputPotential",
321
+ "unevaluatedProperties": false
322
+ },
323
+ "ResourceOutputPotential": {
324
+ "$anchor": "ResourceOutputPotential",
325
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
326
+ "type": "object",
327
+ "$ref": "#/$defs/ShellOutputPotential",
328
+ "unevaluatedProperties": false
329
+ },
330
+ "ResourceMaterialized": {
331
+ "$anchor": "ResourceMaterialized",
332
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
333
+ "type": "object",
334
+ "allOf": [
335
+ {
336
+ "$ref": "#/$defs/ShellMaterializedBase"
337
+ },
338
+ {
339
+ "$comment": "This will be overlayed dynamically to match the data structure of the underlying ResourceType's nucleusSchema.",
340
+ "$ref": "#/$defs/NucleusFacet"
341
+ }
342
+ ],
343
+ "unevaluatedProperties": false
344
+ },
345
+ "JobIdentity": {
346
+ "$anchor": "JobIdentity",
347
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
348
+ "type": "string",
349
+ "pattern": "^JOB-.+$"
350
+ },
351
+ "StepKindFacet": {
352
+ "$anchor": "StepKindFacet",
353
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
354
+ "type": "object",
355
+ "required": [
356
+ "stepKind"
357
+ ],
358
+ "properties": {
359
+ "stepKind": {
360
+ "$ref": "#/$defs/StepKind"
361
+ }
362
+ }
363
+ },
364
+ "RoleBindingsFacet": {
365
+ "$anchor": "RoleBindingsFacet",
366
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
367
+ "type": "object",
368
+ "required": [
369
+ "roleBindings"
370
+ ],
371
+ "properties": {
372
+ "roleBindings": {
373
+ "$ref": "#/$defs/RoleBindings"
374
+ }
375
+ }
376
+ },
377
+ "BranchStepIdentity": {
378
+ "$anchor": "BranchStepIdentity",
379
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
380
+ "type": "string",
381
+ "pattern": "^BRANCH_STEP-.+$"
382
+ },
383
+ "Conditional": {
384
+ "$anchor": "Conditional",
385
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
386
+ "type": "object",
387
+ "required": [
388
+ "when",
389
+ "what"
390
+ ],
391
+ "properties": {
392
+ "when": {
393
+ "$ref": "#/$defs/JobStep"
394
+ },
395
+ "what": {
396
+ "$ref": "#/$defs/JobStep"
397
+ }
398
+ },
399
+ "unevaluatedProperties": false
400
+ },
401
+ "WhileStepIdentity": {
402
+ "$anchor": "WhileStepIdentity",
403
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
404
+ "type": "string",
405
+ "pattern": "^WHILE_STEP-.+$"
406
+ },
407
+ "ForStepIdentity": {
408
+ "$anchor": "ForStepIdentity",
409
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
410
+ "type": "string",
411
+ "pattern": "^FOR_STEP-.+$"
412
+ },
413
+ "ShellMissing": {
414
+ "$anchor": "ShellMissing",
415
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
416
+ "type": "object",
417
+ "properties": {
418
+ "resourceKind": {
419
+ "const": "missing"
420
+ }
421
+ },
422
+ "allOf": [
423
+ {
424
+ "$ref": "#/$defs/ResourceBase"
425
+ },
426
+ {
427
+ "$ref": "#/$defs/ResourceKindFacet"
428
+ }
429
+ ],
430
+ "unevaluatedProperties": false
431
+ },
432
+ "ShellInputPotential": {
433
+ "$anchor": "ShellInputPotential",
434
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
435
+ "type": "object",
436
+ "properties": {
437
+ "resourceKind": {
438
+ "const": "input-potential"
439
+ }
440
+ },
441
+ "allOf": [
442
+ {
443
+ "$ref": "#/$defs/ResourceBase"
444
+ },
445
+ {
446
+ "$ref": "#/$defs/CreationContextFacet"
447
+ },
448
+ {
449
+ "$ref": "#/$defs/ResourceKindFacet"
450
+ }
451
+ ],
452
+ "unevaluatedProperties": false
453
+ },
454
+ "ShellOutputPotential": {
455
+ "$anchor": "ShellOutputPotential",
456
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
457
+ "type": "object",
458
+ "properties": {
459
+ "resourceKind": {
460
+ "const": "output-potential"
461
+ }
462
+ },
463
+ "allOf": [
464
+ {
465
+ "$ref": "#/$defs/ResourceBase"
466
+ },
467
+ {
468
+ "$ref": "#/$defs/CreationContextFacet"
469
+ },
470
+ {
471
+ "$ref": "#/$defs/ResourceKindFacet"
472
+ }
473
+ ],
474
+ "unevaluatedProperties": false
475
+ },
476
+ "ShellMaterializedBase": {
477
+ "$anchor": "ShellMaterializedBase",
478
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
479
+ "type": "object",
480
+ "required": [
481
+ "version"
482
+ ],
483
+ "properties": {
484
+ "version": {
485
+ "const": 1
486
+ },
487
+ "resourceKind": {
488
+ "const": "materialized"
489
+ }
490
+ },
491
+ "allOf": [
492
+ {
493
+ "$ref": "#/$defs/ResourceBase"
494
+ },
495
+ {
496
+ "$ref": "#/$defs/CreationContextFacet"
497
+ },
498
+ {
499
+ "$ref": "#/$defs/ResourceKindFacet"
500
+ },
501
+ {
502
+ "$ref": "#/$defs/TimestampFacet"
503
+ },
504
+ {
505
+ "$ref": "#/$defs/PathFacet"
506
+ }
507
+ ]
508
+ },
509
+ "NucleusFacet": {
510
+ "$anchor": "NucleusFacet",
511
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
512
+ "type": "object",
513
+ "required": [
514
+ "nucleus"
515
+ ],
516
+ "properties": {
517
+ "nucleus": {
518
+ "$ref": "#/$defs/Nucleus"
519
+ }
520
+ }
521
+ },
522
+ "StepKind": {
523
+ "$anchor": "StepKind",
524
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
525
+ "type": "string",
526
+ "enum": [
527
+ "job",
528
+ "branch",
529
+ "while",
530
+ "for"
531
+ ]
532
+ },
533
+ "RoleBindings": {
534
+ "$anchor": "RoleBindings",
535
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
536
+ "type": "object",
537
+ "required": [
538
+ "inputBindings",
539
+ "outputBindings"
540
+ ],
541
+ "properties": {
542
+ "inputBindings": {
543
+ "$ref": "#/$defs/RoleBindingArray"
544
+ },
545
+ "outputBindings": {
546
+ "$ref": "#/$defs/RoleBindingArray"
547
+ }
548
+ }
549
+ },
550
+ "ResourceBase": {
551
+ "$anchor": "ResourceBase",
552
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
553
+ "type": "object",
554
+ "required": [
555
+ "identity",
556
+ "resourceTypeHandle"
557
+ ],
558
+ "properties": {
559
+ "identity": {
560
+ "$ref": "#/$defs/ResourceIdentity"
561
+ },
562
+ "resourceTypeHandle": {
563
+ "$ref": "#/$defs/ResourceTypeIdentity"
564
+ }
565
+ }
566
+ },
567
+ "ResourceKindFacet": {
568
+ "$anchor": "ResourceKindFacet",
569
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
570
+ "type": "object",
571
+ "required": [
572
+ "resourceKind"
573
+ ],
574
+ "properties": {
575
+ "resourceKind": {
576
+ "$ref": "#/$defs/ResourceKind"
577
+ }
578
+ }
579
+ },
580
+ "CreationContextFacet": {
581
+ "$anchor": "CreationContextFacet",
582
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
583
+ "type": "object",
584
+ "required": [
585
+ "creationContext"
586
+ ],
587
+ "properties": {
588
+ "creationContext": {
589
+ "$ref": "#/$defs/CreationContext"
590
+ }
591
+ }
592
+ },
593
+ "TimestampFacet": {
594
+ "$anchor": "TimestampFacet",
595
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
596
+ "type": "object",
597
+ "required": [
598
+ "timestamp"
599
+ ],
600
+ "properties": {
601
+ "timestamp": {
602
+ "$ref": "#/$defs/Timestamp"
603
+ }
604
+ }
605
+ },
606
+ "PathFacet": {
607
+ "$anchor": "PathFacet",
608
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
609
+ "type": "object",
610
+ "required": [
611
+ "path"
612
+ ],
613
+ "properties": {
614
+ "path": {
615
+ "$ref": "#/$defs/Path"
616
+ }
617
+ }
618
+ },
619
+ "Nucleus": {
620
+ "$anchor": "Nucleus",
621
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
622
+ "type": "object",
623
+ "additionalProperties": {
624
+ "$ref": "#/$defs/JsonData"
625
+ }
626
+ },
627
+ "RoleBindingArray": {
628
+ "$anchor": "RoleBindingArray",
629
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
630
+ "type": "array",
631
+ "items": {
632
+ "$ref": "#/$defs/ResourceRoleIdentity"
633
+ }
634
+ },
635
+ "ResourceIdentity": {
636
+ "$anchor": "ResourceIdentity",
637
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
638
+ "type": "string",
639
+ "pattern": "^RESOURCE-.+$"
640
+ },
641
+ "ResourceTypeIdentity": {
642
+ "$anchor": "ResourceTypeIdentity",
643
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
644
+ "type": "string",
645
+ "pattern": "^TYPE-.+$"
646
+ },
647
+ "ResourceKind": {
648
+ "$anchor": "ResourceKind",
649
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
650
+ "type": "string",
651
+ "enum": [
652
+ "missing",
653
+ "input-potential",
654
+ "output-potential",
655
+ "materialized"
656
+ ]
657
+ },
658
+ "CreationContext": {
659
+ "$anchor": "CreationContext",
660
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
661
+ "type": "object",
662
+ "required": [
663
+ "resourceRoleHandle",
664
+ "jobStepHandle"
665
+ ],
666
+ "properties": {
667
+ "resourceRoleHandle": {
668
+ "$ref": "#/$defs/ResourceRoleIdentity"
669
+ },
670
+ "jobStepHandle": {
671
+ "$ref": "#/$defs/JobStepIdentity"
672
+ }
673
+ }
674
+ },
675
+ "Path": {
676
+ "$anchor": "Path",
677
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
678
+ "type": "string",
679
+ "format": "uri-reference"
680
+ },
681
+ "JsonData": {
682
+ "$anchor": "JsonData",
683
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
684
+ "oneOf": [
685
+ {
686
+ "type": "null"
687
+ },
688
+ {
689
+ "type": "boolean"
690
+ },
691
+ {
692
+ "type": "number"
693
+ },
694
+ {
695
+ "type": "string"
696
+ },
697
+ {
698
+ "type": "array",
699
+ "items": {
700
+ "$ref": "#/$defs/JsonData"
701
+ }
702
+ },
703
+ {
704
+ "type": "object",
705
+ "additionalProperties": {
706
+ "$ref": "#/$defs/JsonData"
707
+ }
708
+ }
709
+ ]
710
+ }
711
+ }
712
+ }