@toolproof-core/genesis 1.0.55 → 1.0.58

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 (27) hide show
  1. package/dist/generated-src/declarations/resourceTypes.json +12 -3
  2. package/dist/generated-src/lookups/constants.d.ts +12 -25
  3. package/dist/generated-src/lookups/constants.js +12 -25
  4. package/dist/generated-src/schemas/schemas.json +73 -214
  5. package/dist/generated-src/schemas/standalone/Resource.json +18 -17
  6. package/dist/generated-src/schemas/standalone/Strategy.json +129 -261
  7. package/dist/generated-src/schemas/standalone/StrategyTrace.json +91 -150
  8. package/dist/generated-src/schemas/standalone/Suite.json +1 -2
  9. package/dist/generated-src/schemas/standalone/Tool.json +1 -2
  10. package/dist/generated-src/schemas/zod/Resource.js +3 -4
  11. package/dist/generated-src/schemas/zod/Strategy.d.ts +0 -6
  12. package/dist/generated-src/schemas/zod/Strategy.js +11 -31
  13. package/dist/generated-src/schemas/zod/StrategyTrace.d.ts +0 -6
  14. package/dist/generated-src/schemas/zod/StrategyTrace.js +20 -32
  15. package/dist/generated-src/timestampedResources/booleans.json +2 -2
  16. package/dist/generated-src/timestampedResources/naturals.json +11 -11
  17. package/dist/generated-src/timestampedResources/resourceTypes.json +22 -13
  18. package/dist/generated-src/timestampedResources/tools.json +15 -15
  19. package/dist/generated-src/types/types.d.ts +48 -124
  20. package/dist/src/index.d.ts +1 -1
  21. package/dist/src/utils/standaloneZodSchemas.js +6 -6
  22. package/dist/src/utils/timestampedResources.d.ts +1 -1
  23. package/dist/src/utils/timestampedResources.js +1 -1
  24. package/dist/src/utils/typeGenerationPostProcess.js +20 -6
  25. package/dist/src/utils/zodCodegen.d.ts +1 -1
  26. package/dist/src/utils/zodCodegen.js +7 -7
  27. package/package.json +1 -1
@@ -77,7 +77,7 @@
77
77
  },
