@x12i/memorix-retrieval 1.31.0 → 1.32.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 (64) hide show
  1. package/catalox-seeds/inputs/entity-descriptors/assets.json +312 -7
  2. package/catalox-seeds/inputs/entity-descriptors/subnets.json +207 -2
  3. package/catalox-seeds/inputs/entity-descriptors/topology-zones.json +85 -0
  4. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities-groups.json +255 -0
  5. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +294 -10
  6. package/catalox-seeds/inputs/item-descriptors/asset-detail-item.json +63 -14
  7. package/catalox-seeds/inputs/item-descriptors/subnet-detail-item.json +51 -17
  8. package/catalox-seeds/inputs/item-descriptors/vulnerabilities-group-detail-item.json +97 -0
  9. package/catalox-seeds/inputs/item-descriptors/vulnerability-detail-item.json +44 -40
  10. package/catalox-seeds/inputs/item-descriptors/vulnerability-observation-detail-item.json +42 -0
  11. package/catalox-seeds/inputs/list-descriptors/assets-exploitability-decisions-list.json +33 -0
  12. package/catalox-seeds/inputs/list-descriptors/assets-main-list.json +56 -2
  13. package/catalox-seeds/inputs/list-descriptors/assets-potential-impact-decisions-list.json +31 -0
  14. package/catalox-seeds/inputs/list-descriptors/subnets-main-list.json +107 -3
  15. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-exploitability-analysis-list.json +29 -0
  16. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-groups-main-list.json +98 -0
  17. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-main-list.json +7 -1
  18. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-observations-list.json +43 -0
  19. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-triage-analysis-list.json +30 -0
  20. package/catalox-seeds/inputs/list-descriptors/vulnerable-assets-list.json +102 -0
  21. package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +2512 -367
  22. package/dist/descriptors/descriptor-types.d.ts +38 -0
  23. package/dist/descriptors/descriptor-types.d.ts.map +1 -1
  24. package/dist/descriptors/validate-descriptor.d.ts +1 -0
  25. package/dist/descriptors/validate-descriptor.d.ts.map +1 -1
  26. package/dist/descriptors/validate-descriptor.js +27 -0
  27. package/dist/descriptors/validate-descriptor.js.map +1 -1
  28. package/dist/explorer/collection-records.d.ts.map +1 -1
  29. package/dist/explorer/collection-records.js +22 -2
  30. package/dist/explorer/collection-records.js.map +1 -1
  31. package/dist/explorer/raw-collection-records.d.ts +2 -0
  32. package/dist/explorer/raw-collection-records.d.ts.map +1 -1
  33. package/dist/explorer/raw-collection-records.js +1 -1
  34. package/dist/explorer/raw-collection-records.js.map +1 -1
  35. package/dist/index.d.ts +3 -2
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +2 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/mongo/env.d.ts +17 -0
  40. package/dist/mongo/env.d.ts.map +1 -1
  41. package/dist/mongo/env.js +73 -0
  42. package/dist/mongo/env.js.map +1 -1
  43. package/dist/retrieval/fetch-list.d.ts.map +1 -1
  44. package/dist/retrieval/fetch-list.js +3 -1
  45. package/dist/retrieval/fetch-list.js.map +1 -1
  46. package/dist/retrieval/fetch-narratives.d.ts +8 -0
  47. package/dist/retrieval/fetch-narratives.d.ts.map +1 -1
  48. package/dist/retrieval/fetch-narratives.js +39 -9
  49. package/dist/retrieval/fetch-narratives.js.map +1 -1
  50. package/dist/retrieval/narrative-list-filters.d.ts +30 -0
  51. package/dist/retrieval/narrative-list-filters.d.ts.map +1 -0
  52. package/dist/retrieval/narrative-list-filters.js +179 -0
  53. package/dist/retrieval/narrative-list-filters.js.map +1 -0
  54. package/dist/retrieval/resolve-filters.d.ts +11 -1
  55. package/dist/retrieval/resolve-filters.d.ts.map +1 -1
  56. package/dist/retrieval/resolve-filters.js +34 -7
  57. package/dist/retrieval/resolve-filters.js.map +1 -1
  58. package/dist/seeds/default-seed-spec.d.ts.map +1 -1
  59. package/dist/seeds/default-seed-spec.js +9 -0
  60. package/dist/seeds/default-seed-spec.js.map +1 -1
  61. package/dist/tests/resolve-filters.test.js +81 -4
  62. package/dist/tests/resolve-filters.test.js.map +1 -1
  63. package/docs/MEMORIX-CATALOX-CONTRACTS.md +2 -0
  64. package/package.json +5 -5
