@x12i/memorix-metadata 3.0.2 → 3.1.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.
- package/README.md +10 -6
- package/dist/abstracts.d.ts +9 -3
- package/dist/abstracts.d.ts.map +1 -1
- package/dist/abstracts.js +70 -66
- package/dist/abstracts.js.map +1 -1
- package/dist/fold-bindings.d.ts +19 -0
- package/dist/fold-bindings.d.ts.map +1 -0
- package/dist/fold-bindings.js +103 -0
- package/dist/fold-bindings.js.map +1 -0
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/kind-fields.d.ts.map +1 -1
- package/dist/kind-fields.js +0 -1
- package/dist/kind-fields.js.map +1 -1
- package/dist/kinds.d.ts +1 -1
- package/dist/kinds.d.ts.map +1 -1
- package/dist/kinds.js +6 -11
- package/dist/kinds.js.map +1 -1
- package/dist/multi-agent-rule.d.ts +3 -3
- package/dist/multi-agent-rule.d.ts.map +1 -1
- package/dist/multi-agent-rule.js +7 -7
- package/dist/multi-agent-rule.js.map +1 -1
- package/dist/normalize.d.ts +3 -2
- package/dist/normalize.d.ts.map +1 -1
- package/dist/normalize.js +18 -5
- package/dist/normalize.js.map +1 -1
- package/dist/resolve.d.ts +14 -2
- package/dist/resolve.d.ts.map +1 -1
- package/dist/resolve.js +229 -133
- package/dist/resolve.js.map +1 -1
- package/dist/streams.d.ts +17 -0
- package/dist/streams.d.ts.map +1 -0
- package/dist/streams.js +76 -0
- package/dist/streams.js.map +1 -0
- package/dist/topology.d.ts +52 -0
- package/dist/topology.d.ts.map +1 -0
- package/dist/topology.js +348 -0
- package/dist/topology.js.map +1 -0
- package/dist/types.d.ts +133 -17
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +22 -2
- package/dist/types.js.map +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +188 -64
- package/dist/validate.js.map +1 -1
- package/examples/custom-kinds/acme-ui-tabs.pack.json +2 -2
- package/examples/invalid/agent-classification.json +69 -69
- package/examples/invalid/broken-binding.json +69 -69
- package/examples/invalid/completion-mapping-with-exec-policy.json +65 -65
- package/examples/invalid/missing-parent.json +69 -69
- package/examples/invalid/operational-kind-root.json +73 -73
- package/examples/invalid/pipeline-unknown-service.json +62 -62
- package/examples/invalid/relationship-missing-rules.json +65 -65
- package/examples/invalid/relationship-with-storage.json +65 -65
- package/examples/invalid/service-with-secrets.json +66 -66
- package/examples/knowx/normalized/pack.json +1538 -0
- package/examples/{ops → opx}/normalized/pack.json +340 -322
- package/examples/opx/raw/abstract-types.json +244 -0
- package/examples/{ops → opx}/raw/agents.json +8 -8
- package/examples/opx/raw/object-types.json +101 -0
- package/examples/{ops → opx}/raw/pipelines-and-sources.json +79 -31
- package/examples/{ops → opx}/raw/relationship-definitions.json +17 -47
- package/examples/{ops → opx}/raw/view-definitions.json +7 -21
- package/examples/opx/raw/write-and-source-mappings.json +223 -0
- package/examples/{project-ops → project-opx}/normalized/pack.json +391 -299
- package/package.json +1 -1
- package/examples/ops/raw/abstract-bindings.json +0 -38
- package/examples/ops/raw/abstract-types.json +0 -28
- package/examples/ops/raw/object-types.json +0 -170
- package/examples/ops/raw/write-and-source-mappings.json +0 -108
|
@@ -1,37 +1,44 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": "memorix-metadata/1",
|
|
3
|
-
"agentId": "project-
|
|
3
|
+
"agentId": "project-opx",
|
|
4
4
|
"version": "0.1.0",
|
|
5
5
|
"agents": [
|
|
6
6
|
{
|
|
7
|
-
"id": "
|
|
7
|
+
"id": "opx",
|
|
8
8
|
"name": "Operations (generic parent)",
|
|
9
9
|
"description": "Complete generic parent agent for ordinary operational work. Permanent Memorix acceptance pack.",
|
|
10
|
+
"parentIds": [],
|
|
10
11
|
"parentId": null
|
|
11
12
|
},
|
|
12
13
|
{
|
|
13
|
-
"id": "project-
|
|
14
|
-
"name": "Project Operations (child of
|
|
15
|
-
"description": "Inheritance smoke agent. Extends
|
|
16
|
-
"
|
|
14
|
+
"id": "project-opx",
|
|
15
|
+
"name": "Project Operations (child of opx)",
|
|
16
|
+
"description": "Inheritance smoke agent. Extends opx without replacing core definitions.",
|
|
17
|
+
"parentIds": [
|
|
18
|
+
"opx"
|
|
19
|
+
],
|
|
20
|
+
"parentId": "opx"
|
|
17
21
|
}
|
|
18
22
|
],
|
|
19
23
|
"objectTypes": [
|
|
20
24
|
{
|
|
21
|
-
"id": "
|
|
22
|
-
"name": "
|
|
25
|
+
"id": "people",
|
|
26
|
+
"name": "People",
|
|
23
27
|
"dataCategory": "entity",
|
|
24
28
|
"abstractTypes": [
|
|
25
29
|
"People"
|
|
26
30
|
],
|
|
31
|
+
"notes": "Single people OT. Inside vs outside org is identity kind (concept.identifiers.primary.kind): employeeId | externalPersonId \u2014 not separate object types.",
|
|
27
32
|
"contentTypes": [
|
|
28
33
|
{
|
|
29
34
|
"id": "raw",
|
|
30
|
-
"required": true
|
|
35
|
+
"required": true,
|
|
36
|
+
"requiredReason": "Landed provider-native payload; identity and lineage depend on it."
|
|
31
37
|
},
|
|
32
38
|
{
|
|
33
39
|
"id": "snapshots",
|
|
34
|
-
"required": true
|
|
40
|
+
"required": true,
|
|
41
|
+
"requiredReason": "Canonical composed person view used by queries and abstracts."
|
|
35
42
|
},
|
|
36
43
|
{
|
|
37
44
|
"id": "discovery",
|
|
@@ -53,63 +60,6 @@
|
|
|
53
60
|
"id": "relationships",
|
|
54
61
|
"notes": "Candidate store shape until Gate G4"
|
|
55
62
|
}
|
|
56
|
-
],
|
|
57
|
-
"fields": [
|
|
58
|
-
{
|
|
59
|
-
"path": "data.displayName",
|
|
60
|
-
"valueType": "string",
|
|
61
|
-
"contentType": "snapshots"
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"path": "data.role",
|
|
65
|
-
"valueType": "string",
|
|
66
|
-
"contentType": "snapshots"
|
|
67
|
-
}
|
|
68
|
-
]
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
"id": "contractors",
|
|
72
|
-
"name": "Contractors",
|
|
73
|
-
"dataCategory": "entity",
|
|
74
|
-
"abstractTypes": [
|
|
75
|
-
"People"
|
|
76
|
-
],
|
|
77
|
-
"contentTypes": [
|
|
78
|
-
{
|
|
79
|
-
"id": "raw"
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
"id": "snapshots"
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
"id": "discovery",
|
|
86
|
-
"discriminator": {
|
|
87
|
-
"path": "data.discoveryType",
|
|
88
|
-
"required": false
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"id": "analysis",
|
|
93
|
-
"discriminator": {
|
|
94
|
-
"path": "data.analysisType",
|
|
95
|
-
"required": false
|
|
96
|
-
}
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
"id": "relationships"
|
|
100
|
-
}
|
|
101
|
-
],
|
|
102
|
-
"fields": [
|
|
103
|
-
{
|
|
104
|
-
"path": "data.displayName",
|
|
105
|
-
"valueType": "string",
|
|
106
|
-
"contentType": "snapshots"
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
"path": "data.role",
|
|
110
|
-
"valueType": "string",
|
|
111
|
-
"contentType": "snapshots"
|
|
112
|
-
}
|
|
113
63
|
]
|
|
114
64
|
},
|
|
115
65
|
{
|
|
@@ -167,11 +117,11 @@
|
|
|
167
117
|
}
|
|
168
118
|
},
|
|
169
119
|
{
|
|
170
|
-
"id": "
|
|
171
|
-
"name": "
|
|
120
|
+
"id": "playbooks",
|
|
121
|
+
"name": "Playbooks",
|
|
172
122
|
"dataCategory": "knowledge",
|
|
173
123
|
"abstractTypes": [
|
|
174
|
-
"
|
|
124
|
+
"Playbooks"
|
|
175
125
|
],
|
|
176
126
|
"contentTypes": [
|
|
177
127
|
{
|
|
@@ -212,7 +162,7 @@
|
|
|
212
162
|
{
|
|
213
163
|
"id": "People",
|
|
214
164
|
"name": "People",
|
|
215
|
-
"meaning": "
|
|
165
|
+
"meaning": "People who perform operational work \u2014 inside the org (employeeId) or outside (externalPersonId), distinguished by identity kind",
|
|
216
166
|
"category": "entity",
|
|
217
167
|
"properties": [
|
|
218
168
|
{
|
|
@@ -229,113 +179,233 @@
|
|
|
229
179
|
"id": "lens",
|
|
230
180
|
"valueType": "string",
|
|
231
181
|
"required": false
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"id": "email",
|
|
185
|
+
"valueType": "string",
|
|
186
|
+
"required": false
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"id": "organization",
|
|
190
|
+
"valueType": "string",
|
|
191
|
+
"required": false
|
|
232
192
|
}
|
|
233
|
-
]
|
|
234
|
-
},
|
|
235
|
-
{
|
|
236
|
-
"id": "WorkItems",
|
|
237
|
-
"name": "Work Items",
|
|
238
|
-
"meaning": "Units of operational work",
|
|
239
|
-
"category": "entity"
|
|
240
|
-
},
|
|
241
|
-
{
|
|
242
|
-
"id": "Procedures",
|
|
243
|
-
"name": "Procedures",
|
|
244
|
-
"meaning": "Reusable operational knowledge / playbooks",
|
|
245
|
-
"category": "knowledge"
|
|
246
|
-
},
|
|
247
|
-
{
|
|
248
|
-
"id": "ActivityEvents",
|
|
249
|
-
"name": "Activity Events",
|
|
250
|
-
"meaning": "Progress and activity reports about work items",
|
|
251
|
-
"category": "event"
|
|
252
|
-
}
|
|
253
|
-
],
|
|
254
|
-
"abstractBindings": [
|
|
255
|
-
{
|
|
256
|
-
"id": "people-employees-contractors",
|
|
257
|
-
"abstractType": "People",
|
|
258
|
-
"concreteObjectTypes": [
|
|
259
|
-
"employees",
|
|
260
|
-
"contractors"
|
|
261
193
|
],
|
|
262
|
-
"union": true,
|
|
263
|
-
"notes": "People = Employees ∪ Contractors. No abstract records exist.",
|
|
264
194
|
"members": [
|
|
265
195
|
{
|
|
266
|
-
"objectType": "
|
|
196
|
+
"objectType": "people",
|
|
267
197
|
"contentType": "snapshots",
|
|
268
198
|
"properties": [
|
|
269
199
|
{
|
|
270
200
|
"abstractProperty": "title",
|
|
271
201
|
"contentType": "snapshots",
|
|
272
|
-
"mappingId": "
|
|
202
|
+
"mappingId": "opx-people-abstract"
|
|
273
203
|
},
|
|
274
204
|
{
|
|
275
205
|
"abstractProperty": "role",
|
|
276
206
|
"contentType": "snapshots",
|
|
277
|
-
"mappingId": "
|
|
207
|
+
"mappingId": "opx-people-abstract"
|
|
278
208
|
},
|
|
279
209
|
{
|
|
280
210
|
"abstractProperty": "lens",
|
|
281
211
|
"contentType": "snapshots",
|
|
282
|
-
"mappingId": "
|
|
212
|
+
"mappingId": "opx-people-abstract"
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"abstractProperty": "email",
|
|
216
|
+
"contentType": "snapshots",
|
|
217
|
+
"mappingId": "opx-people-abstract"
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"abstractProperty": "organization",
|
|
221
|
+
"contentType": "snapshots",
|
|
222
|
+
"mappingId": "opx-people-abstract"
|
|
283
223
|
}
|
|
284
224
|
]
|
|
225
|
+
}
|
|
226
|
+
],
|
|
227
|
+
"union": false,
|
|
228
|
+
"notes": "People abstract \u2194 people OT 1:1. Inside/outside org is concept.identifiers.primary.kind (employeeId | externalPersonId), not a second OT."
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"id": "WorkItems",
|
|
232
|
+
"name": "Work Items",
|
|
233
|
+
"meaning": "Units of operational work",
|
|
234
|
+
"category": "entity",
|
|
235
|
+
"properties": [
|
|
236
|
+
{
|
|
237
|
+
"id": "title",
|
|
238
|
+
"valueType": "string",
|
|
239
|
+
"required": true
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"id": "status",
|
|
243
|
+
"valueType": "string",
|
|
244
|
+
"required": true
|
|
285
245
|
},
|
|
286
246
|
{
|
|
287
|
-
"
|
|
247
|
+
"id": "priority",
|
|
248
|
+
"valueType": "string",
|
|
249
|
+
"required": false
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"members": [
|
|
253
|
+
{
|
|
254
|
+
"objectType": "work-items",
|
|
288
255
|
"contentType": "snapshots",
|
|
289
256
|
"properties": [
|
|
290
257
|
{
|
|
291
258
|
"abstractProperty": "title",
|
|
292
259
|
"contentType": "snapshots",
|
|
293
|
-
"
|
|
260
|
+
"propertyPath": "data.title",
|
|
261
|
+
"concreteValueType": "string"
|
|
294
262
|
},
|
|
295
263
|
{
|
|
296
|
-
"abstractProperty": "
|
|
264
|
+
"abstractProperty": "status",
|
|
297
265
|
"contentType": "snapshots",
|
|
298
|
-
"
|
|
266
|
+
"propertyPath": "data.status",
|
|
267
|
+
"concreteValueType": "string"
|
|
299
268
|
},
|
|
300
269
|
{
|
|
301
|
-
"abstractProperty": "
|
|
270
|
+
"abstractProperty": "priority",
|
|
302
271
|
"contentType": "snapshots",
|
|
303
|
-
"
|
|
272
|
+
"propertyPath": "data.priority",
|
|
273
|
+
"concreteValueType": "string"
|
|
304
274
|
}
|
|
305
275
|
]
|
|
306
276
|
}
|
|
307
|
-
]
|
|
308
|
-
},
|
|
309
|
-
{
|
|
310
|
-
"id": "work-items-concrete",
|
|
311
|
-
"abstractType": "WorkItems",
|
|
312
|
-
"concreteObjectTypes": [
|
|
313
|
-
"work-items"
|
|
314
277
|
],
|
|
315
278
|
"union": false
|
|
316
279
|
},
|
|
317
280
|
{
|
|
318
|
-
"id": "
|
|
319
|
-
"
|
|
320
|
-
"
|
|
321
|
-
|
|
281
|
+
"id": "Playbooks",
|
|
282
|
+
"name": "Playbooks",
|
|
283
|
+
"meaning": "Reusable operational knowledge / playbooks",
|
|
284
|
+
"category": "knowledge",
|
|
285
|
+
"properties": [
|
|
286
|
+
{
|
|
287
|
+
"id": "title",
|
|
288
|
+
"valueType": "string",
|
|
289
|
+
"required": true
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"id": "body",
|
|
293
|
+
"valueType": "string",
|
|
294
|
+
"required": true
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"id": "contentHash",
|
|
298
|
+
"valueType": "string",
|
|
299
|
+
"required": false
|
|
300
|
+
}
|
|
301
|
+
],
|
|
302
|
+
"members": [
|
|
303
|
+
{
|
|
304
|
+
"objectType": "playbooks",
|
|
305
|
+
"contentType": "snapshots",
|
|
306
|
+
"properties": [
|
|
307
|
+
{
|
|
308
|
+
"abstractProperty": "title",
|
|
309
|
+
"contentType": "snapshots",
|
|
310
|
+
"propertyPath": "data.name",
|
|
311
|
+
"concreteValueType": "string"
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"abstractProperty": "body",
|
|
315
|
+
"contentType": "snapshots",
|
|
316
|
+
"propertyPath": "data.body",
|
|
317
|
+
"concreteValueType": "string"
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"abstractProperty": "contentHash",
|
|
321
|
+
"contentType": "snapshots",
|
|
322
|
+
"propertyPath": "data.contentHash",
|
|
323
|
+
"concreteValueType": "string"
|
|
324
|
+
}
|
|
325
|
+
]
|
|
326
|
+
}
|
|
322
327
|
],
|
|
323
328
|
"union": false
|
|
324
329
|
},
|
|
325
330
|
{
|
|
326
|
-
"id": "
|
|
327
|
-
"
|
|
328
|
-
"
|
|
329
|
-
|
|
331
|
+
"id": "ActivityEvents",
|
|
332
|
+
"name": "Activity Events",
|
|
333
|
+
"meaning": "Progress and activity reports about work items",
|
|
334
|
+
"category": "event",
|
|
335
|
+
"properties": [
|
|
336
|
+
{
|
|
337
|
+
"id": "type",
|
|
338
|
+
"valueType": "string",
|
|
339
|
+
"required": true
|
|
340
|
+
},
|
|
341
|
+
{
|
|
342
|
+
"id": "message",
|
|
343
|
+
"valueType": "string",
|
|
344
|
+
"required": true
|
|
345
|
+
},
|
|
346
|
+
{
|
|
347
|
+
"id": "workItemId",
|
|
348
|
+
"valueType": "recordId",
|
|
349
|
+
"required": true
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
"id": "actorId",
|
|
353
|
+
"valueType": "recordId",
|
|
354
|
+
"required": false
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"id": "occurredAt",
|
|
358
|
+
"valueType": "datetime",
|
|
359
|
+
"required": false
|
|
360
|
+
}
|
|
361
|
+
],
|
|
362
|
+
"members": [
|
|
363
|
+
{
|
|
364
|
+
"objectType": "activity-events",
|
|
365
|
+
"contentType": "snapshots",
|
|
366
|
+
"properties": [
|
|
367
|
+
{
|
|
368
|
+
"abstractProperty": "type",
|
|
369
|
+
"contentType": "snapshots",
|
|
370
|
+
"propertyPath": "data.type",
|
|
371
|
+
"concreteValueType": "string"
|
|
372
|
+
},
|
|
373
|
+
{
|
|
374
|
+
"abstractProperty": "message",
|
|
375
|
+
"contentType": "snapshots",
|
|
376
|
+
"propertyPath": "data.message",
|
|
377
|
+
"concreteValueType": "string"
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
"abstractProperty": "workItemId",
|
|
381
|
+
"contentType": "snapshots",
|
|
382
|
+
"propertyPath": "data.workItemId",
|
|
383
|
+
"concreteValueType": "recordId"
|
|
384
|
+
},
|
|
385
|
+
{
|
|
386
|
+
"abstractProperty": "actorId",
|
|
387
|
+
"contentType": "snapshots",
|
|
388
|
+
"propertyPath": "data.actorId",
|
|
389
|
+
"concreteValueType": "recordId"
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
"abstractProperty": "occurredAt",
|
|
393
|
+
"contentType": "snapshots",
|
|
394
|
+
"propertyPath": "data.occurredAt",
|
|
395
|
+
"concreteValueType": "datetime"
|
|
396
|
+
}
|
|
397
|
+
]
|
|
398
|
+
}
|
|
330
399
|
],
|
|
331
400
|
"union": false
|
|
332
401
|
}
|
|
333
402
|
],
|
|
403
|
+
"abstractBindings": [],
|
|
334
404
|
"relationshipDefinitions": [
|
|
335
405
|
{
|
|
336
406
|
"id": "people-assigned-to-work-items",
|
|
337
407
|
"name": "People assigned to work items",
|
|
338
|
-
"meaning": "A person
|
|
408
|
+
"meaning": "A person is assigned to perform a work item",
|
|
339
409
|
"directionality": "directed",
|
|
340
410
|
"from": {
|
|
341
411
|
"abstractType": "People",
|
|
@@ -350,28 +420,28 @@
|
|
|
350
420
|
"id": "from-source-assignee",
|
|
351
421
|
"kind": "source-field",
|
|
352
422
|
"sourcePath": "assigneeId",
|
|
353
|
-
"notes": "
|
|
423
|
+
"notes": "opx-source work-items.assigneeId resolves to people OT (any identity kind)"
|
|
354
424
|
}
|
|
355
425
|
]
|
|
356
426
|
},
|
|
357
427
|
{
|
|
358
|
-
"id": "work-items-use-
|
|
359
|
-
"name": "Work items use
|
|
360
|
-
"meaning": "A work item follows one or more reusable
|
|
428
|
+
"id": "work-items-use-playbooks",
|
|
429
|
+
"name": "Work items use playbooks",
|
|
430
|
+
"meaning": "A work item follows one or more reusable playbooks",
|
|
361
431
|
"directionality": "directed",
|
|
362
432
|
"from": {
|
|
363
433
|
"abstractType": "WorkItems",
|
|
364
|
-
"path": "
|
|
434
|
+
"path": "usedPlaybooks"
|
|
365
435
|
},
|
|
366
436
|
"to": {
|
|
367
|
-
"abstractType": "
|
|
437
|
+
"abstractType": "Playbooks",
|
|
368
438
|
"path": "usedByWorkItems"
|
|
369
439
|
},
|
|
370
440
|
"discoveryRules": [
|
|
371
441
|
{
|
|
372
|
-
"id": "from-source-
|
|
442
|
+
"id": "from-source-playbook-ids",
|
|
373
443
|
"kind": "source-field",
|
|
374
|
-
"sourcePath": "
|
|
444
|
+
"sourcePath": "playbookIds"
|
|
375
445
|
}
|
|
376
446
|
]
|
|
377
447
|
},
|
|
@@ -441,13 +511,13 @@
|
|
|
441
511
|
],
|
|
442
512
|
"mappings": [
|
|
443
513
|
{
|
|
444
|
-
"id": "
|
|
445
|
-
"
|
|
514
|
+
"id": "opx-source-employees-to-raw",
|
|
515
|
+
"purpose": "source",
|
|
516
|
+
"sourceId": "opx-source",
|
|
446
517
|
"endpoint": "/employees",
|
|
447
|
-
"objectType": "
|
|
518
|
+
"objectType": "people",
|
|
448
519
|
"contentType": "raw",
|
|
449
520
|
"mode": "knowledge",
|
|
450
|
-
"purpose": "source",
|
|
451
521
|
"map": {
|
|
452
522
|
"recordId": {
|
|
453
523
|
"op": "path",
|
|
@@ -456,7 +526,7 @@
|
|
|
456
526
|
},
|
|
457
527
|
"objectType": {
|
|
458
528
|
"op": "constant",
|
|
459
|
-
"value": "
|
|
529
|
+
"value": "people"
|
|
460
530
|
},
|
|
461
531
|
"data.displayName": {
|
|
462
532
|
"op": "path",
|
|
@@ -479,13 +549,13 @@
|
|
|
479
549
|
}
|
|
480
550
|
},
|
|
481
551
|
{
|
|
482
|
-
"id": "
|
|
483
|
-
"
|
|
484
|
-
"
|
|
485
|
-
"
|
|
552
|
+
"id": "opx-source-external-people-to-raw",
|
|
553
|
+
"purpose": "source",
|
|
554
|
+
"sourceId": "opx-source",
|
|
555
|
+
"endpoint": "/external-people",
|
|
556
|
+
"objectType": "people",
|
|
486
557
|
"contentType": "raw",
|
|
487
558
|
"mode": "knowledge",
|
|
488
|
-
"purpose": "source",
|
|
489
559
|
"map": {
|
|
490
560
|
"recordId": {
|
|
491
561
|
"op": "path",
|
|
@@ -494,7 +564,7 @@
|
|
|
494
564
|
},
|
|
495
565
|
"objectType": {
|
|
496
566
|
"op": "constant",
|
|
497
|
-
"value": "
|
|
567
|
+
"value": "people"
|
|
498
568
|
},
|
|
499
569
|
"data.displayName": {
|
|
500
570
|
"op": "path",
|
|
@@ -506,9 +576,9 @@
|
|
|
506
576
|
"path": "role",
|
|
507
577
|
"required": true
|
|
508
578
|
},
|
|
509
|
-
"data.
|
|
579
|
+
"data.organization": {
|
|
510
580
|
"op": "path",
|
|
511
|
-
"path": "
|
|
581
|
+
"path": "organization"
|
|
512
582
|
},
|
|
513
583
|
"data.sourceId": {
|
|
514
584
|
"op": "path",
|
|
@@ -517,13 +587,13 @@
|
|
|
517
587
|
}
|
|
518
588
|
},
|
|
519
589
|
{
|
|
520
|
-
"id": "
|
|
521
|
-
"
|
|
590
|
+
"id": "opx-source-work-items-to-raw",
|
|
591
|
+
"purpose": "source",
|
|
592
|
+
"sourceId": "opx-source",
|
|
522
593
|
"endpoint": "/work-items",
|
|
523
594
|
"objectType": "work-items",
|
|
524
595
|
"contentType": "raw",
|
|
525
596
|
"mode": "knowledge",
|
|
526
|
-
"purpose": "source",
|
|
527
597
|
"map": {
|
|
528
598
|
"data": {
|
|
529
599
|
"op": "path",
|
|
@@ -532,14 +602,14 @@
|
|
|
532
602
|
}
|
|
533
603
|
},
|
|
534
604
|
{
|
|
535
|
-
"id": "
|
|
536
|
-
"
|
|
605
|
+
"id": "opx-source-work-item-context",
|
|
606
|
+
"purpose": "source",
|
|
607
|
+
"sourceId": "opx-source",
|
|
537
608
|
"endpoint": "/work-items/:id/context",
|
|
538
609
|
"objectType": "work-items",
|
|
539
610
|
"contentType": "context",
|
|
540
611
|
"mode": "context",
|
|
541
612
|
"trigger": "on-demand",
|
|
542
|
-
"purpose": "source",
|
|
543
613
|
"map": {
|
|
544
614
|
"data": {
|
|
545
615
|
"op": "path",
|
|
@@ -548,10 +618,10 @@
|
|
|
548
618
|
}
|
|
549
619
|
},
|
|
550
620
|
{
|
|
551
|
-
"id": "
|
|
621
|
+
"id": "opx-people-abstract",
|
|
552
622
|
"purpose": "abstract",
|
|
553
623
|
"abstractType": "People",
|
|
554
|
-
"objectType": "
|
|
624
|
+
"objectType": "people",
|
|
555
625
|
"contentType": "snapshots",
|
|
556
626
|
"map": {
|
|
557
627
|
"title": {
|
|
@@ -572,55 +642,10 @@
|
|
|
572
642
|
"op": "constant",
|
|
573
643
|
"value": "people"
|
|
574
644
|
}
|
|
575
|
-
},
|
|
576
|
-
"reverse": {
|
|
577
|
-
"title": {
|
|
578
|
-
"expr": {
|
|
579
|
-
"op": "path",
|
|
580
|
-
"path": "title"
|
|
581
|
-
},
|
|
582
|
-
"targetPath": "data.displayName"
|
|
583
|
-
}
|
|
584
645
|
}
|
|
585
646
|
},
|
|
586
647
|
{
|
|
587
|
-
"id": "
|
|
588
|
-
"purpose": "abstract",
|
|
589
|
-
"abstractType": "People",
|
|
590
|
-
"objectType": "contractors",
|
|
591
|
-
"contentType": "snapshots",
|
|
592
|
-
"map": {
|
|
593
|
-
"title": {
|
|
594
|
-
"expr": {
|
|
595
|
-
"op": "path",
|
|
596
|
-
"path": "data.displayName"
|
|
597
|
-
},
|
|
598
|
-
"required": true
|
|
599
|
-
},
|
|
600
|
-
"role": {
|
|
601
|
-
"expr": {
|
|
602
|
-
"op": "path",
|
|
603
|
-
"path": "data.role"
|
|
604
|
-
},
|
|
605
|
-
"required": true
|
|
606
|
-
},
|
|
607
|
-
"lens": {
|
|
608
|
-
"op": "constant",
|
|
609
|
-
"value": "people"
|
|
610
|
-
}
|
|
611
|
-
},
|
|
612
|
-
"reverse": {
|
|
613
|
-
"title": {
|
|
614
|
-
"expr": {
|
|
615
|
-
"op": "path",
|
|
616
|
-
"path": "title"
|
|
617
|
-
},
|
|
618
|
-
"targetPath": "data.displayName"
|
|
619
|
-
}
|
|
620
|
-
}
|
|
621
|
-
},
|
|
622
|
-
{
|
|
623
|
-
"id": "ops-work-items-completion-priority",
|
|
648
|
+
"id": "opx-work-items-completion-priority",
|
|
624
649
|
"purpose": "completion",
|
|
625
650
|
"objectType": "work-items",
|
|
626
651
|
"contentType": "snapshots",
|
|
@@ -647,7 +672,7 @@
|
|
|
647
672
|
],
|
|
648
673
|
"views": [
|
|
649
674
|
{
|
|
650
|
-
"id": "
|
|
675
|
+
"id": "opx-work-items-list",
|
|
651
676
|
"kind": "list",
|
|
652
677
|
"objectType": "work-items",
|
|
653
678
|
"title": "Work items",
|
|
@@ -658,7 +683,7 @@
|
|
|
658
683
|
]
|
|
659
684
|
},
|
|
660
685
|
{
|
|
661
|
-
"id": "
|
|
686
|
+
"id": "opx-work-items-item",
|
|
662
687
|
"kind": "item",
|
|
663
688
|
"objectType": "work-items",
|
|
664
689
|
"title": "Work item",
|
|
@@ -671,7 +696,7 @@
|
|
|
671
696
|
]
|
|
672
697
|
},
|
|
673
698
|
{
|
|
674
|
-
"id": "
|
|
699
|
+
"id": "opx-people-list",
|
|
675
700
|
"kind": "list",
|
|
676
701
|
"abstractType": "People",
|
|
677
702
|
"title": "People",
|
|
@@ -682,149 +707,219 @@
|
|
|
682
707
|
]
|
|
683
708
|
},
|
|
684
709
|
{
|
|
685
|
-
"id": "
|
|
710
|
+
"id": "opx-work-item-expand-people",
|
|
686
711
|
"kind": "relationship-expansion",
|
|
687
712
|
"objectType": "work-items",
|
|
688
713
|
"relationshipDefinitionId": "people-assigned-to-work-items",
|
|
689
714
|
"direction": "to-from"
|
|
690
715
|
},
|
|
691
716
|
{
|
|
692
|
-
"id": "project-
|
|
717
|
+
"id": "project-opx-work-items-list",
|
|
693
718
|
"kind": "list",
|
|
694
|
-
"objectType": "work-items",
|
|
695
719
|
"title": "Project work items",
|
|
696
|
-
"
|
|
697
|
-
"
|
|
698
|
-
"concept.title",
|
|
699
|
-
"data.status"
|
|
700
|
-
]
|
|
720
|
+
"objectType": "work-items",
|
|
721
|
+
"extends": "opx-work-items-list"
|
|
701
722
|
}
|
|
702
723
|
],
|
|
703
724
|
"writes": [
|
|
704
725
|
{
|
|
705
|
-
"id": "
|
|
706
|
-
"objectType": "
|
|
726
|
+
"id": "opx-people-employee-snapshots",
|
|
727
|
+
"objectType": "people",
|
|
707
728
|
"contentType": "snapshots",
|
|
708
729
|
"identity": {
|
|
709
730
|
"primaryKind": "employeeId",
|
|
710
|
-
"issuer": "
|
|
731
|
+
"issuer": "opx-source"
|
|
711
732
|
}
|
|
712
733
|
},
|
|
713
734
|
{
|
|
714
|
-
"id": "
|
|
715
|
-
"objectType": "
|
|
735
|
+
"id": "opx-people-external-snapshots",
|
|
736
|
+
"objectType": "people",
|
|
716
737
|
"contentType": "snapshots",
|
|
717
738
|
"identity": {
|
|
718
|
-
"primaryKind": "
|
|
719
|
-
"issuer": "
|
|
739
|
+
"primaryKind": "externalPersonId",
|
|
740
|
+
"issuer": "opx-source"
|
|
720
741
|
}
|
|
721
742
|
},
|
|
722
743
|
{
|
|
723
|
-
"id": "
|
|
744
|
+
"id": "opx-work-items-snapshots",
|
|
724
745
|
"objectType": "work-items",
|
|
725
746
|
"contentType": "snapshots",
|
|
726
747
|
"identity": {
|
|
727
748
|
"primaryKind": "workItemId",
|
|
728
|
-
"issuer": "
|
|
749
|
+
"issuer": "opx-source"
|
|
729
750
|
}
|
|
730
751
|
},
|
|
731
752
|
{
|
|
732
|
-
"id": "
|
|
733
|
-
"objectType": "
|
|
753
|
+
"id": "opx-playbooks-snapshots",
|
|
754
|
+
"objectType": "playbooks",
|
|
734
755
|
"contentType": "snapshots",
|
|
735
756
|
"identity": {
|
|
736
|
-
"primaryKind": "
|
|
737
|
-
"issuer": "
|
|
757
|
+
"primaryKind": "playbookId",
|
|
758
|
+
"issuer": "opx-source"
|
|
738
759
|
}
|
|
739
760
|
},
|
|
740
761
|
{
|
|
741
|
-
"id": "
|
|
762
|
+
"id": "opx-activity-events-snapshots",
|
|
742
763
|
"objectType": "activity-events",
|
|
743
764
|
"contentType": "snapshots",
|
|
744
765
|
"identity": {
|
|
745
766
|
"primaryKind": "activityEventId",
|
|
746
|
-
"issuer": "
|
|
767
|
+
"issuer": "opx-source"
|
|
747
768
|
}
|
|
748
769
|
}
|
|
749
770
|
],
|
|
750
771
|
"sources": [
|
|
751
772
|
{
|
|
752
|
-
"id": "
|
|
753
|
-
"name": "
|
|
754
|
-
"kind": "rest
|
|
755
|
-
"baseUrlEnv": "
|
|
756
|
-
"defaultBaseUrl": "http://127.0.0.1:
|
|
757
|
-
"credentialRef": "
|
|
773
|
+
"id": "opx-source",
|
|
774
|
+
"name": "Opx-service",
|
|
775
|
+
"kind": "rest",
|
|
776
|
+
"baseUrlEnv": "OPX_SOURCE_URL",
|
|
777
|
+
"defaultBaseUrl": "http://127.0.0.1:5102",
|
|
778
|
+
"credentialRef": "opx-source-local",
|
|
779
|
+
"connectorRef": "opx-rest",
|
|
758
780
|
"endpoints": [
|
|
759
781
|
"/employees",
|
|
760
|
-
"/
|
|
782
|
+
"/external-people",
|
|
761
783
|
"/work-items",
|
|
762
784
|
"/activity-events",
|
|
763
|
-
"/
|
|
785
|
+
"/playbooks",
|
|
764
786
|
"/work-items/:id/context"
|
|
765
|
-
]
|
|
766
|
-
}
|
|
767
|
-
],
|
|
768
|
-
"services": [
|
|
769
|
-
{
|
|
770
|
-
"id": "ops-normalize",
|
|
771
|
-
"name": "Normalize records",
|
|
772
|
-
"description": "Logical normalize capability for ops knowledge pull",
|
|
773
|
-
"capabilities": [
|
|
774
|
-
"normalize"
|
|
775
787
|
],
|
|
776
|
-
"
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
788
|
+
"pagination": {
|
|
789
|
+
"style": "cursor",
|
|
790
|
+
"defaultPageSize": 50
|
|
791
|
+
},
|
|
792
|
+
"retention": {
|
|
793
|
+
"context": {
|
|
794
|
+
"ttlSeconds": 3600,
|
|
795
|
+
"discardOnWorkCompletion": true
|
|
780
796
|
}
|
|
781
|
-
|
|
782
|
-
"
|
|
797
|
+
},
|
|
798
|
+
"routes": [
|
|
799
|
+
{
|
|
800
|
+
"endpoint": "/playbooks",
|
|
801
|
+
"objectType": "playbooks",
|
|
802
|
+
"dataCategory": "knowledge",
|
|
803
|
+
"identityPath": "id",
|
|
804
|
+
"primaryKind": "playbookId",
|
|
805
|
+
"modes": [
|
|
806
|
+
"knowledge"
|
|
807
|
+
],
|
|
808
|
+
"pageSize": 2,
|
|
809
|
+
"checkpoint": {
|
|
810
|
+
"method": "cursor"
|
|
811
|
+
}
|
|
812
|
+
},
|
|
783
813
|
{
|
|
784
|
-
"
|
|
785
|
-
"
|
|
814
|
+
"endpoint": "/work-items/:id/context",
|
|
815
|
+
"objectType": "work-items",
|
|
816
|
+
"dataCategory": "entity",
|
|
817
|
+
"identityPath": "workItemId",
|
|
818
|
+
"primaryKind": "workItemId",
|
|
819
|
+
"modes": [
|
|
820
|
+
"context"
|
|
821
|
+
],
|
|
822
|
+
"checkpoint": {
|
|
823
|
+
"method": "cursor"
|
|
824
|
+
}
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
"endpoint": "/work-items",
|
|
828
|
+
"objectType": "work-items",
|
|
829
|
+
"dataCategory": "entity",
|
|
830
|
+
"identityPath": "id",
|
|
831
|
+
"primaryKind": "workItemId",
|
|
832
|
+
"modes": [
|
|
833
|
+
"knowledge"
|
|
834
|
+
],
|
|
835
|
+
"checkpoint": {
|
|
836
|
+
"method": "cursor"
|
|
837
|
+
}
|
|
838
|
+
},
|
|
839
|
+
{
|
|
840
|
+
"endpoint": "/employees",
|
|
841
|
+
"objectType": "people",
|
|
842
|
+
"dataCategory": "entity",
|
|
843
|
+
"identityPath": "id",
|
|
844
|
+
"primaryKind": "employeeId",
|
|
845
|
+
"modes": [
|
|
846
|
+
"knowledge"
|
|
847
|
+
],
|
|
848
|
+
"checkpoint": {
|
|
849
|
+
"method": "cursor"
|
|
850
|
+
}
|
|
851
|
+
},
|
|
852
|
+
{
|
|
853
|
+
"endpoint": "/external-people",
|
|
854
|
+
"objectType": "people",
|
|
855
|
+
"dataCategory": "entity",
|
|
856
|
+
"identityPath": "id",
|
|
857
|
+
"primaryKind": "externalPersonId",
|
|
858
|
+
"modes": [
|
|
859
|
+
"knowledge"
|
|
860
|
+
],
|
|
861
|
+
"checkpoint": {
|
|
862
|
+
"method": "cursor"
|
|
863
|
+
}
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
"endpoint": "/activity-events",
|
|
867
|
+
"objectType": "activity-events",
|
|
868
|
+
"dataCategory": "event",
|
|
869
|
+
"identityPath": "id",
|
|
870
|
+
"primaryKind": "activityEventId",
|
|
871
|
+
"modes": [
|
|
872
|
+
"knowledge"
|
|
873
|
+
],
|
|
874
|
+
"checkpoint": {
|
|
875
|
+
"method": "cursor"
|
|
876
|
+
}
|
|
786
877
|
}
|
|
787
|
-
]
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
}
|
|
792
|
-
},
|
|
878
|
+
]
|
|
879
|
+
}
|
|
880
|
+
],
|
|
881
|
+
"services": [
|
|
793
882
|
{
|
|
794
|
-
"id": "
|
|
795
|
-
"name": "
|
|
883
|
+
"id": "opx-enrich-priority",
|
|
884
|
+
"name": "Enrich work-item priority",
|
|
885
|
+
"description": "Deterministic priority score draft for WorkItems. Returns a patch plan \u2014 does not persist. Pipeline write-record applies the revision-safe mutation on the concrete member.",
|
|
886
|
+
"role": "agent",
|
|
796
887
|
"capabilities": [
|
|
797
|
-
"
|
|
888
|
+
"enrich"
|
|
798
889
|
],
|
|
799
890
|
"inputs": [
|
|
800
891
|
{
|
|
801
892
|
"id": "snapshot",
|
|
802
|
-
"
|
|
893
|
+
"abstractType": "WorkItems",
|
|
894
|
+
"path": "snapshots",
|
|
895
|
+
"description": "Current WorkItems projection at a captured revision"
|
|
803
896
|
}
|
|
804
897
|
],
|
|
805
898
|
"outputs": [
|
|
806
899
|
{
|
|
807
|
-
"id": "
|
|
808
|
-
"
|
|
900
|
+
"id": "patch-plan",
|
|
901
|
+
"abstractType": "WorkItems",
|
|
902
|
+
"path": "snapshots",
|
|
903
|
+
"description": "Draft patch / scored fields for the writer step"
|
|
809
904
|
}
|
|
810
905
|
],
|
|
811
906
|
"invocation": {
|
|
812
907
|
"kind": "worker",
|
|
813
|
-
"operation": "
|
|
908
|
+
"operation": "enrich-priority"
|
|
814
909
|
}
|
|
815
910
|
}
|
|
816
911
|
],
|
|
817
912
|
"pipelines": [
|
|
818
913
|
{
|
|
819
|
-
"id": "
|
|
820
|
-
"name": "Scheduled knowledge pull from
|
|
914
|
+
"id": "opx-knowledge-pull",
|
|
915
|
+
"name": "Scheduled knowledge pull from opx-source",
|
|
821
916
|
"trigger": "scheduled",
|
|
822
917
|
"mode": "knowledge",
|
|
823
918
|
"steps": [
|
|
824
919
|
{
|
|
825
920
|
"id": "pull",
|
|
826
921
|
"kind": "memory-pull",
|
|
827
|
-
"sourceId": "
|
|
922
|
+
"sourceId": "opx-source"
|
|
828
923
|
},
|
|
829
924
|
{
|
|
830
925
|
"id": "land-raw",
|
|
@@ -837,26 +932,11 @@
|
|
|
837
932
|
{
|
|
838
933
|
"id": "promote",
|
|
839
934
|
"kind": "promote-snapshots"
|
|
840
|
-
},
|
|
841
|
-
{
|
|
842
|
-
"id": "normalize-svc",
|
|
843
|
-
"kind": "invoke-service",
|
|
844
|
-
"serviceId": "ops-normalize"
|
|
845
|
-
},
|
|
846
|
-
{
|
|
847
|
-
"id": "complete",
|
|
848
|
-
"kind": "completion",
|
|
849
|
-
"serviceId": "ops-completion",
|
|
850
|
-
"mappingId": "ops-work-items-completion-priority",
|
|
851
|
-
"completionPolicy": {
|
|
852
|
-
"mode": "fill-missing",
|
|
853
|
-
"maxFields": 20
|
|
854
|
-
}
|
|
855
935
|
}
|
|
856
936
|
]
|
|
857
937
|
},
|
|
858
938
|
{
|
|
859
|
-
"id": "
|
|
939
|
+
"id": "opx-context-pull",
|
|
860
940
|
"name": "On-demand work-item context pull",
|
|
861
941
|
"trigger": "on-demand",
|
|
862
942
|
"mode": "context",
|
|
@@ -864,7 +944,7 @@
|
|
|
864
944
|
{
|
|
865
945
|
"id": "pull",
|
|
866
946
|
"kind": "memory-pull",
|
|
867
|
-
"sourceId": "
|
|
947
|
+
"sourceId": "opx-source"
|
|
868
948
|
},
|
|
869
949
|
{
|
|
870
950
|
"id": "land-raw",
|
|
@@ -881,7 +961,7 @@
|
|
|
881
961
|
]
|
|
882
962
|
},
|
|
883
963
|
{
|
|
884
|
-
"id": "
|
|
964
|
+
"id": "opx-relationship-build",
|
|
885
965
|
"name": "Discover and write lightweight relationships",
|
|
886
966
|
"trigger": "explicit",
|
|
887
967
|
"steps": [
|
|
@@ -900,7 +980,7 @@
|
|
|
900
980
|
]
|
|
901
981
|
},
|
|
902
982
|
{
|
|
903
|
-
"id": "
|
|
983
|
+
"id": "opx-analysis",
|
|
904
984
|
"name": "Work-item analysis sibling",
|
|
905
985
|
"trigger": "explicit",
|
|
906
986
|
"steps": [
|
|
@@ -916,7 +996,7 @@
|
|
|
916
996
|
]
|
|
917
997
|
},
|
|
918
998
|
{
|
|
919
|
-
"id": "
|
|
999
|
+
"id": "opx-workflow",
|
|
920
1000
|
"name": "Work-item workflow sibling",
|
|
921
1001
|
"trigger": "explicit",
|
|
922
1002
|
"steps": [
|
|
@@ -930,15 +1010,27 @@
|
|
|
930
1010
|
"contentType": "workflow"
|
|
931
1011
|
}
|
|
932
1012
|
]
|
|
933
|
-
}
|
|
934
|
-
],
|
|
935
|
-
"schedules": [
|
|
1013
|
+
},
|
|
936
1014
|
{
|
|
937
|
-
"id": "
|
|
938
|
-
"
|
|
939
|
-
"
|
|
940
|
-
"
|
|
941
|
-
"
|
|
1015
|
+
"id": "opx-enrich-priority",
|
|
1016
|
+
"name": "Enrich WI priority (draft then write)",
|
|
1017
|
+
"trigger": "explicit",
|
|
1018
|
+
"description": "Capture snapshot \u2192 enrich service (opx-enrich-priority) \u2192 write-record. Runtime v2 uses stepKind enrich + serviceId.",
|
|
1019
|
+
"steps": [
|
|
1020
|
+
{
|
|
1021
|
+
"id": "enrich",
|
|
1022
|
+
"kind": "enrich",
|
|
1023
|
+
"serviceId": "opx-enrich-priority"
|
|
1024
|
+
},
|
|
1025
|
+
{
|
|
1026
|
+
"id": "write",
|
|
1027
|
+
"kind": "write-record",
|
|
1028
|
+
"contentType": "snapshots"
|
|
1029
|
+
}
|
|
1030
|
+
]
|
|
942
1031
|
}
|
|
943
|
-
]
|
|
1032
|
+
],
|
|
1033
|
+
"schedules": [],
|
|
1034
|
+
"kindDeclarations": [],
|
|
1035
|
+
"extensions": {}
|
|
944
1036
|
}
|