78
78
  "AtomicTypeRef": {
79
79
  "$schema": "https://json-schema.org/draft/2020-12/schema",
80
- "$comment": "An atomic type reference is either resource-backed (resourceTypeHandle, strategy-legal) or schema-backed (roleSchema, internal/Core-only). The roleSchema branch holds an object whose $ref names the type parameter (e.g. '#OperandType'), matching an entry in the template's GenericAssignmentByRoleName.mapKeys. Exactly one atomic branch must be present.",
80
+ "$comment": "An atomic type reference is either ResourceType-backed (resourceTypeHandle, strategy-legal) or schema-backed (roleSchema, internal/Core-only). The roleSchema branch holds an object whose $ref names an internal schema-level type reference. In template Tools' instantiationRoleSpec, this may name a type parameter (for example '#OperandType') matching an entry in the template's GenericAssignmentByRoleName.mapKeys. In other contexts it may name a concrete internal schema definition (for example '#ToolStep'). Exactly one atomic branch must be present.",
81
81
  "oneOf": [
82
82
  {
83
83
  "type": "object",
@@ -102,7 +102,6 @@
102
102
  "required": [
103
103
  "$ref"
104
104
  ],
105
- "$comment": "A reference to a named type parameter. The $ref value must be '#' followed by a RoleName, matching a key in the template's GenericAssignmentByRoleName.mapKeys.",
106
105
  "properties": {
107
106
  "$ref": {
108
107
  "type": "string",
@@ -730,8 +729,7 @@
730
729
  "items": {
731
730
  "$ref": "#/$defs/Case"
732
731
  },
733
- "minItems": 1,
734
- "uniqueItems": true
732
+ "minItems": 1
735
733
  }
736
734
  },
737
735
  "allOf": [
@@ -823,6 +821,7 @@
823
821
  "type": "string",
824
822
  "enum": [
825
823
  "genesis",
824
+ "runtime",
826
825
  "strategy"
827
826
  ]
828
827
  },
@@ -839,39 +838,34 @@
839
838
  },
840
839
  "unevaluatedProperties": false
841
840
  },
842
- "StrategyProvenance": {
841
+ "RuntimeProvenance": {
843
842
  "$schema": "https://json-schema.org/draft/2020-12/schema",
844
843
  "type": "object",
845
844
  "required": [
846
- "provenanceKind",
847
- "strategyTraceHandle",
848
- "toolStepRoleAddress"
845
+ "provenanceKind"
849
846
  ],
850
847
  "properties": {
851
848
  "provenanceKind": {
852
- "const": "strategy"
853
- },
854
- "strategyTraceHandle": {
855
- "$ref": "#/$defs/StrategyTraceHandle"
856
- },
857
- "toolStepRoleAddress": {
858
- "$ref": "#/$defs/ToolStepRoleAddress"
849
+ "const": "runtime"
859
850
  }
860
851
  },
861
852
  "unevaluatedProperties": false
862
853
  },
863
- "DeferredStrategyProvenance": {
854
+ "StrategyProvenance": {
864
855
  "$schema": "https://json-schema.org/draft/2020-12/schema",
865
- "$comment": "Build-time strategy provenance without strategyTraceHandle. strategyTraceHandle is only known at runtime.",
866
856
  "type": "object",
867
857
  "required": [
868
858
  "provenanceKind",
859
+ "strategyTraceHandle",
869
860
  "toolStepRoleAddress"
870
861
  ],
871
862
  "properties": {
872
863
  "provenanceKind": {
873
864
  "const": "strategy"
874
865
  },
866
+ "strategyTraceHandle": {
867
+ "$ref": "#/$defs/StrategyTraceHandle"
868
+ },
875
869
  "toolStepRoleAddress": {
876
870
  "$ref": "#/$defs/ToolStepRoleAddress"
877
871
  }
@@ -884,6 +878,9 @@
884
878
  {
885
879
  "$ref": "#/$defs/GenesisProvenance"
886
880
  },
881
+ {
882
+ "$ref": "#/$defs/RuntimeProvenance"
883
+ },
887
884
  {
888
885
  "$ref": "#/$defs/StrategyProvenance"
889
886
  }
@@ -981,19 +978,11 @@
981
978
  "$schema": "https://json-schema.org/draft/2020-12/schema",
982
979
  "type": "object",
983
980
  "required": [
984
- "strategyStateInputKind",
985
- "id",
986
- "resourceTypeHandle"
981
+ "strategyStateInputKind"
987
982
  ],
988
983
  "properties": {
989
984
  "strategyStateInputKind": {
990
985
  "const": "externalInputPotential"
991
- },
992
- "id": {
993
- "$ref": "#/$defs/ResourceId"
994
- },
995
- "resourceTypeHandle": {
996
- "$ref": "#/$defs/ResourceTypeHandle"
997
986
  }
998
987
  },
999
988
  "unevaluatedProperties": false
@@ -1003,22 +992,14 @@
1003
992
  "type": "object",
1004
993
  "required": [
1005
994
  "strategyStateInputKind",
1006
- "id",
1007
- "resourceTypeHandle",
1008
- "provenance"
995
+ "toolStepRoleAddress"
1009
996
  ],
1010
997
  "properties": {
1011
998
  "strategyStateInputKind": {
1012
999
  "const": "internalInputPotential"
1013
1000
  },
1014
- "id": {
1015
- "$ref": "#/$defs/ResourceId"
1016
- },
1017
- "resourceTypeHandle": {
1018
- "$ref": "#/$defs/ResourceTypeHandle"
1019
- },
1020
- "provenance": {
1021
- "$ref": "#/$defs/DeferredStrategyProvenance"
1001
+ "toolStepRoleAddress": {
1002
+ "$ref": "#/$defs/ToolStepRoleAddress"
1022
1003
  }
1023
1004
  },
1024
1005
  "unevaluatedProperties": false
@@ -1060,8 +1041,7 @@
1060
1041
  "type": "array",
1061
1042
  "items": {
1062
1043
  "$ref": "#/$defs/Step"
1063
- },
1064
- "uniqueItems": true
1044
+ }
1065
1045
  },
1066
1046
  "StepArrayArray": {
1067
1047
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -1087,10 +1067,10 @@
1087
1067
  "type": "string",
1088
1068
  "enum": [
1089
1069
  "self",
1090
- "case.when",
1091
- "case.what",
1092
- "cases.when",
1093
- "cases.what"
1070
+ "case/when",
1071
+ "case/what",
1072
+ "cases/when",
1073
+ "cases/what"
1094
1074
  ]
1095
1075
  },
1096
1076
  "ToolStepPathSlotFacet": {
@@ -1105,14 +1085,18 @@
1105
1085
  }
1106
1086
  }
1107
1087
  },
1108
- "BaseToolStepPathSpec": {
1088
+ "ToolStepPathSpec": {
1109
1089
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1110
1090
  "type": "object",
1111
1091
  "required": [
1092
+ "threadIndex",
1112
1093
  "stepIndex",
1113
1094
  "toolStepPathSlot"
1114
1095
  ],
1115
1096
  "properties": {
1097
+ "threadIndex": {
1098
+ "$ref": "#/$defs/Natural"
1099
+ },
1116
1100
  "stepIndex": {
1117
1101
  "$ref": "#/$defs/Natural"
1118
1102
  },
@@ -1129,8 +1113,8 @@
1129
1113
  "properties": {
1130
1114
  "toolStepPathSlot": {
1131
1115
  "enum": [
1132
- "cases.when",
1133
- "cases.what"
1116
+ "cases/when",
1117
+ "cases/what"
1134
1118
  ]
1135
1119
  }
1136
1120
  }
@@ -1147,8 +1131,8 @@
1147
1131
  "toolStepPathSlot": {
1148
1132
  "enum": [
1149
1133
  "self",
1150
- "case.when",
1151
- "case.what"
1134
+ "case/when",
1135
+ "case/what"
1152
1136
  ]
1153
1137
  }
1154
1138
  }
@@ -1163,87 +1147,21 @@
1163
1147
  }
1164
1148
  ]
1165
1149
  },
1166
- "UnthreadedToolStepPathSpec": {
1167
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1168
- "allOf": [
1169
- {
1170
- "$ref": "#/$defs/BaseToolStepPathSpec"
1171
- }
1172
- ],
1173
- "unevaluatedProperties": false
1174
- },
1175
- "ThreadedToolStepPathSpec": {
1176
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1177
- "allOf": [
1178
- {
1179
- "$ref": "#/$defs/BaseToolStepPathSpec"
1180
- },
1181
- {
1182
- "type": "object",
1183
- "required": [
1184
- "threadIndex"
1185
- ],
1186
- "properties": {
1187
- "threadIndex": {
1188
- "$ref": "#/$defs/Natural"
1189
- }
1190
- }
1191
- }
1192
- ],
1193
- "unevaluatedProperties": false
1194
- },
1195
1150
  "ToolStepPath": {
1196
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1197
- "oneOf": [
1198
- {
1199
- "$ref": "#/$defs/UnthreadedToolStepPath"
1200
- },
1201
- {
1202
- "$ref": "#/$defs/ThreadedToolStepPath"
1203
- }
1204
- ]
1205
- },
1206
- "UnthreadedToolStepPath": {
1207
- "type": "string",
1208
- "pattern": "^/steps/[0-9]+/(self|case/when|case/what|cases/[0-9]+/when|cases/[0-9]+/what)$"
1209
- },
1210
- "ThreadedToolStepPath": {
1211
1151
  "type": "string",
1212
1152
  "pattern": "^/threads/[0-9]+/steps/[0-9]+/(self|case/when|case/what|cases/[0-9]+/when|cases/[0-9]+/what)$"
1213
1153
  },
1214
- "UnthreadedStrategyState": {
1215
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1216
- "type": "object",
1217
- "propertyNames": {
1218
- "$ref": "#/$defs/UnthreadedToolStepPath"
1219
- },
1220
- "additionalProperties": {
1221
- "$ref": "#/$defs/StrategyStateInputEntryByRoleName"
1222
- }
1223
- },
1224
- "ThreadedStrategyState": {
1154
+ "StrategyState": {
1225
1155
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1226
1156
  "type": "object",
1227
1157
  "propertyNames": {
1228
- "$ref": "#/$defs/ThreadedToolStepPath"
1158
+ "$ref": "#/$defs/ToolStepPath"
1229
1159
  },
1230
1160
  "additionalProperties": {
1231
1161
  "$ref": "#/$defs/StrategyStateInputEntryByRoleName"
1232
1162
  }
1233
1163
  },
1234
- "UnthreadedStrategyStateFacet": {
1235
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1236
- "type": "object",
1237
- "required": [
1238
- "strategyState"
1239
- ],
1240
- "properties": {
1241
- "strategyState": {
1242
- "$ref": "#/$defs/UnthreadedStrategyState"
1243
- }
1244
- }
1245
- },
1246
- "ThreadedStrategyStateFacet": {
1164
+ "StrategyStateFacet": {
1247
1165
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1248
1166
  "type": "object",
1249
1167
  "required": [
@@ -1251,95 +1169,32 @@
1251
1169
  ],
1252
1170
  "properties": {
1253
1171
  "strategyState": {
1254
- "$ref": "#/$defs/ThreadedStrategyState"
1172
+ "$ref": "#/$defs/StrategyState"
1255
1173
  }
1256
1174
  }
1257
1175
  },
1258
- "StrategyKind": {
1259
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1260
- "type": "string",
1261
- "enum": [
1262
- "unthreaded",
1263
- "threaded"
1264
- ]
1265
- },
1266
1176
  "StrategyHandle": {
1267
1177
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1268
1178
  "type": "string",
1269
1179
  "pattern": "^STRATEGY-.+$"
1270
1180
  },
1271
- "BaseStrategy": {
1181
+ "Strategy": {
1272
1182
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1273
1183
  "type": "object",
1274
1184
  "required": [
1275
- "handle",
1276
- "strategyKind"
1185
+ "handle"
1277
1186
  ],
1278
1187
  "properties": {
1279
1188
  "handle": {
1280
1189
  "$ref": "#/$defs/StrategyHandle"
1281
- },
1282
- "strategyKind": {
1283
- "$ref": "#/$defs/StrategyKind"
1284
- }
1285
- }
1286
- },
1287
- "UnthreadedStrategy": {
1288
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1289
- "type": "object",
1290
- "allOf": [
1291
- {
1292
- "$ref": "#/$defs/BaseStrategy"
1293
- },
1294
- {
1295
- "type": "object",
1296
- "properties": {
1297
- "strategyKind": {
1298
- "const": "unthreaded"
1299
- }
1300
- }
1301
- },
1302
- {
1303
- "$ref": "#/$defs/StepsFacet"
1304
- },
1305
- {
1306
- "$ref": "#/$defs/UnthreadedStrategyStateFacet"
1307
1190
  }
1308
- ],
1309
- "unevaluatedProperties": false
1310
- },
1311
- "ThreadedStrategy": {
1312
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1313
- "type": "object",
1191
+ },
1314
1192
  "allOf": [
1315
- {
1316
- "$ref": "#/$defs/BaseStrategy"
1317
- },
1318
- {
1319
- "type": "object",
1320
- "properties": {
1321
- "strategyKind": {
1322
- "const": "threaded"
1323
- }
1324
- }
1325
- },
1326
1193
  {
1327
1194
  "$ref": "#/$defs/StepsByThreadIndexFacet"
1328
1195
  },
1329
1196
  {
1330
- "$ref": "#/$defs/ThreadedStrategyStateFacet"
1331
- }
1332
- ],
1333
- "unevaluatedProperties": false
1334
- },
1335
- "Strategy": {
1336
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1337
- "oneOf": [
1338
- {
1339
- "$ref": "#/$defs/UnthreadedStrategy"
1340
- },
1341
- {
1342
- "$ref": "#/$defs/ThreadedStrategy"
1197
+ "$ref": "#/$defs/StrategyStateFacet"
1343
1198
  }
1344
1199
  ]
1345
1200
  },
@@ -1387,10 +1242,10 @@
1387
1242
  }
1388
1243
  },
1389
1244
  "strategyStateDelta": {
1390
- "$ref": "#/$defs/ThreadedStrategyState"
1245
+ "$ref": "#/$defs/StrategyState"
1391
1246
  },
1392
- "interruptData": {
1393
- "$comment": "Kept permissive; the engine may evolve interrupt payloads.",
1247
+ "suspendedData": {
1248
+ "$comment": "Kept permissive; the engine may evolve suspended payloads.",
1394
1249
  "type": [
1395
1250
  "object",
1396
1251
  "null"
@@ -1402,10 +1257,10 @@
1402
1257
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1403
1258
  "type": "string",
1404
1259
  "enum": [
1405
- "graph_start",
1260
+ "strategy_start",
1406
1261
  "tick",
1407
- "interrupt",
1408
- "graph_end"
1262
+ "suspended",
1263
+ "strategy_end"
1409
1264
  ]
1410
1265
  },
1411
1266
  "BaseTracePoint": {
@@ -1414,7 +1269,6 @@
1414
1269
  "required": [
1415
1270
  "tracePointKind",
1416
1271
  "strategyHandle",
1417
- "threadIndex",
1418
1272
  "tracePointIndex"
1419
1273
  ],
1420
1274
  "properties": {
@@ -1424,27 +1278,24 @@
1424
1278
  "strategyHandle": {
1425
1279
  "$ref": "#/$defs/StrategyHandle"
1426
1280
  },
1427
- "threadIndex": {
1428
- "$ref": "#/$defs/Natural"
1429
- },
1430
1281
  "tracePointIndex": {
1431
1282
  "$ref": "#/$defs/Natural"
1432
1283
  }
1433
1284
  }
1434
1285
  },
1435
- "ThreadedStrategyFacet": {
1286
+ "StrategyFacet": {
1436
1287
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1437
1288
  "type": "object",
1438
1289
  "required": [
1439
- "threadedStrategy"
1290
+ "strategy"
1440
1291
  ],
1441
1292
  "properties": {
1442
- "threadedStrategy": {
1443
- "$ref": "#/$defs/ThreadedStrategy"
1293
+ "strategy": {
1294
+ "$ref": "#/$defs/Strategy"
1444
1295
  }
1445
1296
  }
1446
1297
  },
1447
- "GraphStartTracePoint": {
1298
+ "StrategyStartTracePoint": {
1448
1299
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1449
1300
  "allOf": [
1450
1301
  {
@@ -1454,12 +1305,12 @@
1454
1305
  "type": "object",
1455
1306
  "properties": {
1456
1307
  "tracePointKind": {
1457
- "const": "graph_start"
1308
+ "const": "strategy_start"
1458
1309
  }
1459
1310
  }
1460
1311
  },
1461
1312
  {
1462
- "$ref": "#/$defs/ThreadedStrategyFacet"
1313
+ "$ref": "#/$defs/StrategyFacet"
1463
1314
  }
1464
1315
  ]
1465
1316
  },
@@ -1473,6 +1324,7 @@
1473
1324
  "type": "object",
1474
1325
  "required": [
1475
1326
  "counterSnapshot",
1327
+ "threadIndex",
1476
1328
  "toolStepPath",
1477
1329
  "delta"
1478
1330
  ],
@@ -1483,8 +1335,11 @@
1483
1335
  "counterSnapshot": {
1484
1336
  "$ref": "#/$defs/TracePointCounterSnapshot"
1485
1337
  },
1338
+ "threadIndex": {
1339
+ "$ref": "#/$defs/Natural"
1340
+ },
1486
1341
  "toolStepPath": {
1487
- "$ref": "#/$defs/ThreadedToolStepPath"
1342
+ "$ref": "#/$defs/ToolStepPath"
1488
1343
  },
1489
1344
  "delta": {
1490
1345
  "$ref": "#/$defs/TracePointDelta"
@@ -1493,7 +1348,7 @@
1493
1348
  }
1494
1349
  ]
1495
1350
  },
1496
- "InterruptTracePoint": {
1351
+ "SuspendedTracePoint": {
1497
1352
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1498
1353
  "allOf": [
1499
1354
  {
@@ -1503,18 +1358,22 @@
1503
1358
  "type": "object",
1504
1359
  "required": [
1505
1360
  "counterSnapshot",
1361
+ "threadIndex",
1506
1362
  "toolStepPath",
1507
1363
  "delta"
1508
1364
  ],
1509
1365
  "properties": {
1510
1366
  "tracePointKind": {
1511
- "const": "interrupt"
1367
+ "const": "suspended"
1512
1368
  },
1513
1369
  "counterSnapshot": {
1514
1370
  "$ref": "#/$defs/TracePointCounterSnapshot"
1515
1371
  },
1372
+ "threadIndex": {
1373
+ "$ref": "#/$defs/Natural"
1374
+ },
1516
1375
  "toolStepPath": {
1517
- "$ref": "#/$defs/ThreadedToolStepPath"
1376
+ "$ref": "#/$defs/ToolStepPath"
1518
1377
  },
1519
1378
  "delta": {
1520
1379
  "allOf": [
@@ -1524,11 +1383,11 @@
1524
1383
  {
1525
1384
  "type": "object",
1526
1385
  "required": [
1527
- "interruptData"
1386
+ "suspendedData"
1528
1387
  ],
1529
1388
  "properties": {
1530
- "interruptData": {
1531
- "$comment": "Interrupt events must include a non-null interrupt payload.",
1389
+ "suspendedData": {
1390
+ "$comment": "Suspended events must include a non-null suspended payload.",
1532
1391
  "type": "object"
1533
1392
  }
1534
1393
  }
@@ -1539,7 +1398,7 @@
1539
1398
  }
1540
1399
  ]
1541
1400
  },
1542
- "GraphEndTracePoint": {
1401
+ "StrategyEndTracePoint": {
1543
1402
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1544
1403
  "allOf": [
1545
1404
  {
@@ -1549,7 +1408,7 @@
1549
1408
  "type": "object",
1550
1409
  "properties": {
1551
1410
  "tracePointKind": {
1552
- "const": "graph_end"
1411
+ "const": "strategy_end"
1553
1412
  }
1554
1413
  }
1555
1414
  }
@@ -1560,16 +1419,16 @@
1560
1419
  "type": "object",
1561
1420
  "oneOf": [
1562
1421
  {
1563
- "$ref": "#/$defs/GraphStartTracePoint"
1422
+ "$ref": "#/$defs/StrategyStartTracePoint"
1564
1423
  },
1565
1424
  {
1566
1425
  "$ref": "#/$defs/TickTracePoint"
1567
1426
  },
1568
1427
  {
1569
- "$ref": "#/$defs/InterruptTracePoint"
1428
+ "$ref": "#/$defs/SuspendedTracePoint"
1570
1429
  },
1571
1430
  {
1572
- "$ref": "#/$defs/GraphEndTracePoint"
1431
+ "$ref": "#/$defs/StrategyEndTracePoint"
1573
1432
  }
1574
1433
  ]
1575
1434
  },
@@ -70,6 +70,9 @@
70
70
  {
71
71
  "$ref": "#/$defs/GenesisProvenance"
72
72
  },
73
+ {
74
+ "$ref": "#/$defs/RuntimeProvenance"
75
+ },
73
76
  {
74
77
  "$ref": "#/$defs/StrategyProvenance"
75
78
  }
@@ -88,6 +91,19 @@
88
91
  },
89
92
  "unevaluatedProperties": false
90
93
  },
94
+ "RuntimeProvenance": {
95
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
96
+ "type": "object",
97
+ "required": [
98
+ "provenanceKind"
99
+ ],
100
+ "properties": {
101
+ "provenanceKind": {
102
+ "const": "runtime"
103
+ }
104
+ },
105
+ "unevaluatedProperties": false
106
+ },
91
107
  "StrategyProvenance": {
92
108
  "$schema": "https://json-schema.org/draft/2020-12/schema",
93
109
  "type": "object",
@@ -136,15 +152,8 @@
136
152
  "$ref": "#/$defs/Name"
137
153
  },
138
154
  "ToolStepPath": {
139
- "$schema": "https://json-schema.org/draft/2020-12/schema",
140
- "oneOf": [
141
- {
142
- "$ref": "#/$defs/UnthreadedToolStepPath"
143
- },
144
- {
145
- "$ref": "#/$defs/ThreadedToolStepPath"
146
- }
147
- ]
155
+ "type": "string",
156
+ "pattern": "^/threads/[0-9]+/steps/[0-9]+/(self|case/when|case/what|cases/[0-9]+/when|cases/[0-9]+/what)$"
148
157
  },
149
158
  "Name": {
150
159
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -153,14 +162,6 @@
153
162
  "pattern": "^[A-Z][a-zA-Z0-9]*$",
154
163
  "$comment": "Validation is intercepted by an AI Agent that verifies the name against Toolproof's naming conventions.",
155
164
  "semanticValidation": "Ajv custom keyword to verify name."
156
- },
157
- "UnthreadedToolStepPath": {
158
- "type": "string",
159
- "pattern": "^/steps/[0-9]+/(self|case/when|case/what|cases/[0-9]+/when|cases/[0-9]+/what)$"
160
- },
161
- "ThreadedToolStepPath": {
162
- "type": "string",
163
- "pattern": "^/threads/[0-9]+/steps/[0-9]+/(self|case/when|case/what|cases/[0-9]+/when|cases/[0-9]+/what)$"
164
165
  }
165
166
  }
166
167
  }