@@ -0,0 +1,85 @@
1
+ {
2
+ "id": "topology-zones",
3
+ "entityName": "topology-zones",
4
+ "defaultListDescriptorId": "topology-zones-main-list",
5
+ "defaultItemDescriptorId": "topology-zone-detail-item",
6
+ "target": "entity",
7
+ "collectionPrefix": "topology-zones",
8
+ "identity": {
9
+ "allowedIdFields": ["recordId"],
10
+ "requiredExactlyOne": true,
11
+ "defaultIdField": "recordId",
12
+ "conceptIdentifier": {
13
+ "kind": "zoneName",
14
+ "path": "concept.identifier.zoneName"
15
+ }
16
+ },
17
+ "defaults": {
18
+ "canonicalContentType": "snapshots",
19
+ "dataRoot": "data",
20
+ "effectiveDatePath": "capturedAt",
21
+ "fallbackEffectiveDatePaths": []
22
+ },
23
+ "contentTypes": {
24
+ "snapshots": {
25
+ "postfix": "snapshots",
26
+ "collection": "topology-zones-snapshots",
27
+ "isCanonical": true
28
+ },
29
+ "analysis": {
30
+ "postfix": "analysis",
31
+ "collection": "topology-zones-analysis",
32
+ "isCanonical": false
33
+ },
34
+ "core": {
35
+ "postfix": "core",
36
+ "collection": "topology-zones-core",
37
+ "isCanonical": false
38
+ }
39
+ },
40
+ "properties": {
41
+ "name": {
42
+ "label": "Zone Name",
43
+ "source": { "contentType": "snapshots", "path": "data.name" },
44
+ "humanReadable": true,
45
+ "sortable": true,
46
+ "filterable": true,
47
+ "list": true,
48
+ "item": true,
49
+ "valueType": "string"
50
+ },
51
+ "zoneClass": {
52
+ "label": "Zone Class",
53
+ "source": { "contentType": "snapshots", "path": "data.zoneClass" },
54
+ "humanReadable": true,
55
+ "sortable": true,
56
+ "filterable": true,
57
+ "list": true,
58
+ "item": true,
59
+ "valueType": "string"
60
+ },
61
+ "apparentRole": {
62
+ "label": "Apparent Role",
63
+ "source": { "contentType": "analysis", "path": "data.apparentRole" },
64
+ "humanReadable": true,
65
+ "sortable": false,
66
+ "filterable": true,
67
+ "list": false,
68
+ "item": true,
69
+ "valueType": "string"
70
+ },
71
+ "shortAnalysis": {
72
+ "label": "Short Analysis",
73
+ "source": { "contentType": "analysis", "path": "data.shortAnalysis" },
74
+ "humanReadable": true,
75
+ "sortable": false,
76
+ "filterable": false,
77
+ "list": false,
78
+ "item": true,
79
+ "valueType": "string"
80
+ }
81
+ },
82
+ "associatedProperties": [],
83
+ "processing": {},
84
+ "relations": {}
85
+ }
@@ -108,9 +108,264 @@
108
108
  "list": true,
109
109
  "item": true,
110
110
  "valueType": "number"
