hoi4-agent-tools 2.2.0 → 2.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 (62) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +30 -21
  3. package/dist/bin/stdio.js +0 -4
  4. package/dist/hoi4_agent_tools/core/clausewitz-evaluation.js +90 -0
  5. package/dist/hoi4_agent_tools/core/engine.js +5 -0
  6. package/dist/hoi4_agent_tools/core/index.js +57 -1
  7. package/dist/hoi4_agent_tools/core/source/ast-path.js +41 -0
  8. package/dist/hoi4_agent_tools/core/source/index.js +1 -0
  9. package/dist/hoi4_agent_tools/event/limits.js +1 -1
  10. package/dist/hoi4_agent_tools/mcp/server/create.js +3 -1
  11. package/dist/hoi4_agent_tools/mcp/tools/probability.js +413 -0
  12. package/dist/hoi4_agent_tools/probability/adapters.js +344 -0
  13. package/dist/hoi4_agent_tools/probability/compare.js +178 -0
  14. package/dist/hoi4_agent_tools/probability/evaluation.js +649 -0
  15. package/dist/hoi4_agent_tools/probability/index.js +13 -0
  16. package/dist/hoi4_agent_tools/probability/model.js +5 -0
  17. package/dist/hoi4_agent_tools/probability/rational.js +145 -0
  18. package/dist/hoi4_agent_tools/probability/render.js +307 -0
  19. package/dist/hoi4_agent_tools/probability/sequence.js +858 -0
  20. package/dist/hoi4_agent_tools/probability/service.js +1168 -0
  21. package/dist/hoi4_agent_tools/probability/simulation.js +545 -0
  22. package/dist/hoi4_agent_tools/probability/source-analysis.js +458 -0
  23. package/dist/hoi4_agent_tools/probability/sweep.js +265 -0
  24. package/dist/hoi4_agent_tools/probability/trigger-evaluator.js +280 -0
  25. package/dist/hoi4_agent_tools/probability/value-evaluator.js +357 -0
  26. package/dist/hoi4_agent_tools/schemas/probability.js +930 -0
  27. package/dist/hoi4_agent_tools/version.js +1 -1
  28. package/docs/README.md +1 -0
  29. package/docs/development.md +2 -0
  30. package/docs/probability.md +80 -0
  31. package/docs/research/probability-adapter-evidence.md +64 -0
  32. package/examples/clients/codex-config.toml +3 -0
  33. package/examples/clients/generic.json +8 -0
  34. package/examples/probability/adaptive-event-pool.json +92 -0
  35. package/examples/probability/adaptive-event-sequence-input.json +57 -0
  36. package/examples/probability/event-mtth-scenarios.json +57 -0
  37. package/examples/probability/event-mtth-simulate-input.json +37 -0
  38. package/examples/probability/focus-route-scenarios.json +61 -0
  39. package/examples/probability/focus-route-sweep-input.json +36 -0
  40. package/package.json +17 -8
  41. package/schemas/configuration.schema.json +747 -0
  42. package/schemas/continuous-focus-palette.schema.json +325 -0
  43. package/schemas/custom-weighted-pool.schema.json +298 -0
  44. package/schemas/event-feature-manifest.schema.json +63 -0
  45. package/schemas/focus-plan.schema.json +927 -0
  46. package/schemas/focus-planning-sidecar.schema.json +407 -0
  47. package/schemas/gui-animation-source.schema.json +176 -0
  48. package/schemas/gui-helper.schema.json +301 -0
  49. package/schemas/gui-scenario.schema.json +298 -0
  50. package/schemas/map-operation.schema.json +2284 -0
  51. package/schemas/operation-result.schema.json +327 -0
  52. package/schemas/probability-analysis-result.schema.json +2211 -0
  53. package/schemas/probability-compare-input.schema.json +664 -0
  54. package/schemas/probability-evaluate-input.schema.json +665 -0
  55. package/schemas/probability-inspect-input.schema.json +97 -0
  56. package/schemas/probability-render-input.schema.json +141 -0
  57. package/schemas/probability-scenario-set.schema.json +430 -0
  58. package/schemas/probability-sequence-input.schema.json +886 -0
  59. package/schemas/probability-simulate-input.schema.json +691 -0
  60. package/schemas/probability-sweep-input.schema.json +702 -0
  61. package/server.json +3 -3
  62. package/dist/hoi4_agent_tools/mcp/tools/chaosx.js +0 -530
