hoi4-agent-tools 3.1.0 → 3.3.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 (74) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +10 -2
  3. package/dist/hoi4_agent_tools/core/analysis-evidence.js +9 -0
  4. package/dist/hoi4_agent_tools/core/analysis-job-operations.js +48 -0
  5. package/dist/hoi4_agent_tools/core/condition-evaluator.js +21 -1
  6. package/dist/hoi4_agent_tools/core/impact-comparison.js +49 -0
  7. package/dist/hoi4_agent_tools/core/impact-graph.js +301 -0
  8. package/dist/hoi4_agent_tools/core/impact-semantic.js +256 -0
  9. package/dist/hoi4_agent_tools/core/job-worker-host.js +5 -0
  10. package/dist/hoi4_agent_tools/core/job-worker.js +2 -0
  11. package/dist/hoi4_agent_tools/core/operation-tasks.js +12 -0
  12. package/dist/hoi4_agent_tools/core/scenario-model.js +85 -0
  13. package/dist/hoi4_agent_tools/core/source-overlay.js +125 -0
  14. package/dist/hoi4_agent_tools/decision/ai.js +104 -0
  15. package/dist/hoi4_agent_tools/decision/comparison.js +106 -0
  16. package/dist/hoi4_agent_tools/decision/cost.js +177 -0
  17. package/dist/hoi4_agent_tools/decision/evaluation.js +256 -0
  18. package/dist/hoi4_agent_tools/decision/lifecycle.js +114 -0
  19. package/dist/hoi4_agent_tools/decision/service.js +172 -0
  20. package/dist/hoi4_agent_tools/decision/source-inventory.js +182 -0
  21. package/dist/hoi4_agent_tools/gui/scenario-conditions.js +2 -23
  22. package/dist/hoi4_agent_tools/impact/scenario-suites.js +74 -0
  23. package/dist/hoi4_agent_tools/impact/service.js +127 -0
  24. package/dist/hoi4_agent_tools/mcp/server/create.js +2 -0
  25. package/dist/hoi4_agent_tools/mcp/server/instructions.js +1 -1
  26. package/dist/hoi4_agent_tools/mcp/server/request-lifecycle.js +5 -0
  27. package/dist/hoi4_agent_tools/mcp/server/task-tool-catalog.js +2 -0
  28. package/dist/hoi4_agent_tools/mcp/tools/analysis.js +155 -0
  29. package/dist/hoi4_agent_tools/mechanic/assertions.js +112 -0
  30. package/dist/hoi4_agent_tools/mechanic/interpreter.js +619 -0
  31. package/dist/hoi4_agent_tools/mechanic/service.js +145 -0
  32. package/dist/hoi4_agent_tools/mechanic/source.js +89 -0
  33. package/dist/hoi4_agent_tools/package-check/service.js +231 -0
  34. package/dist/hoi4_agent_tools/probability/evaluation.js +3 -1
  35. package/dist/hoi4_agent_tools/scenario-suite/service.js +341 -0
  36. package/dist/hoi4_agent_tools/schemas/analysis.js +228 -0
  37. package/dist/hoi4_agent_tools/schemas/scenarios.js +264 -0
  38. package/dist/hoi4_agent_tools/version.js +1 -1
  39. package/docs/README.md +2 -0
  40. package/docs/analysis.md +100 -0
  41. package/docs/jobs.md +2 -1
  42. package/docs/mechanics.md +70 -0
  43. package/package.json +6 -2
  44. package/schemas/configuration.schema.json +1 -1
  45. package/schemas/continuous-focus-palette.schema.json +1 -1
  46. package/schemas/custom-weighted-pool.schema.json +1 -1
  47. package/schemas/decision-inspect-input.schema.json +290 -0
  48. package/schemas/event-feature-manifest.schema.json +1 -1
  49. package/schemas/focus-plan.schema.json +1 -1
  50. package/schemas/focus-planning-sidecar.schema.json +1 -1
  51. package/schemas/gui-animation-source.schema.json +1 -1
  52. package/schemas/gui-helper.schema.json +1 -1
  53. package/schemas/gui-scenario.schema.json +1 -1
  54. package/schemas/helper-expansion-request.schema.json +1 -1
  55. package/schemas/helper-expansion-summary.schema.json +1 -1
  56. package/schemas/impact-inspect-input.schema.json +203 -0
  57. package/schemas/map-operation.schema.json +1 -1
  58. package/schemas/mechanic-test-input.schema.json +650 -0
  59. package/schemas/operation-result.schema.json +1 -1
  60. package/schemas/package-check-input.schema.json +164 -0
  61. package/schemas/package-manifest.schema.json +142 -0
  62. package/schemas/probability-analysis-result.schema.json +1 -1
  63. package/schemas/probability-compare-input.schema.json +1 -1
  64. package/schemas/probability-evaluate-input.schema.json +1 -1
  65. package/schemas/probability-inspect-input.schema.json +1 -1
  66. package/schemas/probability-render-input.schema.json +1 -1
  67. package/schemas/probability-scenario-set.schema.json +1 -1
  68. package/schemas/probability-sequence-input.schema.json +1 -1
  69. package/schemas/probability-simulate-input.schema.json +1 -1
  70. package/schemas/probability-sweep-input.schema.json +1 -1
  71. package/schemas/scenario-suite.schema.json +1004 -0
  72. package/schemas/scenario-test-input.schema.json +1057 -0
  73. package/schemas/shared-scenario.schema.json +237 -0
  74. package/server.json +3 -3
