@toolproof-core/schema 1.0.10 → 1.0.11

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 (40) hide show
  1. package/dist/generated/artifacts/constants.d.ts +4 -3
  2. package/dist/generated/artifacts/constants.js +4 -3
  3. package/dist/generated/normalized/Genesis.json +50 -25
  4. package/dist/generated/resources/Genesis.json +68 -31
  5. package/dist/generated/schemas/Genesis.json +38 -19
  6. package/dist/generated/schemas/standalone/Job.json +7 -8
  7. package/dist/generated/schemas/standalone/ResourceType.json +4 -4
  8. package/dist/generated/schemas/standalone/RunnableStrategy.json +7 -7
  9. package/dist/generated/schemas/standalone/StrategyRun.json +7 -7
  10. package/dist/generated/types/standalone/Resource_Genesis.d.ts +1 -1
  11. package/dist/generated/types/standalone/Resource_Job.d.ts +1 -1
  12. package/dist/generated/types/standalone/Resource_RawStrategy.d.ts +1 -1
  13. package/dist/generated/types/standalone/Resource_ResourceType.d.ts +1 -1
  14. package/dist/generated/types/standalone/Resource_RunnableStrategy.d.ts +1 -1
  15. package/dist/generated/types/types.d.ts +229 -221
  16. package/dist/index.d.ts +1 -1
  17. package/dist/scripts/generateStandaloneType.js +2 -1
  18. package/dist/scripts/generateTypes.js +136 -3
  19. package/package.json +1 -1
  20. package/src/Genesis.json +54 -28
  21. package/src/generated/artifacts/constants.ts +122 -121
  22. package/src/generated/artifacts/dependencyMap.json +282 -278
  23. package/src/generated/artifacts/terminals.json +13 -12
  24. package/src/generated/normalized/Genesis.json +50 -25
  25. package/src/generated/resources/Genesis.json +68 -31
  26. package/src/generated/schemas/Genesis.json +38 -19
  27. package/src/generated/schemas/standalone/Job.json +195 -196
  28. package/src/generated/schemas/standalone/RawStrategy.json +580 -580
  29. package/src/generated/schemas/standalone/ResourceType.json +106 -106
  30. package/src/generated/schemas/standalone/RunnableStrategy.json +7 -7
  31. package/src/generated/schemas/standalone/StrategyRun.json +7 -7
  32. package/src/generated/types/standalone/Resource_Genesis.d.ts +3 -3
  33. package/src/generated/types/standalone/Resource_Job.d.ts +3 -3
  34. package/src/generated/types/standalone/Resource_RawStrategy.d.ts +3 -3
  35. package/src/generated/types/standalone/Resource_ResourceType.d.ts +3 -3
  36. package/src/generated/types/standalone/Resource_RunnableStrategy.d.ts +3 -3
  37. package/src/generated/types/types.d.ts +229 -221
  38. package/src/index.ts +47 -45
  39. package/src/scripts/generateStandaloneType.ts +3 -1
  40. package/src/scripts/generateTypes.ts +151 -5