@@ -0,0 +1,927 @@
1
+ {
2
+ "$id": "https://github.com/klimPaskov/hoi4-agent-tools/blob/v2.3.0/schemas/focus-plan.schema.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "type": "object",
5
+ "properties": {
6
+ "schemaVersion": {
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "id": {
11
+ "type": "string",
12
+ "minLength": 1,
13
+ "maxLength": 256
14
+ },
15
+ "countryAssignment": {
16
+ "type": "object",
17
+ "properties": {
18
+ "raw": {
19
+ "$ref": "#/$defs/__schema0"
20
+ },
21
+ "countryTags": {
22
+ "maxItems": 1000,
23
+ "type": "array",
24
+ "items": {
25
+ "$ref": "#/$defs/__schema4"
26
+ }
27
+ }
28
+ },
29
+ "required": [
30
+ "raw",
31
+ "countryTags"
32
+ ],
33
+ "additionalProperties": false
34
+ },
35
+ "default": {
36
+ "type": "boolean"
37
+ },
38
+ "branchGroups": {
39
+ "maxItems": 10000,
40
+ "type": "array",
41
+ "items": {
42
+ "$ref": "#/$defs/__schema5"
43
+ }
44
+ },
45
+ "laneGroups": {
46
+ "maxItems": 10000,
47
+ "type": "array",
48
+ "items": {
49
+ "$ref": "#/$defs/__schema8"
50
+ }
51
+ },
52
+ "entryFocusIds": {
53
+ "maxItems": 10000,
54
+ "type": "array",
55
+ "items": {
56
+ "$ref": "#/$defs/__schema14"
57
+ }
58
+ },
59
+ "focuses": {
60
+ "minItems": 1,
61
+ "maxItems": 10000,
62
+ "type": "array",
63
+ "items": {
64
+ "$ref": "#/$defs/__schema15"
65
+ }
66
+ },
67
+ "sharedFocusIds": {
68
+ "maxItems": 10000,
69
+ "type": "array",
70
+ "items": {
71
+ "$ref": "#/$defs/__schema28"
72
+ }
73
+ },
74
+ "continuousFocusPaletteIds": {
75
+ "maxItems": 10000,
76
+ "type": "array",
77
+ "items": {
78
+ "$ref": "#/$defs/__schema29"
79
+ }
80
+ },
81
+ "continuousFocusIds": {
82
+ "maxItems": 10000,
83
+ "type": "array",
84
+ "items": {
85
+ "$ref": "#/$defs/__schema30"
86
+ }
87
+ },
88
+ "continuousFocusPosition": {
89
+ "type": "object",
90
+ "properties": {
91
+ "x": {
92
+ "type": "integer",
93
+ "minimum": -9007199254740991,
94
+ "maximum": 9007199254740991
95
+ },
96
+ "y": {
97
+ "type": "integer",
98
+ "minimum": -9007199254740991,
99
+ "maximum": 9007199254740991
100
+ }
101
+ },
102
+ "required": [
103
+ "x",
104
+ "y"
105
+ ],
106
+ "additionalProperties": false
107
+ },
108
+ "initialShowPosition": {
109
+ "$ref": "#/$defs/__schema0"
110
+ },
111
+ "runtimeAssignment": {
112
+ "type": "object",
113
+ "properties": {
114
+ "replacesExistingCountryTree": {
115
+ "type": "boolean"
116
+ },
117
+ "eventCreatedGuard": {
118
+ "type": "string"
119
+ }
120
+ },
121
+ "required": [
122
+ "replacesExistingCountryTree"
123
+ ],
124
+ "additionalProperties": false
125
+ },
126
+ "rawPassthrough": {
127
+ "maxItems": 20000,
128
+ "type": "array",
129
+ "items": {
130
+ "$ref": "#/$defs/__schema18"
131
+ }
132
+ },
133
+ "provenance": {
134
+ "type": "object",
135
+ "properties": {
136
+ "sourcePath": {
137
+ "type": "string",
138
+ "minLength": 1
139
+ },
140
+ "sourceHash": {
141
+ "type": "string",
142
+ "pattern": "^[a-f0-9]{64}$"
143
+ },
144
+ "importedPlanHash": {
145
+ "type": "string",
146
+ "pattern": "^[a-f0-9]{64}$"
147
+ }
148
+ },
149
+ "required": [
150
+ "sourcePath",
151
+ "sourceHash",
152
+ "importedPlanHash"
153
+ ],
154
+ "additionalProperties": false
155
+ },
156
+ "sourceLocation": {
157
+ "$ref": "#/$defs/__schema2"
158
+ }
159
+ },
160
+ "required": [
161
+ "schemaVersion",
162
+ "id",
163
+ "default",
164
+ "branchGroups",
165
+ "laneGroups",
166
+ "entryFocusIds",
167
+ "focuses",
168
+ "sharedFocusIds",
169
+ "continuousFocusPaletteIds",
170
+ "continuousFocusIds",
171
+ "rawPassthrough",
172
+ "provenance"
173
+ ],
174
+ "additionalProperties": false,
175
+ "$defs": {
176
+ "__schema0": {
177
+ "type": "object",
178
+ "properties": {
179
+ "text": {
180
+ "type": "string"
181
+ },
182
+ "referencedFocusIds": {
183
+ "maxItems": 20000,
184
+ "type": "array",
185
+ "items": {
186
+ "$ref": "#/$defs/__schema1"
187
+ }
188
+ },
189
+ "sourceLocation": {
190
+ "$ref": "#/$defs/__schema2"
191
+ }
192
+ },
193
+ "required": [
194
+ "text",
195
+ "referencedFocusIds"
196
+ ],
197
+ "additionalProperties": false
198
+ },
199
+ "__schema1": {
200
+ "type": "string"
201
+ },
202
+ "__schema2": {
203
+ "type": "object",
204
+ "properties": {
205
+ "path": {
206
+ "type": "string",
207
+ "minLength": 1,
208
+ "maxLength": 4096
209
+ },
210
+ "start": {
211
+ "$ref": "#/$defs/__schema3"
212
+ },
213
+ "end": {
214
+ "$ref": "#/$defs/__schema3"
215
+ },
216
+ "symbol": {
217
+ "type": "string",
218
+ "maxLength": 1024
219
+ }
220
+ },
221
+ "required": [
222
+ "path",
223
+ "start",
224
+ "end"
225
+ ],
226
+ "additionalProperties": false
227
+ },
228
+ "__schema3": {
229
+ "type": "object",
230
+ "properties": {
231
+ "line": {
232
+ "type": "integer",
233
+ "minimum": 1,
234
+ "maximum": 9007199254740991
235
+ },
236
+ "column": {
237
+ "type": "integer",
238
+ "minimum": 1,
239
+ "maximum": 9007199254740991
240
+ },
241
+ "offset": {
242
+ "type": "integer",
243
+ "minimum": 0,
244
+ "maximum": 9007199254740991
245
+ }
246
+ },
247
+ "required": [
248
+ "line",
249
+ "column",
250
+ "offset"
251
+ ],
252
+ "additionalProperties": false
253
+ },
254
+ "__schema4": {
255
+ "type": "string"
256
+ },
257
+ "__schema5": {
258
+ "type": "object",
259
+ "properties": {
260
+ "id": {
261
+ "type": "string",
262
+ "minLength": 1
263
+ },
264
+ "label": {
265
+ "type": "string"
266
+ },
267
+ "family": {
268
+ "type": "string"
269
+ },
270
+ "focusIds": {
271
+ "maxItems": 10000,
272
+ "type": "array",
273
+ "items": {
274
+ "$ref": "#/$defs/__schema6"
275
+ }
276
+ },
277
+ "laneId": {
278
+ "type": "string"
279
+ },
280
+ "major": {
281
+ "type": "boolean"
282
+ },
283
+ "hidden": {
284
+ "type": "boolean"
285
+ },
286
+ "crisis": {
287
+ "type": "boolean"
288
+ },
289
+ "conditional": {
290
+ "type": "boolean"
291
+ },
292
+ "aiStrategyIds": {
293
+ "maxItems": 10000,
294
+ "type": "array",
295
+ "items": {
296
+ "$ref": "#/$defs/__schema7"
297
+ }
298
+ }
299
+ },
300
+ "required": [
301
+ "id",
302
+ "label",
303
+ "family",
304
+ "focusIds",
305
+ "major",
306
+ "hidden",
307
+ "crisis",
308
+ "conditional",
309
+ "aiStrategyIds"
310
+ ],
311
+ "additionalProperties": false
312
+ },
313
+ "__schema6": {
314
+ "type": "string"
315
+ },
316
+ "__schema7": {
317
+ "type": "string"
318
+ },
319
+ "__schema8": {
320
+ "type": "object",
321
+ "properties": {
322
+ "id": {
323
+ "$ref": "#/$defs/__schema9"
324
+ },
325
+ "label": {
326
+ "$ref": "#/$defs/__schema10"
327
+ },
328
+ "order": {
329
+ "$ref": "#/$defs/__schema11"
330
+ },
331
+ "minimumX": {
332
+ "$ref": "#/$defs/__schema12"
333
+ },
334
+ "maximumX": {
335
+ "$ref": "#/$defs/__schema13"
336
+ }
337
+ },
338
+ "required": [
339
+ "id",
340
+ "label",
341
+ "order"
342
+ ],
343
+ "additionalProperties": false
344
+ },
345
+ "__schema9": {
346
+ "type": "string",
347
+ "minLength": 1
348
+ },
349
+ "__schema10": {
350
+ "type": "string"
351
+ },
352
+ "__schema11": {
353
+ "type": "integer",
354
+ "minimum": -9007199254740991,
355
+ "maximum": 9007199254740991
356
+ },
357
+ "__schema12": {
358
+ "type": "integer",
359
+ "minimum": -9007199254740991,
360
+ "maximum": 9007199254740991
361
+ },
362
+ "__schema13": {
363
+ "type": "integer",
364
+ "minimum": -9007199254740991,
365
+ "maximum": 9007199254740991
366
+ },
367
+ "__schema14": {
368
+ "type": "string"
369
+ },
370
+ "__schema15": {
371
+ "type": "object",
372
+ "properties": {
373
+ "id": {
374
+ "type": "string",
375
+ "minLength": 1,
376
+ "maxLength": 256
377
+ },
378
+ "label": {
379
+ "type": "string",
380
+ "maxLength": 1024
381
+ },
382
+ "branchId": {
383
+ "type": "string"
384
+ },
385
+ "laneId": {
386
+ "type": "string"
387
+ },
388
+ "prerequisites": {
389
+ "type": "object",
390
+ "properties": {
391
+ "operator": {
392
+ "type": "string",
393
+ "const": "and"
394
+ },
395
+ "groups": {
396
+ "maxItems": 10000,
397
+ "type": "array",
398
+ "items": {
399
+ "$ref": "#/$defs/__schema16"
400
+ }
401
+ }
402
+ },
403
+ "required": [
404
+ "operator",
405
+ "groups"
406
+ ],
407
+ "additionalProperties": false
408
+ },
409
+ "mutuallyExclusive": {
410
+ "maxItems": 10000,
411
+ "type": "array",
412
+ "items": {
413
+ "$ref": "#/$defs/__schema19"
414
+ }
415
+ },
416
+ "routeLocks": {
417
+ "maxItems": 10000,
418
+ "type": "array",
419
+ "items": {
420
+ "$ref": "#/$defs/__schema20"
421
+ }
422
+ },
423
+ "availability": {
424
+ "$ref": "#/$defs/__schema0"
425
+ },
426
+ "bypass": {
427
+ "$ref": "#/$defs/__schema0"
428
+ },
429
+ "allowBranch": {
430
+ "$ref": "#/$defs/__schema0"
431
+ },
432
+ "position": {
433
+ "oneOf": [
434
+ {
435
+ "type": "object",
436
+ "properties": {
437
+ "mode": {
438
+ "type": "string",
439
+ "const": "fixed"
440
+ },
441
+ "x": {
442
+ "type": "integer",
443
+ "minimum": -100000,
444
+ "maximum": 100000
445
+ },
446
+ "y": {
447
+ "type": "integer",
448
+ "minimum": -100000,
449
+ "maximum": 100000
450
+ },
451
+ "pinned": {
452
+ "type": "boolean"
453
+ }
454
+ },
455
+ "required": [
456
+ "mode",
457
+ "x",
458
+ "y",
459
+ "pinned"
460
+ ],
461
+ "additionalProperties": false
462
+ },
463
+ {
464
+ "type": "object",
465
+ "properties": {
466
+ "mode": {
467
+ "type": "string",
468
+ "const": "relative"
469
+ },
470
+ "x": {
471
+ "type": "integer",
472
+ "minimum": -100000,
473
+ "maximum": 100000
474
+ },
475
+ "y": {
476
+ "type": "integer",
477
+ "minimum": -100000,
478
+ "maximum": 100000
479
+ },
480
+ "relativeTo": {
481
+ "type": "string",
482
+ "minLength": 1
483
+ },
484
+ "pinned": {
485
+ "type": "boolean"
486
+ }
487
+ },
488
+ "required": [
489
+ "mode",
490
+ "x",
491
+ "y",
492
+ "relativeTo",
493
+ "pinned"
494
+ ],
495
+ "additionalProperties": false
496
+ },
497
+ {
498
+ "type": "object",
499
+ "properties": {
500
+ "mode": {
501
+ "type": "string",
502
+ "const": "auto"
503
+ },
504
+ "pinned": {
505
+ "type": "boolean",
506
+ "const": false
507
+ },
508
+ "preferredX": {
509
+ "type": "integer",
510
+ "minimum": -100000,
511
+ "maximum": 100000
512
+ },
513
+ "preferredY": {
514
+ "type": "integer",
515
+ "minimum": -100000,
516
+ "maximum": 100000
517
+ }
518
+ },
519
+ "required": [
520
+ "mode",
521
+ "pinned"
522
+ ],
523
+ "additionalProperties": false
524
+ }
525
+ ]
526
+ },
527
+ "visibility": {
528
+ "type": "string",
529
+ "enum": [
530
+ "normal",
531
+ "hidden",
532
+ "crisis",
533
+ "conditional"
534
+ ]
535
+ },
536
+ "reveal": {
537
+ "type": "object",
538
+ "properties": {
539
+ "kind": {
540
+ "type": "string",
541
+ "enum": [
542
+ "allow_branch",
543
+ "event",
544
+ "decision",
545
+ "scripted_trigger",
546
+ "manual"
547
+ ]
548
+ },
549
+ "references": {
550
+ "maxItems": 10000,
551
+ "type": "array",
552
+ "items": {
553
+ "$ref": "#/$defs/__schema23"
554
+ }
555
+ },
556
+ "description": {
557
+ "type": "string"
558
+ },
559
+ "trigger": {
560
+ "$ref": "#/$defs/__schema0"
561
+ }
562
+ },
563
+ "required": [
564
+ "kind",
565
+ "references"
566
+ ],
567
+ "additionalProperties": false
568
+ },
569
+ "convergence": {
570
+ "type": "boolean"
571
+ },
572
+ "sharedSupport": {
573
+ "type": "boolean"
574
+ },
575
+ "continuous": {
576
+ "type": "boolean",
577
+ "const": false
578
+ },
579
+ "icons": {
580
+ "maxItems": 100,
581
+ "type": "array",
582
+ "items": {
583
+ "$ref": "#/$defs/__schema24"
584
+ }
585
+ },
586
+ "localisation": {
587
+ "type": "object",
588
+ "properties": {
589
+ "titleKey": {
590
+ "type": "string"
591
+ },
592
+ "descriptionKey": {
593
+ "type": "string"
594
+ },
595
+ "workingLabel": {
596
+ "type": "string"
597
+ }
598
+ },
599
+ "required": [
600
+ "titleKey",
601
+ "descriptionKey"
602
+ ],
603
+ "additionalProperties": false
604
+ },
605
+ "ai": {
606
+ "type": "object",
607
+ "properties": {
608
+ "raw": {
609
+ "$ref": "#/$defs/__schema0"
610
+ },
611
+ "majorRoute": {
612
+ "type": "boolean"
613
+ },
614
+ "strategyIds": {
615
+ "maxItems": 10000,
616
+ "type": "array",
617
+ "items": {
618
+ "$ref": "#/$defs/__schema25"
619
+ }
620
+ }
621
+ },
622
+ "required": [
623
+ "majorRoute",
624
+ "strategyIds"
625
+ ],
626
+ "additionalProperties": false
627
+ },
628
+ "filters": {
629
+ "maxItems": 1000,
630
+ "type": "array",
631
+ "items": {
632
+ "$ref": "#/$defs/__schema26"
633
+ }
634
+ },
635
+ "links": {
636
+ "maxItems": 10000,
637
+ "type": "array",
638
+ "items": {
639
+ "$ref": "#/$defs/__schema27"
640
+ }
641
+ },
642
+ "cost": {
643
+ "anyOf": [
644
+ {
645
+ "type": "number"
646
+ },
647
+ {
648
+ "type": "string",
649
+ "minLength": 2,
650
+ "maxLength": 256,
651
+ "pattern": "^@[A-Za-z_][A-Za-z0-9_]*$"
652
+ }
653
+ ]
654
+ },
655
+ "completionReward": {
656
+ "$ref": "#/$defs/__schema0"
657
+ },
658
+ "payoff": {
659
+ "type": "string"
660
+ },
661
+ "terminalKind": {
662
+ "type": "string",
663
+ "enum": [
664
+ "capstone",
665
+ "convergence",
666
+ "failure",
667
+ "route_lock",
668
+ "formable",
669
+ "side_payoff"
670
+ ]
671
+ },
672
+ "rawPassthrough": {
673
+ "maxItems": 20000,
674
+ "type": "array",
675
+ "items": {
676
+ "$ref": "#/$defs/__schema18"
677
+ }
678
+ },
679
+ "sourceLocation": {
680
+ "$ref": "#/$defs/__schema2"
681
+ }
682
+ },
683
+ "required": [
684
+ "id",
685
+ "label",
686
+ "prerequisites",
687
+ "mutuallyExclusive",
688
+ "routeLocks",
689
+ "position",
690
+ "visibility",
691
+ "convergence",
692
+ "sharedSupport",
693
+ "icons",
694
+ "localisation",
695
+ "ai",
696
+ "filters",
697
+ "links",
698
+ "rawPassthrough"
699
+ ],
700
+ "additionalProperties": false
701
+ },
702
+ "__schema16": {
703
+ "type": "object",
704
+ "properties": {
705
+ "operator": {
706
+ "type": "string",
707
+ "const": "or"
708
+ },
709
+ "focusIds": {
710
+ "minItems": 1,
711
+ "maxItems": 10000,
712
+ "type": "array",
713
+ "items": {
714
+ "$ref": "#/$defs/__schema17"
715
+ }
716
+ },
717
+ "rawPassthrough": {
718
+ "maxItems": 10000,
719
+ "type": "array",
720
+ "items": {
721
+ "$ref": "#/$defs/__schema18"
722
+ }
723
+ },
724
+ "sourceLocation": {
725
+ "$ref": "#/$defs/__schema2"
726
+ }
727
+ },
728
+ "required": [
729
+ "operator",
730
+ "focusIds",
731
+ "rawPassthrough"
732
+ ],
733
+ "additionalProperties": false
734
+ },
735
+ "__schema17": {
736
+ "type": "string"
737
+ },
738
+ "__schema18": {
739
+ "type": "object",
740
+ "properties": {
741
+ "kind": {
742
+ "type": "string",
743
+ "enum": [
744
+ "assignment",
745
+ "scalar",
746
+ "block"
747
+ ]
748
+ },
749
+ "key": {
750
+ "type": "string"
751
+ },
752
+ "order": {
753
+ "type": "integer",
754
+ "minimum": 0,
755
+ "maximum": 9007199254740991
756
+ },
757
+ "text": {
758
+ "type": "string"
759
+ },
760
+ "sourceLocation": {
761
+ "$ref": "#/$defs/__schema2"
762
+ }
763
+ },
764
+ "required": [
765
+ "kind",
766
+ "order",
767
+ "text"
768
+ ],
769
+ "additionalProperties": false
770
+ },
771
+ "__schema19": {
772
+ "type": "string"
773
+ },
774
+ "__schema20": {
775
+ "type": "object",
776
+ "properties": {
777
+ "id": {
778
+ "type": "string",
779
+ "minLength": 1
780
+ },
781
+ "field": {
782
+ "type": "string",
783
+ "enum": [
784
+ "available",
785
+ "allow_branch"
786
+ ]
787
+ },
788
+ "mode": {
789
+ "type": "string",
790
+ "enum": [
791
+ "all",
792
+ "any"
793
+ ]
794
+ },
795
+ "requiredFocusIds": {
796
+ "maxItems": 10000,
797
+ "type": "array",
798
+ "items": {
799
+ "$ref": "#/$defs/__schema21"
800
+ }
801
+ },
802
+ "excludedFocusIds": {
803
+ "maxItems": 10000,
804
+ "type": "array",
805
+ "items": {
806
+ "$ref": "#/$defs/__schema22"
807
+ }
808
+ },
809
+ "alwaysImpossible": {
810
+ "type": "boolean"
811
+ },
812
+ "sourceLocation": {
813
+ "$ref": "#/$defs/__schema2"
814
+ }
815
+ },
816
+ "required": [
817
+ "id",
818
+ "mode",
819
+ "requiredFocusIds",
820
+ "excludedFocusIds"
821
+ ],
822
+ "additionalProperties": false
823
+ },
824
+ "__schema21": {
825
+ "type": "string"
826
+ },
827
+ "__schema22": {
828
+ "type": "string"
829
+ },
830
+ "__schema23": {
831
+ "type": "string"
832
+ },
833
+ "__schema24": {
834
+ "oneOf": [
835
+ {
836
+ "type": "object",
837
+ "properties": {
838
+ "kind": {
839
+ "type": "string",
840
+ "const": "static"
841
+ },
842
+ "sprite": {
843
+ "type": "string",
844
+ "minLength": 1
845
+ },
846
+ "sourceLocation": {
847
+ "$ref": "#/$defs/__schema2"
848
+ }
849
+ },
850
+ "required": [
851
+ "kind",
852
+ "sprite"
853
+ ],
854
+ "additionalProperties": false
855
+ },
856
+ {
857
+ "type": "object",
858
+ "properties": {
859
+ "kind": {
860
+ "type": "string",
861
+ "const": "dynamic"
862
+ },
863
+ "sprite": {
864
+ "type": "string",
865
+ "minLength": 1
866
+ },
867
+ "trigger": {
868
+ "$ref": "#/$defs/__schema0"
869
+ },
870
+ "sourceLocation": {
871
+ "$ref": "#/$defs/__schema2"
872
+ }
873
+ },
874
+ "required": [
875
+ "kind",
876
+ "sprite"
877
+ ],
878
+ "additionalProperties": false
879
+ }
880
+ ]
881
+ },
882
+ "__schema25": {
883
+ "type": "string"
884
+ },
885
+ "__schema26": {
886
+ "type": "string"
887
+ },
888
+ "__schema27": {
889
+ "type": "object",
890
+ "properties": {
891
+ "kind": {
892
+ "type": "string",
893
+ "enum": [
894
+ "decision",
895
+ "decision_category",
896
+ "event",
897
+ "idea",
898
+ "leader",
899
+ "formable",
900
+ "helper"
901
+ ]
902
+ },
903
+ "target": {
904
+ "type": "string",
905
+ "minLength": 1
906
+ },
907
+ "sourceLocation": {
908
+ "$ref": "#/$defs/__schema2"
909
+ }
910
+ },
911
+ "required": [
912
+ "kind",
913
+ "target"
914
+ ],
915
+ "additionalProperties": false
916
+ },
917
+ "__schema28": {
918
+ "type": "string"
919
+ },
920
+ "__schema29": {
921
+ "type": "string"
922
+ },
923
+ "__schema30": {
924
+ "type": "string"
925
+ }
926
+ }
927
+ }