111
+ },
112
+ "affectedEntitiesCount": {
113
+ "label": "Affected #",
114
+ "source": {
115
+ "contentType": "snapshots",
116
+ "path": "analytics.affectedAssets.total"
117
+ },
118
+ "humanReadable": true,
119
+ "sortable": true,
120
+ "filterable": false,
121
+ "list": true,
122
+ "item": true,
123
+ "valueType": "number",
124
+ "format": "count"
125
+ },
126
+ "findingsCount": {
127
+ "label": "Findings #",
128
+ "source": {
129
+ "contentType": "snapshots",
130
+ "path": "analytics.findings.total"
131
+ },
132
+ "humanReadable": true,
133
+ "sortable": true,
134
+ "filterable": false,
135
+ "list": true,
136
+ "item": true,
137
+ "valueType": "number",
138
+ "format": "count"
139
+ },
140
+ "vulnerabilitiesCount": {
141
+ "label": "Vulnerabilities #",
142
+ "source": {
143
+ "contentType": "snapshots",
144
+ "path": "analytics.vulnerabilities.total"
145
+ },
146
+ "humanReadable": true,
147
+ "sortable": true,
148
+ "filterable": false,
149
+ "list": true,
150
+ "item": true,
151
+ "valueType": "number",
152
+ "format": "count"
153
+ },
154
+ "criticalVulnerabilities": {
155
+ "label": "Critical Vulnerabilities",
156
+ "source": {
157
+ "contentType": "snapshots",
158
+ "path": "analytics.vulnerabilities.critical"
159
+ },
160
+ "humanReadable": true,
161
+ "sortable": true,
162
+ "filterable": false,
163
+ "list": true,
164
+ "item": true,
165
+ "valueType": "number"
166
+ },
167
+ "highVulnerabilities": {
168
+ "label": "High Vulnerabilities",
169
+ "source": {
170
+ "contentType": "snapshots",
171
+ "path": "analytics.vulnerabilities.high"
172
+ },
173
+ "humanReadable": true,
174
+ "sortable": true,
175
+ "filterable": false,
176
+ "list": true,
177
+ "item": true,
178
+ "valueType": "number"
179
+ },
180
+ "mediumVulnerabilities": {
181
+ "label": "Medium Vulnerabilities",
182
+ "source": {
183
+ "contentType": "snapshots",
184
+ "path": "analytics.vulnerabilities.medium"
185
+ },
186
+ "humanReadable": true,
187
+ "sortable": true,
188
+ "filterable": false,
189
+ "list": true,
190
+ "item": true,
191
+ "valueType": "number"
192
+ },
193
+ "lowVulnerabilities": {
194
+ "label": "Low Vulnerabilities",
195
+ "source": {
196
+ "contentType": "snapshots",
197
+ "path": "analytics.vulnerabilities.low"
198
+ },
199
+ "humanReadable": true,
200
+ "sortable": true,
201
+ "filterable": false,
202
+ "list": true,
203
+ "item": true,
204
+ "valueType": "number"
205
+ },
206
+ "riskLevel": {
207
+ "label": "Risk Level",
208
+ "source": {
209
+ "contentType": "snapshots",
210
+ "path": "data.enrichment.riskLevel"
211
+ },
212
+ "humanReadable": true,
213
+ "sortable": true,
214
+ "filterable": true,
215
+ "list": true,
216
+ "item": true,
217
+ "valueType": "string"
218
+ },
219
+ "priorityScore": {
220
+ "label": "Priority Score",
221
+ "source": {
222
+ "contentType": "snapshots",
223
+ "path": "data.enrichment.priorityScore"
224
+ },
225
+ "humanReadable": true,
226
+ "sortable": true,
227
+ "filterable": true,
228
+ "list": true,
229
+ "item": true,
230
+ "valueType": "number"
231
+ },
232
+ "knownExploited": {
233
+ "label": "Known Exploited (KEV)",
234
+ "source": {
235
+ "contentType": "snapshots",
236
+ "path": "data.enrichment.knownExploited"
237
+ },
238
+ "humanReadable": true,
239
+ "sortable": true,
240
+ "filterable": true,
241
+ "list": true,
242
+ "item": true,
243
+ "valueType": "string"
244
+ },
245
+ "vulnerabilityType": {
246
+ "label": "Type",
247
+ "source": {
248
+ "contentType": "snapshots",
249
+ "path": "data.vulnerability_type"
250
+ },
251
+ "humanReadable": true,
252
+ "sortable": true,
253
+ "filterable": true,
254
+ "list": true,
255
+ "item": true,
256
+ "valueType": "string"
257
+ },
258
+ "analysisBriefSummary": {
259
+ "label": "Brief Summary",
260
+ "source": { "contentType": "analysis", "path": "data.brief.summary" },
261
+ "humanReadable": true,
262
+ "list": true,
263
+ "item": true,
264
+ "valueType": "string"
265
+ },
266
+ "analysisBriefAnalysis": {
267
+ "label": "Brief Analysis",
268
+ "source": { "contentType": "analysis", "path": "data.brief.analysis" },
269
+ "humanReadable": true,
270
+ "list": true,
271
+ "item": true,
272
+ "valueType": "string"
273
+ },
274
+ "analysisBriefEvidence": {
275
+ "label": "Brief Evidence",
276
+ "source": { "contentType": "analysis", "path": "data.brief.evidence" },
277
+ "humanReadable": true,
278
+ "list": false,
279
+ "item": true,
280
+ "valueType": "string"
281
+ },
282
+ "analysisBriefGaps": {
283
+ "label": "Brief Gaps",
284
+ "source": { "contentType": "analysis", "path": "data.brief.gaps" },
285
+ "humanReadable": true,
286
+ "list": false,
287
+ "item": true,
288
+ "valueType": "string"
289
+ },
290
+ "analysisApplicability": {
291
+ "label": "Applicability",
292
+ "source": { "contentType": "analysis", "path": "data.applicability" },
293
+ "humanReadable": false,
294
+ "list": false,
295
+ "item": true,
296
+ "valueType": "object"
297
+ },
298
+ "analysisExploitability": {
299
+ "label": "Exploitability",
300
+ "source": { "contentType": "analysis", "path": "data.exploitability" },
301
+ "humanReadable": false,
302
+ "list": false,
303
+ "item": true,
304
+ "valueType": "object"
305
+ },
306
+ "analysisImpact": {
307
+ "label": "Impact",
308
+ "source": { "contentType": "analysis", "path": "data.impact" },
309
+ "humanReadable": false,
310
+ "list": false,
311
+ "item": true,
312
+ "valueType": "object"
313
+ },
314
+ "analysisThreat": {
315
+ "label": "Threat",
316
+ "source": { "contentType": "analysis", "path": "data.threat" },
317
+ "humanReadable": false,
318
+ "list": false,
319
+ "item": true,
320
+ "valueType": "object"
321
+ },
322
+ "analysisMitre": {
323
+ "label": "MITRE",
324
+ "source": { "contentType": "analysis", "path": "data.mitre" },
325
+ "humanReadable": false,
326
+ "list": false,
327
+ "item": true,
328
+ "valueType": "array"
111
329
  }