@@ -0,0 +1,1057 @@
1
+ {
2
+ "$id": "https://github.com/klimPaskov/hoi4-agent-tools/blob/v3.3.0/schemas/scenario-test-input.schema.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "type": "object",
5
+ "properties": {
6
+ "workspaceId": {
7
+ "$ref": "#/$defs/__schema0"
8
+ },
9
+ "suite": {
10
+ "$ref": "#/$defs/__schema1"
11
+ },
12
+ "suitePath": {
13
+ "$ref": "#/$defs/__schema30"
14
+ },
15
+ "continuation": {
16
+ "$ref": "#/$defs/__schema31"
17
+ },
18
+ "maxCases": {
19
+ "$ref": "#/$defs/__schema32"
20
+ },
21
+ "expectedRevision": {
22
+ "$ref": "#/$defs/__schema33"
23
+ },
24
+ "refresh": {
25
+ "$ref": "#/$defs/__schema34"
26
+ }
27
+ },
28
+ "additionalProperties": false,
29
+ "$defs": {
30
+ "__schema0": {
31
+ "default": "current",
32
+ "type": "string",
33
+ "pattern": "^[a-z][a-z0-9_-]{0,63}$"
34
+ },
35
+ "__schema1": {
36
+ "type": "object",
37
+ "properties": {
38
+ "schemaVersion": {
39
+ "$ref": "#/$defs/__schema2"
40
+ },
41
+ "id": {
42
+ "$ref": "#/$defs/__schema3"
43
+ },
44
+ "cases": {
45
+ "$ref": "#/$defs/__schema4"
46
+ }
47
+ },
48
+ "required": [
49
+ "schemaVersion",
50
+ "id",
51
+ "cases"
52
+ ],
53
+ "additionalProperties": false
54
+ },
55
+ "__schema2": {
56
+ "type": "string",
57
+ "const": "1.0"
58
+ },
59
+ "__schema3": {
60
+ "type": "string",
61
+ "minLength": 1,
62
+ "maxLength": 512
63
+ },
64
+ "__schema4": {
65
+ "minItems": 1,
66
+ "maxItems": 10000,
67
+ "type": "array",
68
+ "items": {
69
+ "$ref": "#/$defs/__schema5"
70
+ }
71
+ },
72
+ "__schema5": {
73
+ "oneOf": [
74
+ {
75
+ "type": "object",
76
+ "properties": {
77
+ "domain": {
78
+ "type": "string",
79
+ "const": "mechanic"
80
+ },
81
+ "id": {
82
+ "$ref": "#/$defs/__schema3"
83
+ },
84
+ "test": {
85
+ "type": "object",
86
+ "properties": {
87
+ "id": {
88
+ "$ref": "#/$defs/__schema3"
89
+ },
90
+ "scenario": {
91
+ "type": "object",
92
+ "properties": {
93
+ "id": {
94
+ "type": "string",
95
+ "minLength": 1,
96
+ "maxLength": 512
97
+ },
98
+ "actor": {
99
+ "type": "string",
100
+ "maxLength": 256
101
+ },
102
+ "date": {
103
+ "type": "string",
104
+ "maxLength": 64
105
+ },
106
+ "state": {
107
+ "$ref": "#/$defs/__schema6"
108
+ },
109
+ "flags": {
110
+ "maxItems": 10000,
111
+ "type": "array",
112
+ "items": {
113
+ "$ref": "#/$defs/__schema10"
114
+ }
115
+ },
116
+ "eventTargets": {
117
+ "type": "object",
118
+ "propertyNames": {
119
+ "type": "string",
120
+ "maxLength": 512
121
+ },
122
+ "additionalProperties": {
123
+ "type": "string",
124
+ "maxLength": 512
125
+ }
126
+ },
127
+ "scopes": {
128
+ "type": "object",
129
+ "propertyNames": {
130
+ "$ref": "#/$defs/__schema11"
131
+ },
132
+ "additionalProperties": {
133
+ "$ref": "#/$defs/__schema12"
134
+ }
135
+ },
136
+ "candidateOverrides": {
137
+ "type": "object",
138
+ "propertyNames": {
139
+ "type": "string",
140
+ "maxLength": 512
141
+ },
142
+ "additionalProperties": {
143
+ "type": "boolean"
144
+ }
145
+ },
146
+ "closedFlags": {
147
+ "type": "boolean"
148
+ },
149
+ "schemaVersion": {
150
+ "type": "string",
151
+ "const": "1.0"
152
+ },
153
+ "globalFlags": {
154
+ "maxItems": 10000,
155
+ "type": "array",
156
+ "items": {
157
+ "$ref": "#/$defs/__schema3"
158
+ }
159
+ },
160
+ "scopeCatalogs": {
161
+ "type": "object",
162
+ "propertyNames": {
163
+ "$ref": "#/$defs/__schema3"
164
+ },
165
+ "additionalProperties": {
166
+ "type": "object",
167
+ "properties": {
168
+ "complete": {
169
+ "type": "boolean"
170
+ },
171
+ "members": {
172
+ "maxItems": 2048,
173
+ "type": "array",
174
+ "items": {
175
+ "$ref": "#/$defs/__schema3"
176
+ }
177
+ }
178
+ },
179
+ "required": [
180
+ "complete",
181
+ "members"
182
+ ],
183
+ "additionalProperties": false
184
+ }
185
+ }
186
+ },
187
+ "required": [
188
+ "id",
189
+ "state",
190
+ "schemaVersion"
191
+ ],
192
+ "additionalProperties": false
193
+ },
194
+ "steps": {
195
+ "minItems": 1,
196
+ "maxItems": 128,
197
+ "type": "array",
198
+ "items": {
199
+ "$ref": "#/$defs/__schema14"
200
+ }
201
+ },
202
+ "assertions": {
203
+ "minItems": 1,
204
+ "maxItems": 256,
205
+ "type": "array",
206
+ "items": {
207
+ "$ref": "#/$defs/__schema15"
208
+ }
209
+ }
210
+ },
211
+ "required": [
212
+ "id",
213
+ "scenario",
214
+ "steps",
215
+ "assertions"
216
+ ],
217
+ "additionalProperties": false
218
+ },
219
+ "sourceSelectors": {
220
+ "$ref": "#/$defs/__schema18"
221
+ },
222
+ "assertions": {
223
+ "$ref": "#/$defs/__schema21"
224
+ },
225
+ "views": {
226
+ "$ref": "#/$defs/__schema23"
227
+ }
228
+ },
229
+ "required": [
230
+ "domain",
231
+ "id",
232
+ "test"
233
+ ],
234
+ "additionalProperties": false
235
+ },
236
+ {
237
+ "type": "object",
238
+ "properties": {
239
+ "domain": {
240
+ "type": "string",
241
+ "const": "package"
242
+ },
243
+ "id": {
244
+ "$ref": "#/$defs/__schema3"
245
+ },
246
+ "manifest": {
247
+ "type": "object",
248
+ "properties": {
249
+ "schemaVersion": {
250
+ "type": "string",
251
+ "const": "1.0"
252
+ },
253
+ "id": {
254
+ "$ref": "#/$defs/__schema20"
255
+ },
256
+ "definitions": {
257
+ "default": [],
258
+ "maxItems": 2048,
259
+ "type": "array",
260
+ "items": {
261
+ "$ref": "#/$defs/__schema19"
262
+ }
263
+ },
264
+ "calls": {
265
+ "default": [],
266
+ "maxItems": 2048,
267
+ "type": "array",
268
+ "items": {
269
+ "$ref": "#/$defs/__schema25"
270
+ }
271
+ },
272
+ "registrations": {
273
+ "default": [],
274
+ "maxItems": 2048,
275
+ "type": "array",
276
+ "items": {
277
+ "$ref": "#/$defs/__schema26"
278
+ }
279
+ },
280
+ "localisation": {
281
+ "default": [],
282
+ "maxItems": 2048,
283
+ "type": "array",
284
+ "items": {
285
+ "$ref": "#/$defs/__schema20"
286
+ }
287
+ },
288
+ "assets": {
289
+ "default": [],
290
+ "maxItems": 2048,
291
+ "type": "array",
292
+ "items": {
293
+ "$ref": "#/$defs/__schema27"
294
+ }
295
+ },
296
+ "requiredCases": {
297
+ "default": [],
298
+ "maxItems": 512,
299
+ "type": "array",
300
+ "items": {
301
+ "$ref": "#/$defs/__schema28"
302
+ }
303
+ }
304
+ },
305
+ "required": [
306
+ "schemaVersion",
307
+ "id"
308
+ ],
309
+ "additionalProperties": false
310
+ },
311
+ "sourceSelectors": {
312
+ "$ref": "#/$defs/__schema18"
313
+ },
314
+ "assertions": {
315
+ "$ref": "#/$defs/__schema21"
316
+ },
317
+ "views": {
318
+ "$ref": "#/$defs/__schema23"
319
+ }
320
+ },
321
+ "required": [
322
+ "domain",
323
+ "id",
324
+ "manifest"
325
+ ],
326
+ "additionalProperties": false
327
+ },
328
+ {
329
+ "type": "object",
330
+ "properties": {
331
+ "domain": {
332
+ "type": "string",
333
+ "const": "tool"
334
+ },
335
+ "id": {
336
+ "$ref": "#/$defs/__schema3"
337
+ },
338
+ "tool": {
339
+ "type": "string",
340
+ "enum": [
341
+ "hoi4.impact_inspect",
342
+ "hoi4.decision_inspect",
343
+ "hoi4.event_inspect",
344
+ "hoi4.event_render",
345
+ "hoi4.tech_inspect",
346
+ "hoi4.tech_render",
347
+ "hoi4.probability_inspect",
348
+ "hoi4.probability_evaluate",
349
+ "hoi4.probability_render",
350
+ "hoi4.focus_inspect",
351
+ "hoi4.focus_render",
352
+ "hoi4.gui_inspect",
353
+ "hoi4.gui_render",
354
+ "hoi4.map_inspect",
355
+ "hoi4.map_render"
356
+ ]
357
+ },
358
+ "arguments": {
359
+ "type": "object",
360
+ "propertyNames": {
361
+ "type": "string",
362
+ "maxLength": 256
363
+ },
364
+ "additionalProperties": {
365
+ "$ref": "#/$defs/__schema29"
366
+ }
367
+ },
368
+ "sourceSelectors": {
369
+ "$ref": "#/$defs/__schema18"
370
+ },
371
+ "assertions": {
372
+ "$ref": "#/$defs/__schema21"
373
+ },
374
+ "views": {
375
+ "$ref": "#/$defs/__schema23"
376
+ }
377
+ },
378
+ "required": [
379
+ "domain",
380
+ "id",
381
+ "tool",
382
+ "arguments"
383
+ ],
384
+ "additionalProperties": false
385
+ }
386
+ ]
387
+ },
388
+ "__schema6": {
389
+ "type": "object",
390
+ "propertyNames": {
391
+ "$ref": "#/$defs/__schema7"
392
+ },
393
+ "additionalProperties": {
394
+ "$ref": "#/$defs/__schema8"
395
+ }
396
+ },
397
+ "__schema7": {
398
+ "type": "string",
399
+ "minLength": 1,
400
+ "maxLength": 1024
401
+ },
402
+ "__schema8": {
403
+ "anyOf": [
404
+ {
405
+ "$ref": "#/$defs/__schema9"
406
+ },
407
+ {
408
+ "maxItems": 10000,
409
+ "type": "array",
410
+ "items": {
411
+ "$ref": "#/$defs/__schema9"
412
+ }
413
+ }
414
+ ]
415
+ },
416
+ "__schema9": {
417
+ "anyOf": [
418
+ {
419
+ "type": "string",
420
+ "maxLength": 4096
421
+ },
422
+ {
423
+ "type": "number"
424
+ },
425
+ {
426
+ "type": "boolean"
427
+ },
428
+ {
429
+ "type": "null"
430
+ }
431
+ ]
432
+ },
433
+ "__schema10": {
434
+ "type": "string",
435
+ "minLength": 1,
436
+ "maxLength": 512
437
+ },
438
+ "__schema11": {
439
+ "type": "string",
440
+ "minLength": 1,
441
+ "maxLength": 128
442
+ },
443
+ "__schema12": {
444
+ "type": "object",
445
+ "properties": {
446
+ "id": {
447
+ "type": "string",
448
+ "minLength": 1,
449
+ "maxLength": 512
450
+ },
451
+ "type": {
452
+ "type": "string",
453
+ "enum": [
454
+ "country",
455
+ "state",
456
+ "character",
457
+ "unit_leader",
458
+ "operative",
459
+ "strategic_region",
460
+ "province",
461
+ "unknown"
462
+ ]
463
+ },
464
+ "actor": {
465
+ "type": "string",
466
+ "maxLength": 256
467
+ },
468
+ "state": {
469
+ "$ref": "#/$defs/__schema6"
470
+ },
471
+ "flags": {
472
+ "maxItems": 10000,
473
+ "type": "array",
474
+ "items": {
475
+ "$ref": "#/$defs/__schema13"
476
+ }
477
+ },
478
+ "eventTargets": {
479
+ "type": "object",
480
+ "propertyNames": {
481
+ "type": "string",
482
+ "maxLength": 512
483
+ },
484
+ "additionalProperties": {
485
+ "type": "string",
486
+ "maxLength": 512
487
+ }
488
+ },
489
+ "weight": {
490
+ "anyOf": [
491
+ {
492
+ "type": "number"
493
+ },
494
+ {
495
+ "type": "string",
496
+ "maxLength": 1024
497
+ }
498
+ ]
499
+ }
500
+ },
501
+ "required": [
502
+ "id",
503
+ "state"
504
+ ],
505
+ "additionalProperties": false
506
+ },
507
+ "__schema13": {
508
+ "type": "string",
509
+ "minLength": 1,
510
+ "maxLength": 512
511
+ },
512
+ "__schema14": {
513
+ "oneOf": [
514
+ {
515
+ "type": "object",
516
+ "properties": {
517
+ "kind": {
518
+ "type": "string",
519
+ "const": "effect"
520
+ },
521
+ "source": {
522
+ "type": "object",
523
+ "properties": {
524
+ "kind": {
525
+ "type": "string",
526
+ "enum": [
527
+ "scripted_effect",
528
+ "event_option",
529
+ "decision",
530
+ "focus_reward"
531
+ ]
532
+ },
533
+ "id": {
534
+ "$ref": "#/$defs/__schema3"
535
+ },
536
+ "option": {
537
+ "$ref": "#/$defs/__schema3"
538
+ }
539
+ },
540
+ "required": [
541
+ "kind",
542
+ "id"
543
+ ],
544
+ "additionalProperties": false
545
+ },
546
+ "repeat": {
547
+ "default": 1,
548
+ "type": "integer",
549
+ "minimum": 1,
550
+ "maximum": 8
551
+ }
552
+ },
553
+ "required": [
554
+ "kind",
555
+ "source"
556
+ ],
557
+ "additionalProperties": false
558
+ },
559
+ {
560
+ "type": "object",
561
+ "properties": {
562
+ "kind": {
563
+ "type": "string",
564
+ "const": "advance_days"
565
+ },
566
+ "days": {
567
+ "type": "integer",
568
+ "minimum": 0,
569
+ "maximum": 36500
570
+ }
571
+ },
572
+ "required": [
573
+ "kind",
574
+ "days"
575
+ ],
576
+ "additionalProperties": false
577
+ }
578
+ ]
579
+ },
580
+ "__schema15": {
581
+ "oneOf": [
582
+ {
583
+ "type": "object",
584
+ "properties": {
585
+ "id": {
586
+ "$ref": "#/$defs/__schema3"
587
+ },
588
+ "kind": {
589
+ "type": "string",
590
+ "const": "equals"
591
+ },
592
+ "path": {
593
+ "$ref": "#/$defs/__schema16"
594
+ },
595
+ "expected": {
596
+ "$ref": "#/$defs/__schema17"
597
+ }
598
+ },
599
+ "required": [
600
+ "id",
601
+ "kind",
602
+ "path",
603
+ "expected"
604
+ ],
605
+ "additionalProperties": false
606
+ },
607
+ {
608
+ "type": "object",
609
+ "properties": {
610
+ "id": {
611
+ "$ref": "#/$defs/__schema3"
612
+ },
613
+ "kind": {
614
+ "type": "string",
615
+ "const": "conservation"
616
+ },
617
+ "paths": {
618
+ "minItems": 2,
619
+ "maxItems": 64,
620
+ "type": "array",
621
+ "items": {
622
+ "$ref": "#/$defs/__schema16"
623
+ }
624
+ },
625
+ "tolerance": {
626
+ "default": 0,
627
+ "type": "number",
628
+ "minimum": 0
629
+ }
630
+ },
631
+ "required": [
632
+ "id",
633
+ "kind",
634
+ "paths"
635
+ ],
636
+ "additionalProperties": false
637
+ },
638
+ {
639
+ "type": "object",
640
+ "properties": {
641
+ "id": {
642
+ "$ref": "#/$defs/__schema3"
643
+ },
644
+ "kind": {
645
+ "type": "string",
646
+ "const": "array_alignment"
647
+ },
648
+ "paths": {
649
+ "minItems": 2,
650
+ "maxItems": 32,
651
+ "type": "array",
652
+ "items": {
653
+ "$ref": "#/$defs/__schema16"
654
+ }
655
+ }
656
+ },
657
+ "required": [
658
+ "id",
659
+ "kind",
660
+ "paths"
661
+ ],
662
+ "additionalProperties": false
663
+ },
664
+ {
665
+ "type": "object",
666
+ "properties": {
667
+ "id": {
668
+ "$ref": "#/$defs/__schema3"
669
+ },
670
+ "kind": {
671
+ "type": "string",
672
+ "const": "affordability"
673
+ },
674
+ "balance": {
675
+ "$ref": "#/$defs/__schema16"
676
+ },
677
+ "cost": {
678
+ "type": "number",
679
+ "minimum": 0
680
+ }
681
+ },
682
+ "required": [
683
+ "id",
684
+ "kind",
685
+ "balance",
686
+ "cost"
687
+ ],
688
+ "additionalProperties": false
689
+ },
690
+ {
691
+ "type": "object",
692
+ "properties": {
693
+ "id": {
694
+ "$ref": "#/$defs/__schema3"
695
+ },
696
+ "kind": {
697
+ "type": "string",
698
+ "const": "single_payment"
699
+ },
700
+ "balance": {
701
+ "$ref": "#/$defs/__schema16"
702
+ },
703
+ "cost": {
704
+ "type": "number",
705
+ "minimum": 0
706
+ }
707
+ },
708
+ "required": [
709
+ "id",
710
+ "kind",
711
+ "balance",
712
+ "cost"
713
+ ],
714
+ "additionalProperties": false
715
+ },
716
+ {
717
+ "type": "object",
718
+ "properties": {
719
+ "id": {
720
+ "$ref": "#/$defs/__schema3"
721
+ },
722
+ "kind": {
723
+ "type": "string",
724
+ "const": "repeated_setup"
725
+ },
726
+ "firstStep": {
727
+ "type": "integer",
728
+ "minimum": 0,
729
+ "maximum": 9007199254740991
730
+ },
731
+ "secondStep": {
732
+ "type": "integer",
733
+ "minimum": 0,
734
+ "maximum": 9007199254740991
735
+ }
736
+ },
737
+ "required": [
738
+ "id",
739
+ "kind",
740
+ "firstStep",
741
+ "secondStep"
742
+ ],
743
+ "additionalProperties": false
744
+ },
745
+ {
746
+ "type": "object",
747
+ "properties": {
748
+ "id": {
749
+ "$ref": "#/$defs/__schema3"
750
+ },
751
+ "kind": {
752
+ "type": "string",
753
+ "const": "exclusive_flags"
754
+ },
755
+ "scope": {
756
+ "default": "ROOT",
757
+ "$ref": "#/$defs/__schema3"
758
+ },
759
+ "flags": {
760
+ "minItems": 2,
761
+ "maxItems": 64,
762
+ "type": "array",
763
+ "items": {
764
+ "$ref": "#/$defs/__schema3"
765
+ }
766
+ }
767
+ },
768
+ "required": [
769
+ "id",
770
+ "kind",
771
+ "flags"
772
+ ],
773
+ "additionalProperties": false
774
+ },
775
+ {
776
+ "type": "object",
777
+ "properties": {
778
+ "id": {
779
+ "$ref": "#/$defs/__schema3"
780
+ },
781
+ "kind": {
782
+ "type": "string",
783
+ "const": "cleanup"
784
+ },
785
+ "scope": {
786
+ "default": "ROOT",
787
+ "$ref": "#/$defs/__schema3"
788
+ },
789
+ "flags": {
790
+ "default": [],
791
+ "maxItems": 64,
792
+ "type": "array",
793
+ "items": {
794
+ "$ref": "#/$defs/__schema3"
795
+ }
796
+ },
797
+ "targets": {
798
+ "default": [],
799
+ "maxItems": 64,
800
+ "type": "array",
801
+ "items": {
802
+ "$ref": "#/$defs/__schema3"
803
+ }
804
+ }
805
+ },
806
+ "required": [
807
+ "id",
808
+ "kind"
809
+ ],
810
+ "additionalProperties": false
811
+ },
812
+ {
813
+ "type": "object",
814
+ "properties": {
815
+ "id": {
816
+ "$ref": "#/$defs/__schema3"
817
+ },
818
+ "kind": {
819
+ "type": "string",
820
+ "const": "end_state"
821
+ },
822
+ "path": {
823
+ "$ref": "#/$defs/__schema16"
824
+ },
825
+ "expected": {
826
+ "$ref": "#/$defs/__schema17"
827
+ }
828
+ },
829
+ "required": [
830
+ "id",
831
+ "kind",
832
+ "path",
833
+ "expected"
834
+ ],
835
+ "additionalProperties": false
836
+ }
837
+ ]
838
+ },
839
+ "__schema16": {
840
+ "type": "object",
841
+ "properties": {
842
+ "scope": {
843
+ "default": "ROOT",
844
+ "$ref": "#/$defs/__schema3"
845
+ },
846
+ "key": {
847
+ "$ref": "#/$defs/__schema3"
848
+ }
849
+ },
850
+ "required": [
851
+ "key"
852
+ ],
853
+ "additionalProperties": false
854
+ },
855
+ "__schema17": {
856
+ "anyOf": [
857
+ {
858
+ "type": "string",
859
+ "maxLength": 4096
860
+ },
861
+ {
862
+ "type": "number"
863
+ },
864
+ {
865
+ "type": "boolean"
866
+ },
867
+ {
868
+ "type": "null"
869
+ }
870
+ ]
871
+ },
872
+ "__schema18": {
873
+ "default": [],
874
+ "maxItems": 64,
875
+ "type": "array",
876
+ "items": {
877
+ "$ref": "#/$defs/__schema19"
878
+ }
879
+ },
880
+ "__schema19": {
881
+ "type": "object",
882
+ "properties": {
883
+ "kind": {
884
+ "$ref": "#/$defs/__schema20"
885
+ },
886
+ "id": {
887
+ "$ref": "#/$defs/__schema20"
888
+ }
889
+ },
890
+ "required": [
891
+ "kind",
892
+ "id"
893
+ ],
894
+ "additionalProperties": false
895
+ },
896
+ "__schema20": {
897
+ "type": "string",
898
+ "pattern": "^[A-Za-z0-9_.:-]{1,512}$"
899
+ },
900
+ "__schema21": {
901
+ "default": [],
902
+ "maxItems": 64,
903
+ "type": "array",
904
+ "items": {
905
+ "$ref": "#/$defs/__schema22"
906
+ }
907
+ },
908
+ "__schema22": {
909
+ "type": "object",
910
+ "properties": {
911
+ "id": {
912
+ "$ref": "#/$defs/__schema3"
913
+ },
914
+ "path": {
915
+ "minItems": 1,
916
+ "maxItems": 16,
917
+ "type": "array",
918
+ "items": {
919
+ "$ref": "#/$defs/__schema3"
920
+ }
921
+ },
922
+ "expected": {
923
+ "$ref": "#/$defs/__schema17"
924
+ }
925
+ },
926
+ "required": [
927
+ "id",
928
+ "path",
929
+ "expected"
930
+ ],
931
+ "additionalProperties": false
932
+ },
933
+ "__schema23": {
934
+ "default": [
935
+ "summary"
936
+ ],
937
+ "maxItems": 3,
938
+ "type": "array",
939
+ "items": {
940
+ "$ref": "#/$defs/__schema24"
941
+ }
942
+ },
943
+ "__schema24": {
944
+ "type": "string",
945
+ "enum": [
946
+ "summary",
947
+ "artifacts",
948
+ "diagnostics"
949
+ ]
950
+ },
951
+ "__schema25": {
952
+ "type": "object",
953
+ "properties": {
954
+ "from": {
955
+ "$ref": "#/$defs/__schema19"
956
+ },
957
+ "to": {
958
+ "$ref": "#/$defs/__schema19"
959
+ }
960
+ },
961
+ "required": [
962
+ "from",
963
+ "to"
964
+ ],
965
+ "additionalProperties": false
966
+ },
967
+ "__schema26": {
968
+ "type": "object",
969
+ "properties": {
970
+ "path": {
971
+ "$ref": "#/$defs/__schema27"
972
+ },
973
+ "token": {
974
+ "$ref": "#/$defs/__schema20"
975
+ }
976
+ },
977
+ "required": [
978
+ "path",
979
+ "token"
980
+ ],
981
+ "additionalProperties": false
982
+ },
983
+ "__schema27": {
984
+ "type": "string",
985
+ "minLength": 1,
986
+ "maxLength": 1024
987
+ },
988
+ "__schema28": {
989
+ "type": "object",
990
+ "properties": {
991
+ "suite": {
992
+ "$ref": "#/$defs/__schema27"
993
+ },
994
+ "caseId": {
995
+ "$ref": "#/$defs/__schema20"
996
+ }
997
+ },
998
+ "required": [
999
+ "suite",
1000
+ "caseId"
1001
+ ],
1002
+ "additionalProperties": false
1003
+ },
1004
+ "__schema29": {
1005
+ "anyOf": [
1006
+ {
1007
+ "type": "string"
1008
+ },
1009
+ {
1010
+ "type": "number"
1011
+ },
1012
+ {
1013
+ "type": "boolean"
1014
+ },
1015
+ {
1016
+ "type": "null"
1017
+ },
1018
+ {
1019
+ "type": "array",
1020
+ "items": {
1021
+ "$ref": "#/$defs/__schema29"
1022
+ }
1023
+ },
1024
+ {
1025
+ "type": "object",
1026
+ "propertyNames": {
1027
+ "type": "string"
1028
+ },
1029
+ "additionalProperties": {
1030
+ "$ref": "#/$defs/__schema29"
1031
+ }
1032
+ }
1033
+ ]
1034
+ },
1035
+ "__schema30": {
1036
+ "$ref": "#/$defs/__schema27"
1037
+ },
1038
+ "__schema31": {
1039
+ "type": "string",
1040
+ "maxLength": 4096
1041
+ },
1042
+ "__schema32": {
1043
+ "default": 32,
1044
+ "type": "integer",
1045
+ "minimum": 1,
1046
+ "maximum": 256
1047
+ },
1048
+ "__schema33": {
1049
+ "type": "string",
1050
+ "pattern": "^[a-f0-9]{64}$"
1051
+ },
1052
+ "__schema34": {
1053
+ "default": false,
1054
+ "type": "boolean"
1055
+ }
1056
+ }
1057
+ }