@@ -39,6 +39,7 @@ declare const CONSTANTS: {
39
39
  readonly ResourceMissing: "ResourceMissing";
40
40
  readonly ResourceOutputPotential: "ResourceOutputPotential";
41
41
  readonly ResourcePotential: "ResourcePotential";
42
+ readonly ResourceRole: "ResourceRole";
42
43
  readonly ResourceRoleIdentity: "ResourceRoleIdentity";
43
44
  readonly ResourceRoleValue: "ResourceRoleValue";
44
45
  readonly ResourceShellBase: "ResourceShellBase";
@@ -49,7 +50,7 @@ declare const CONSTANTS: {
49
50
  readonly RoleBindingArray: "RoleBindingArray";
50
51
  readonly RoleBindings: "RoleBindings";
51
52
  readonly RoleBindingsFacet: "RoleBindingsFacet";
52
- readonly RoleMap: "RoleMap";
53
+ readonly RoleDict: "RoleDict";
53
54
  readonly Roles: "Roles";
54
55
  readonly RolesFacet: "RolesFacet";
55
56
  readonly RunEvent: "RunEvent";
@@ -79,9 +80,9 @@ declare const CONSTANTS: {
79
80
  readonly StrategyState: "StrategyState";
80
81
  readonly StrategyStateDelta: "StrategyStateDelta";
81
82
  readonly StrategyStateFacet: "StrategyStateFacet";
83
+ readonly StrategyThreadDict: "StrategyThreadDict";
84
+ readonly StrategyThreadDictFacet: "StrategyThreadDictFacet";
82
85
  readonly StrategyThreadIdentity: "StrategyThreadIdentity";
83
- readonly StrategyThreadMap: "StrategyThreadMap";
84
- readonly StrategyThreadMapFacet: "StrategyThreadMapFacet";
85
86
  readonly TickRunEvent: "TickRunEvent";
86
87
  readonly Timestamp: "Timestamp";
87
88
  readonly TimestampFacet: "TimestampFacet";
@@ -39,6 +39,7 @@ const CONSTANTS = {
39
39
  ResourceMissing: 'ResourceMissing',
40
40
  ResourceOutputPotential: 'ResourceOutputPotential',
41
41
  ResourcePotential: 'ResourcePotential',
42
+ ResourceRole: 'ResourceRole',
42
43
  ResourceRoleIdentity: 'ResourceRoleIdentity',
43
44
  ResourceRoleValue: 'ResourceRoleValue',
44
45
  ResourceShellBase: 'ResourceShellBase',
@@ -49,7 +50,7 @@ const CONSTANTS = {
49
50
  RoleBindingArray: 'RoleBindingArray',
50
51
  RoleBindings: 'RoleBindings',
51
52
  RoleBindingsFacet: 'RoleBindingsFacet',
52
- RoleMap: 'RoleMap',
53
+ RoleDict: 'RoleDict',
53
54
  Roles: 'Roles',
54
55
  RolesFacet: 'RolesFacet',
55
56
  RunEvent: 'RunEvent',
@@ -79,9 +80,9 @@ const CONSTANTS = {
79
80
  StrategyState: 'StrategyState',
80
81
  StrategyStateDelta: 'StrategyStateDelta',
81
82
  StrategyStateFacet: 'StrategyStateFacet',
83
+ StrategyThreadDict: 'StrategyThreadDict',
84
+ StrategyThreadDictFacet: 'StrategyThreadDictFacet',
82
85
  StrategyThreadIdentity: 'StrategyThreadIdentity',
83
- StrategyThreadMap: 'StrategyThreadMap',
84
- StrategyThreadMapFacet: 'StrategyThreadMapFacet',
85
86
  TickRunEvent: 'TickRunEvent',
86
87
  Timestamp: 'Timestamp',
87
88
  TimestampFacet: 'TimestampFacet',
@@ -119,7 +119,7 @@
119
119
  "$ref": "#/$defs/ResourceTypeIdentity"
120
120
  },
121
121
  "nucleusSchema": true,
122
- "embeddingUriMap": {
122
+ "embeddingUriDict": {
123
123
  "type": "object",
124
124
  "propertyNames": {
125
125
  "type": "string",
@@ -129,9 +129,9 @@
129
129
  "$ref": "#/$defs/Uri"
130
130
  },
131
131
  "minProperties": 1,
132
- "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this map are members of a set of predefined embedding models."
132
+ "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this dict are members of a set of predefined embedding models."
133
133
  },
134
- "generatorUriMap": {
134
+ "generatorUriDict": {
135
135
  "type": "object",
136
136
  "propertyNames": {
137
137
  "type": "string",
@@ -141,7 +141,7 @@
141
141
  "$ref": "#/$defs/Uri"
142
142
  },
143
143
  "minProperties": 1,
144
- "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this map are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the map. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
144
+ "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this dict are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the dict. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
145
145
  }
146
146
  },
147
147
  "allOf": [
@@ -170,7 +170,6 @@
170
170
  "type": "object",
171
171
  "allOf": [
172
172
  {
173
- "$comment": "A ResourceRole does not have a self-contained identity, as it is always defined in the context of a RoleMap. ResourceRoleValue uses the Value suffix to mean 'the value stored in this map' (RoleMap.additionalProperties).",
174
173
  "required": [
175
174
  "resourceTypeHandle"
176
175
  ],
@@ -187,9 +186,35 @@
187
186
  },
188
187
  "unevaluatedProperties": false
189
188
  },
190
- "RoleMap": {
191
- "identity": "TYPE-RoleMap",
192
- "name": "RoleMap",
189
+ "ResourceRole": {
190
+ "identity": "TYPE-ResourceRole",
191
+ "name": "ResourceRole",
192
+ "description": "dummy-description",
193
+ "nucleusSchema": {
194
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
195
+ "type": "object",
196
+ "allOf": [
197
+ {
198
+ "type": "object",
199
+ "required": [
200
+ "identity"
201
+ ],
202
+ "properties": {
203
+ "identity": {
204
+ "$ref": "#/$defs/ResourceRoleIdentity"
205
+ }
206
+ }
207
+ },
208
+ {
209
+ "$ref": "#/$defs/ResourceRoleValue"
210
+ }
211
+ ]
212
+ },
213
+ "unevaluatedProperties": false
214
+ },
215
+ "RoleDict": {
216
+ "identity": "TYPE-RoleDict",
217
+ "name": "RoleDict",
193
218
  "description": "dummy-description",
194
219
  "nucleusSchema": {
195
220
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -232,17 +257,17 @@
232
257
  "$schema": "https://json-schema.org/draft/2020-12/schema",
233
258
  "type": "object",
234
259
  "required": [
235
- "inputMap",
236
- "outputMap"
260
+ "inputDict",
261
+ "outputDict"
237
262
  ],
238
263
  "properties": {
239
- "inputMap": {
240
- "$ref": "#/$defs/RoleMap"
264
+ "inputDict": {
265
+ "$ref": "#/$defs/RoleDict"
241
266
  },
242
- "outputMap": {
267
+ "outputDict": {
243
268
  "allOf": [
244
269
  {
245
- "$ref": "#/$defs/RoleMap"
270
+ "$ref": "#/$defs/RoleDict"
246
271
  },
247
272
  {
248
273
  "type": "object",
@@ -1251,9 +1276,9 @@
1251
1276
  "pattern": "^STRATEGY_THREAD-.+$"
1252
1277
  }
1253
1278
  },
1254
- "StrategyThreadMap": {
1255
- "identity": "TYPE-StrategyThreadMap",
1256
- "name": "StrategyThreadMap",
1279
+ "StrategyThreadDict": {
1280
+ "identity": "TYPE-StrategyThreadDict",
1281
+ "name": "StrategyThreadDict",
1257
1282
  "description": "dummy-description",
1258
1283
  "nucleusSchema": {
1259
1284
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -1267,19 +1292,19 @@
1267
1292
  "$comment": "Each thread contains an array of steps, allowing for sequential execution within a thread while supporting parallel execution across multiple threads."
1268
1293
  }
1269
1294
  },
1270
- "StrategyThreadMapFacet": {
1271
- "identity": "TYPE-StrategyThreadMapFacet",
1272
- "name": "StrategyThreadMapFacet",
1295
+ "StrategyThreadDictFacet": {
1296
+ "identity": "TYPE-StrategyThreadDictFacet",
1297
+ "name": "StrategyThreadDictFacet",
1273
1298
  "description": "dummy-description",
1274
1299
  "nucleusSchema": {
1275
1300
  "$schema": "https://json-schema.org/draft/2020-12/schema",
1276
1301
  "type": "object",
1277
1302
  "required": [
1278
- "strategyThreadMap"
1303
+ "strategyThreadDict"
1279
1304
  ],
1280
1305
  "properties": {
1281
- "strategyThreadMap": {
1282
- "$ref": "#/$defs/StrategyThreadMap"
1306
+ "strategyThreadDict": {
1307
+ "$ref": "#/$defs/StrategyThreadDict"
1283
1308
  }
1284
1309
  }
1285
1310
  }
@@ -1305,8 +1330,8 @@
1305
1330
  },
1306
1331
  "allOf": [
1307
1332
  {
1308
- "$comment": "The Engine runs jobs specified by steps in strategyThreadMap. The Engine also injects repeted steps when encountering loops.",
1309
- "$ref": "#/$defs/StrategyThreadMapFacet"
1333
+ "$comment": "The Engine runs jobs specified by steps in strategyThreadDict. The Engine also injects repeted steps when encountering loops.",
1334
+ "$ref": "#/$defs/StrategyThreadDictFacet"
1310
1335
  },
1311
1336
  {
1312
1337
  "$comment": "The Engine updates strategyState with materialized Resources upon job completions and runtime-provided input events. It also inserts inputPotential and outputPotential Resources upon step injections.",
@@ -219,7 +219,7 @@
219
219
  "$ref": "#/$defs/ResourceTypeIdentity"
220
220
  },
221
221
  "nucleusSchema": true,
222
- "embeddingUriMap": {
222
+ "embeddingUriDict": {
223
223
  "type": "object",
224
224
  "propertyNames": {
225
225
  "type": "string",
@@ -229,9 +229,9 @@
229
229
  "$ref": "#/$defs/Uri"
230
230
  },
231
231
  "minProperties": 1,
232
- "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this map are members of a set of predefined embedding models."
232
+ "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this dict are members of a set of predefined embedding models."
233
233
  },
234
- "generatorUriMap": {
234
+ "generatorUriDict": {
235
235
  "type": "object",
236
236
  "propertyNames": {
237
237
  "type": "string",
@@ -241,7 +241,7 @@
241
241
  "$ref": "#/$defs/Uri"
242
242
  },
243
243
  "minProperties": 1,
244
- "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this map are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the map. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
244
+ "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this dict are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the dict. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
245
245
  }
246
246
  },
247
247
  "allOf": [
@@ -294,7 +294,6 @@
294
294
  "type": "object",
295
295
  "allOf": [
296
296
  {
297
- "$comment": "A ResourceRole does not have a self-contained identity, as it is always defined in the context of a RoleMap. ResourceRoleValue uses the Value suffix to mean 'the value stored in this map' (RoleMap.additionalProperties).",
298
297
  "required": [
299
298
  "resourceTypeHandle"
300
299
  ],
@@ -312,8 +311,8 @@
312
311
  "unevaluatedProperties": false
313
312
  }
314
313
  },
315
- "RoleMap": {
316
- "identity": "RESOURCE-RoleMap",
314
+ "ResourceRole": {
315
+ "identity": "RESOURCE-ResourceRole",
317
316
  "resourceTypeHandle": "TYPE-ResourceType",
318
317
  "creationContext": {
319
318
  "resourceRoleHandle": "ROLE-Genesis",
@@ -322,10 +321,48 @@
322
321
  "resourceShellKind": "materialized",
323
322
  "version": 1,
324
323
  "timestamp": "2025-11-30T00:00:00.000Z",
325
- "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/RoleMap",
324
+ "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/ResourceRole",
326
325
  "nucleus": {
327
- "identity": "TYPE-RoleMap",
328
- "name": "RoleMap",
326
+ "identity": "TYPE-ResourceRole",
327
+ "name": "ResourceRole",
328
+ "description": "dummy-description",
329
+ "nucleusSchema": {
330
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
331
+ "type": "object",
332
+ "allOf": [
333
+ {
334
+ "type": "object",
335
+ "required": [
336
+ "identity"
337
+ ],
338
+ "properties": {
339
+ "identity": {
340
+ "$ref": "#/$defs/ResourceRoleIdentity"
341
+ }
342
+ }
343
+ },
344
+ {
345
+ "$ref": "#/$defs/ResourceRoleValue"
346
+ }
347
+ ]
348
+ },
349
+ "unevaluatedProperties": false
350
+ }
351
+ },
352
+ "RoleDict": {
353
+ "identity": "RESOURCE-RoleDict",
354
+ "resourceTypeHandle": "TYPE-ResourceType",
355
+ "creationContext": {
356
+ "resourceRoleHandle": "ROLE-Genesis",
357
+ "jobStepHandle": "JOB_STEP-Genesis"
358
+ },
359
+ "resourceShellKind": "materialized",
360
+ "version": 1,
361
+ "timestamp": "2025-11-30T00:00:00.000Z",
362
+ "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/RoleDict",
363
+ "nucleus": {
364
+ "identity": "TYPE-RoleDict",
365
+ "name": "RoleDict",
329
366
  "description": "dummy-description",
330
367
  "nucleusSchema": {
331
368
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -392,17 +429,17 @@
392
429
  "$schema": "https://json-schema.org/draft/2020-12/schema",
393
430
  "type": "object",
394
431
  "required": [
395
- "inputMap",
396
- "outputMap"
432
+ "inputDict",
433
+ "outputDict"
397
434
  ],
398
435
  "properties": {
399
- "inputMap": {
400
- "$ref": "#/$defs/RoleMap"
436
+ "inputDict": {
437
+ "$ref": "#/$defs/RoleDict"
401
438
  },
402
- "outputMap": {
439
+ "outputDict": {
403
440
  "allOf": [
404
441
  {
405
- "$ref": "#/$defs/RoleMap"
442
+ "$ref": "#/$defs/RoleDict"
406
443
  },
407
444
  {
408
445
  "type": "object",
@@ -2036,8 +2073,8 @@
2036
2073
  }
2037
2074
  }
2038
2075
  },
2039
- "StrategyThreadMap": {
2040
- "identity": "RESOURCE-StrategyThreadMap",
2076
+ "StrategyThreadDict": {
2077
+ "identity": "RESOURCE-StrategyThreadDict",
2041
2078
  "resourceTypeHandle": "TYPE-ResourceType",
2042
2079
  "creationContext": {
2043
2080
  "resourceRoleHandle": "ROLE-Genesis",
@@ -2046,10 +2083,10 @@
2046
2083
  "resourceShellKind": "materialized",
2047
2084
  "version": 1,
2048
2085
  "timestamp": "2025-11-30T00:00:00.000Z",
2049
- "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/StrategyThreadMap",
2086
+ "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/StrategyThreadDict",
2050
2087
  "nucleus": {
2051
- "identity": "TYPE-StrategyThreadMap",
2052
- "name": "StrategyThreadMap",
2088
+ "identity": "TYPE-StrategyThreadDict",
2089
+ "name": "StrategyThreadDict",
2053
2090
  "description": "dummy-description",
2054
2091
  "nucleusSchema": {
2055
2092
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -2064,8 +2101,8 @@
2064
2101
  }
2065
2102
  }
2066
2103
  },
2067
- "StrategyThreadMapFacet": {
2068
- "identity": "RESOURCE-StrategyThreadMapFacet",
2104
+ "StrategyThreadDictFacet": {
2105
+ "identity": "RESOURCE-StrategyThreadDictFacet",
2069
2106
  "resourceTypeHandle": "TYPE-ResourceType",
2070
2107
  "creationContext": {
2071
2108
  "resourceRoleHandle": "ROLE-Genesis",
@@ -2074,20 +2111,20 @@
2074
2111
  "resourceShellKind": "materialized",
2075
2112
  "version": 1,
2076
2113
  "timestamp": "2025-11-30T00:00:00.000Z",
2077
- "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/StrategyThreadMapFacet",
2114
+ "path": "https://schemas.toolproof.com/v1/Genesis.json#/$defs/StrategyThreadDictFacet",
2078
2115
  "nucleus": {
2079
- "identity": "TYPE-StrategyThreadMapFacet",
2080
- "name": "StrategyThreadMapFacet",
2116
+ "identity": "TYPE-StrategyThreadDictFacet",
2117
+ "name": "StrategyThreadDictFacet",
2081
2118
  "description": "dummy-description",
2082
2119
  "nucleusSchema": {
2083
2120
  "$schema": "https://json-schema.org/draft/2020-12/schema",
2084
2121
  "type": "object",
2085
2122
  "required": [
2086
- "strategyThreadMap"
2123
+ "strategyThreadDict"
2087
2124
  ],
2088
2125
  "properties": {
2089
- "strategyThreadMap": {
2090
- "$ref": "#/$defs/StrategyThreadMap"
2126
+ "strategyThreadDict": {
2127
+ "$ref": "#/$defs/StrategyThreadDict"
2091
2128
  }
2092
2129
  }
2093
2130
  }
@@ -2125,8 +2162,8 @@
2125
2162
  },
2126
2163
  "allOf": [
2127
2164
  {
2128
- "$comment": "The Engine runs jobs specified by steps in strategyThreadMap. The Engine also injects repeted steps when encountering loops.",
2129
- "$ref": "#/$defs/StrategyThreadMapFacet"
2165
+ "$comment": "The Engine runs jobs specified by steps in strategyThreadDict. The Engine also injects repeted steps when encountering loops.",
2166
+ "$ref": "#/$defs/StrategyThreadDictFacet"
2130
2167
  },
2131
2168
  {
2132
2169
  "$comment": "The Engine updates strategyState with materialized Resources upon job completions and runtime-provided input events. It also inserts inputPotential and outputPotential Resources upon step injections.",
@@ -76,7 +76,7 @@
76
76
  "$ref": "#/$defs/ResourceTypeIdentity"
77
77
  },
78
78
  "nucleusSchema": true,
79
- "embeddingUriMap": {
79
+ "embeddingUriDict": {
80
80
  "type": "object",
81
81
  "propertyNames": {
82
82
  "type": "string",
@@ -86,9 +86,9 @@
86
86
  "$ref": "#/$defs/Uri"
87
87
  },
88
88
  "minProperties": 1,
89
- "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this map are members of a set of predefined embedding models."
89
+ "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this dict are members of a set of predefined embedding models."
90
90
  },
91
- "generatorUriMap": {
91
+ "generatorUriDict": {
92
92
  "type": "object",
93
93
  "propertyNames": {
94
94
  "type": "string",
@@ -98,7 +98,7 @@
98
98
  "$ref": "#/$defs/Uri"
99
99
  },
100
100
  "minProperties": 1,
101
- "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this map are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the map. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
101
+ "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this dict are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the dict. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
102
102
  }
103
103
  },
104
104
  "allOf": [
@@ -117,7 +117,6 @@
117
117
  "type": "object",
118
118
  "allOf": [
119
119
  {
120
- "$comment": "A ResourceRole does not have a self-contained identity, as it is always defined in the context of a RoleMap. ResourceRoleValue uses the Value suffix to mean 'the value stored in this map' (RoleMap.additionalProperties).",
121
120
  "required": [
122
121
  "resourceTypeHandle"
123
122
  ],
@@ -132,7 +131,27 @@
132
131
  }
133
132
  ]
134
133
  },
135
- "RoleMap": {
134
+ "ResourceRole": {
135
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
136
+ "type": "object",
137
+ "allOf": [
138
+ {
139
+ "type": "object",
140
+ "required": [
141
+ "identity"
142
+ ],
143
+ "properties": {
144
+ "identity": {
145
+ "$ref": "#/$defs/ResourceRoleIdentity"
146
+ }
147
+ }
148
+ },
149
+ {
150
+ "$ref": "#/$defs/ResourceRoleValue"
151
+ }
152
+ ]
153
+ },
154
+ "RoleDict": {
136
155
  "$schema": "https://json-schema.org/draft/2020-12/schema",
137
156
  "type": "object",
138
157
  "propertyNames": {
@@ -163,17 +182,17 @@
163
182
  "$schema": "https://json-schema.org/draft/2020-12/schema",
164
183
  "type": "object",
165
184
  "required": [
166
- "inputMap",
167
- "outputMap"
185
+ "inputDict",
186
+ "outputDict"
168
187
  ],
169
188
  "properties": {
170
- "inputMap": {
171
- "$ref": "#/$defs/RoleMap"
189
+ "inputDict": {
190
+ "$ref": "#/$defs/RoleDict"
172
191
  },
173
- "outputMap": {
192
+ "outputDict": {
174
193
  "allOf": [
175
194
  {
176
- "$ref": "#/$defs/RoleMap"
195
+ "$ref": "#/$defs/RoleDict"
177
196
  },
178
197
  {
179
198
  "type": "object",
@@ -920,7 +939,7 @@
920
939
  "type": "string",
921
940
  "pattern": "^STRATEGY_THREAD-.+$"
922
941
  },
923
- "StrategyThreadMap": {
942
+ "StrategyThreadDict": {
924
943
  "$schema": "https://json-schema.org/draft/2020-12/schema",
925
944
  "type": "object",
926
945
  "propertyNames": {
@@ -931,15 +950,15 @@
931
950
  },
932
951
  "$comment": "Each thread contains an array of steps, allowing for sequential execution within a thread while supporting parallel execution across multiple threads."
933
952
  },
934
- "StrategyThreadMapFacet": {
953
+ "StrategyThreadDictFacet": {
935
954
  "$schema": "https://json-schema.org/draft/2020-12/schema",
936
955
  "type": "object",
937
956
  "required": [
938
- "strategyThreadMap"
957
+ "strategyThreadDict"
939
958
  ],
940
959
  "properties": {
941
- "strategyThreadMap": {
942
- "$ref": "#/$defs/StrategyThreadMap"
960
+ "strategyThreadDict": {
961
+ "$ref": "#/$defs/StrategyThreadDict"
943
962
  }
944
963
  }
945
964
  },
@@ -960,8 +979,8 @@
960
979
  },
961
980
  "allOf": [
962
981
  {
963
- "$comment": "The Engine runs jobs specified by steps in strategyThreadMap. The Engine also injects repeted steps when encountering loops.",
964
- "$ref": "#/$defs/StrategyThreadMapFacet"
982
+ "$comment": "The Engine runs jobs specified by steps in strategyThreadDict. The Engine also injects repeted steps when encountering loops.",
983
+ "$ref": "#/$defs/StrategyThreadDictFacet"
965
984
  },
966
985
  {
967
986
  "$comment": "The Engine updates strategyState with materialized Resources upon job completions and runtime-provided input events. It also inserts inputPotential and outputPotential Resources upon step injections.",
@@ -86,17 +86,17 @@
86
86
  "$schema": "https://json-schema.org/draft/2020-12/schema",
87
87
  "type": "object",
88
88
  "required": [
89
- "inputMap",
90
- "outputMap"
89
+ "inputDict",
90
+ "outputDict"
91
91
  ],
92
92
  "properties": {
93
- "inputMap": {
94
- "$ref": "#/$defs/RoleMap"
93
+ "inputDict": {
94
+ "$ref": "#/$defs/RoleDict"
95
95
  },
96
- "outputMap": {
96
+ "outputDict": {
97
97
  "allOf": [
98
98
  {
99
- "$ref": "#/$defs/RoleMap"
99
+ "$ref": "#/$defs/RoleDict"
100
100
  },
101
101
  {
102
102
  "type": "object",
@@ -152,7 +152,7 @@
152
152
  "$comment": "Validation is intercepted by an AI Agent that verifies the description against Toolproof's documentation standards.",
153
153
  "semanticValidation": "Ajv custom keyword to verify description."
154
154
  },
155
- "RoleMap": {
155
+ "RoleDict": {
156
156
  "$schema": "https://json-schema.org/draft/2020-12/schema",
157
157
  "type": "object",
158
158
  "propertyNames": {
@@ -167,7 +167,6 @@
167
167
  "type": "object",
168
168
  "allOf": [
169
169
  {
170
- "$comment": "A ResourceRole does not have a self-contained identity, as it is always defined in the context of a RoleMap. ResourceRoleValue uses the Value suffix to mean 'the value stored in this map' (RoleMap.additionalProperties).",
171
170
  "required": [
172
171
  "resourceTypeHandle"
173
172
  ],
@@ -10,7 +10,7 @@
10
10
  "$ref": "#/$defs/ResourceTypeIdentity"
11
11
  },
12
12
  "nucleusSchema": true,
13
- "embeddingUriMap": {
13
+ "embeddingUriDict": {
14
14
  "type": "object",
15
15
  "propertyNames": {
16
16
  "type": "string",
@@ -20,9 +20,9 @@
20
20
  "$ref": "#/$defs/Uri"
21
21
  },
22
22
  "minProperties": 1,
23
- "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this map are members of a set of predefined embedding models."
23
+ "$comment": "A ResourceType may specify a set of embedding models that convert the raw data (or one of its alternative representations) into vector embeddings. The build process enforces that the keys of this dict are members of a set of predefined embedding models."
24
24
  },
25
- "generatorUriMap": {
25
+ "generatorUriDict": {
26
26
  "type": "object",
27
27
  "propertyNames": {
28
28
  "type": "string",
@@ -32,7 +32,7 @@
32
32
  "$ref": "#/$defs/Uri"
33
33
  },
34
34
  "minProperties": 1,
35
- "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this map are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the map. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
35
+ "$comment": "A ResourceType may specify a set of generators that generate different representations of its instances from the raw file. A ToolProof Resource is always backed by a raw file. This is also true for the Resources (of type ResourceType) defined in this file! The build process enforces that the keys of this dict are members of a set of predefined generators. GENERATOR-Json is an identifier for a generator that generates JSON data from the raw file. If the raw file is a JSON file, GENERATOR-Json is an implicit identity operation (i.e. an operation that does nothing) and must not be present in the dict. A ResourceType may also specify other generators, such as GENERATOR-LeanTerm, which generates an instance (or 'term' in Lean jargon) of a corresponding Lean type from the raw file. ResourceTypes that specify GENERATOR-LeanTerm must also specify a corresponding GENERATOR-LeanType. While the term-version runs when data instances enter the ecosystem, the type-version runs when the ResourceType itself enters the ecosystem."
36
36
  }
37
37
  },
38
38
  "allOf": [