112
330
  },
113
331
  "associatedProperties": [],
332
+ "narratives": {
333
+ "has-none-severity": {
334
+ "label": "None severity",
335
+ "kind": "association-common-property",
336
+ "sourceRef": "severity",
337
+ "property": "severity",
338
+ "value": "none"
339
+ },
340
+ "has-low-severity": {
341
+ "label": "Low severity",
342
+ "kind": "association-common-property",
343
+ "sourceRef": "severity",
344
+ "property": "severity",
345
+ "value": "low"
346
+ },
347
+ "has-medium-severity": {
348
+ "label": "Medium severity",
349
+ "kind": "association-common-property",
350
+ "sourceRef": "severity",
351
+ "property": "severity",
352
+ "value": "medium"
353
+ },
354
+ "has-high-severity": {
355
+ "label": "High severity",
356
+ "kind": "association-common-property",
357
+ "sourceRef": "severity",
358
+ "property": "severity",
359
+ "value": "high"
360
+ },
361
+ "has-critical-severity": {
362
+ "label": "Critical severity",
363
+ "kind": "association-common-property",
364
+ "sourceRef": "severity",
365
+ "property": "severity",
366
+ "value": "critical"
367
+ }
368
+ },
114
369
  "processing": {
115
370
  "associatedContent": {
116
371
  "rollParentSnapshots": false,