@x12i/memorix-retrieval 1.22.0 → 1.23.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 (146) hide show
  1. package/README.md +31 -0
  2. package/catalox-seeds/inputs/entity-descriptors/assets.json +7 -7
  3. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +7 -7
  4. package/catalox-seeds/inputs/item-descriptors/asset-detail-item.json +2 -2
  5. package/catalox-seeds/inputs/item-descriptors/topology-subnet-detail-item.json +2 -2
  6. package/catalox-seeds/inputs/item-descriptors/vulnerability-detail-item.json +2 -2
  7. package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-slice.json +1 -1
  8. package/catalox-seeds/inputs/manifest.json +1 -1
  9. package/catalox-seeds/inputs/memorix-catalog-ids.json +1 -1
  10. package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +33 -33
  11. package/dist/client/catalox-mongo-bootstrap.d.ts +13 -0
  12. package/dist/client/catalox-mongo-bootstrap.d.ts.map +1 -0
  13. package/dist/client/catalox-mongo-bootstrap.js +22 -0
  14. package/dist/client/catalox-mongo-bootstrap.js.map +1 -0
  15. package/dist/client/create-stack-from-env.js +2 -2
  16. package/dist/client/create-stack-from-env.js.map +1 -1
  17. package/dist/client/types.d.ts +11 -8
  18. package/dist/client/types.d.ts.map +1 -1
  19. package/dist/data/record-display-name.d.ts.map +1 -1
  20. package/dist/data/record-display-name.js +4 -0
  21. package/dist/data/record-display-name.js.map +1 -1
  22. package/dist/data/record-display-name.test.js +23 -0
  23. package/dist/data/record-display-name.test.js.map +1 -1
  24. package/dist/data/record-identity.d.ts +2 -2
  25. package/dist/data/record-identity.d.ts.map +1 -1
  26. package/dist/data/record-identity.js +23 -20
  27. package/dist/data/record-identity.js.map +1 -1
  28. package/dist/data/record-info.d.ts +2 -0
  29. package/dist/data/record-info.d.ts.map +1 -1
  30. package/dist/data/record-info.js +10 -0
  31. package/dist/data/record-info.js.map +1 -1
  32. package/dist/data/record-info.test.js +1 -0
  33. package/dist/data/record-info.test.js.map +1 -1
  34. package/dist/descriptors/catalog-ids.d.ts +2 -1
  35. package/dist/descriptors/catalog-ids.d.ts.map +1 -1
  36. package/dist/descriptors/catalog-ids.js +2 -1
  37. package/dist/descriptors/catalog-ids.js.map +1 -1
  38. package/dist/descriptors/descriptor-types.d.ts +14 -2
  39. package/dist/descriptors/descriptor-types.d.ts.map +1 -1
  40. package/dist/descriptors/internal-object-types.d.ts +3 -0
  41. package/dist/descriptors/internal-object-types.d.ts.map +1 -0
  42. package/dist/descriptors/internal-object-types.js +7 -0
  43. package/dist/descriptors/internal-object-types.js.map +1 -0
  44. package/dist/descriptors/load-list-descriptor.d.ts.map +1 -1
  45. package/dist/descriptors/load-list-descriptor.js +2 -1
  46. package/dist/descriptors/load-list-descriptor.js.map +1 -1
  47. package/dist/descriptors/normalize-list-sort.d.ts +5 -0
  48. package/dist/descriptors/normalize-list-sort.d.ts.map +1 -0
  49. package/dist/descriptors/normalize-list-sort.js +20 -0
  50. package/dist/descriptors/normalize-list-sort.js.map +1 -0
  51. package/dist/descriptors/validate-descriptor.d.ts +1 -0
  52. package/dist/descriptors/validate-descriptor.d.ts.map +1 -1
  53. package/dist/descriptors/validate-descriptor.js +25 -1
  54. package/dist/descriptors/validate-descriptor.js.map +1 -1
  55. package/dist/explorer/collection-records.d.ts +3 -2
  56. package/dist/explorer/collection-records.d.ts.map +1 -1
  57. package/dist/explorer/collection-records.js +4 -3
  58. package/dist/explorer/collection-records.js.map +1 -1
  59. package/dist/explorer/entity-graph.d.ts +2 -0
  60. package/dist/explorer/entity-graph.d.ts.map +1 -1
  61. package/dist/explorer/entity-graph.js +7 -1
  62. package/dist/explorer/entity-graph.js.map +1 -1
  63. package/dist/explorer/health.d.ts.map +1 -1
  64. package/dist/explorer/health.js +65 -30
  65. package/dist/explorer/health.js.map +1 -1
  66. package/dist/explorer/slice-index.d.ts.map +1 -1
  67. package/dist/explorer/slice-index.js +19 -11
  68. package/dist/explorer/slice-index.js.map +1 -1
  69. package/dist/explorer/unified-inventory.d.ts +3 -1
  70. package/dist/explorer/unified-inventory.d.ts.map +1 -1
  71. package/dist/explorer/unified-inventory.js +9 -2
  72. package/dist/explorer/unified-inventory.js.map +1 -1
  73. package/dist/index.d.ts +2 -0
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +2 -0
  76. package/dist/index.js.map +1 -1
  77. package/dist/mongo/env.d.ts +2 -0
  78. package/dist/mongo/env.d.ts.map +1 -1
  79. package/dist/mongo/env.js +4 -0
  80. package/dist/mongo/env.js.map +1 -1
  81. package/dist/retrieval/fetch-full-record.d.ts +22 -0
  82. package/dist/retrieval/fetch-full-record.d.ts.map +1 -0
  83. package/dist/retrieval/fetch-full-record.js +68 -0
  84. package/dist/retrieval/fetch-full-record.js.map +1 -0
  85. package/dist/retrieval/fetch-item.js +4 -0
  86. package/dist/retrieval/fetch-item.js.map +1 -1
  87. package/dist/retrieval/fetch-list.d.ts.map +1 -1
  88. package/dist/retrieval/fetch-list.js +16 -7
  89. package/dist/retrieval/fetch-list.js.map +1 -1
  90. package/dist/retrieval/fetch-workspace-list.d.ts.map +1 -1
  91. package/dist/retrieval/fetch-workspace-list.js +18 -7
  92. package/dist/retrieval/fetch-workspace-list.js.map +1 -1
  93. package/dist/retrieval/graph-run-buckets.js +1 -1
  94. package/dist/retrieval/graph-run-buckets.js.map +1 -1
  95. package/dist/retrieval/graph-run-buckets.test.js +1 -1
  96. package/dist/retrieval/graph-run-buckets.test.js.map +1 -1
  97. package/dist/retrieval/graph-run-filters.d.ts.map +1 -1
  98. package/dist/retrieval/graph-run-filters.js +1 -1
  99. package/dist/retrieval/graph-run-filters.js.map +1 -1
  100. package/dist/retrieval/graph-run-filters.test.js +11 -11
  101. package/dist/retrieval/graph-run-filters.test.js.map +1 -1
  102. package/dist/retrieval/processing-overview.test.js +2 -2
  103. package/dist/retrieval/processing-overview.test.js.map +1 -1
  104. package/dist/retrieval/resolve-filters.d.ts.map +1 -1
  105. package/dist/retrieval/resolve-filters.js +0 -4
  106. package/dist/retrieval/resolve-filters.js.map +1 -1
  107. package/dist/retrieval/resolve-list-analytics.d.ts +5 -0
  108. package/dist/retrieval/resolve-list-analytics.d.ts.map +1 -0
  109. package/dist/retrieval/resolve-list-analytics.js +63 -0
  110. package/dist/retrieval/resolve-list-analytics.js.map +1 -0
  111. package/dist/retrieval/resolve-pagination-driver.js +2 -2
  112. package/dist/retrieval/resolve-pagination-driver.js.map +1 -1
  113. package/dist/retrieval/resolve-sort.d.ts +8 -6
  114. package/dist/retrieval/resolve-sort.d.ts.map +1 -1
  115. package/dist/retrieval/resolve-sort.js +38 -15
  116. package/dist/retrieval/resolve-sort.js.map +1 -1
  117. package/dist/tests/collection-parser.test.js +14 -0
  118. package/dist/tests/collection-parser.test.js.map +1 -1
  119. package/dist/tests/create-stack-from-env.test.js +4 -3
  120. package/dist/tests/create-stack-from-env.test.js.map +1 -1
  121. package/dist/tests/entity-graph.test.js +45 -0
  122. package/dist/tests/entity-graph.test.js.map +1 -1
  123. package/dist/tests/env.test.js +9 -1
  124. package/dist/tests/env.test.js.map +1 -1
  125. package/dist/tests/fetch-item.test.js +32 -0
  126. package/dist/tests/fetch-item.test.js.map +1 -1
  127. package/dist/tests/fetch-list.test.js +3 -3
  128. package/dist/tests/fetch-list.test.js.map +1 -1
  129. package/dist/tests/fetch-record-info.test.js +1 -0
  130. package/dist/tests/fetch-record-info.test.js.map +1 -1
  131. package/dist/tests/fixtures.js +3 -3
  132. package/dist/tests/fixtures.js.map +1 -1
  133. package/dist/tests/internal-object-types.test.d.ts +2 -0
  134. package/dist/tests/internal-object-types.test.d.ts.map +1 -0
  135. package/dist/tests/internal-object-types.test.js +16 -0
  136. package/dist/tests/internal-object-types.test.js.map +1 -0
  137. package/dist/tests/raw-reads.test.d.ts +2 -0
  138. package/dist/tests/raw-reads.test.d.ts.map +1 -0
  139. package/dist/tests/raw-reads.test.js +122 -0
  140. package/dist/tests/raw-reads.test.js.map +1 -0
  141. package/dist/tests/unified-inventory.test.js +1 -1
  142. package/dist/tests/unified-inventory.test.js.map +1 -1
  143. package/docs/EXPLORER-HOST-APIS.md +1 -1
  144. package/docs/MEMORIX-CATALOX-CONTRACTS.md +1 -1
  145. package/docs/MEMORIX-DATABASE-CONVENTIONS.md +27 -39
  146. package/package.json +2 -2
package/README.md CHANGED
@@ -450,6 +450,37 @@ npm run catalox:seed:memorix-retrieval:apply
450
450
  npm run catalox:seed:ensure
451
451
  ```
452
452
 
453
+ ## Lists catalog (`lists`)
454
+
455
+ The list descriptor catalog id is **`lists`** (legacy: `memorix-list-descriptors`). Migrate existing Catalox data with `memorix-descriptors/scripts/migrate-list-descriptors-catalog.mjs`.
456
+
457
+ ## Compound sort
458
+
459
+ `fetchMemorixList` accepts `sort: [{ property, direction }, ...]`. Secondary sort keys must resolve to the **same content type** as the primary key. Ensure a matching compound index exists on the driver collection — there is no automatic index provisioning.
460
+
461
+ ## Analytics fields on lists
462
+
463
+ List descriptors may declare `analytics[]` with `{ field, collection, joinBy, metric }`. Values are merged into rows per page via scoped aggregation (`groupMemorixRecords`).
464
+
465
+ ## Full record fetch
466
+
467
+ ```ts
468
+ import { fetchMemorixFullRecord } from "@x12i/memorix-retrieval";
469
+
470
+ const full = await fetchMemorixFullRecord(client, {
471
+ entityName: "assets",
472
+ entityId: "abc-123",
473
+ // contentTypes: ["snapshots", "analysis"], // optional subset
474
+ });
475
+ // full.contentTypes — raw document(s) per content type
476
+ ```
477
+
478
+ Unlike `fetchMemorixItemForEntity`, this bypasses item descriptors and returns uncurated documents.
479
+
480
+ ## List filters
481
+
482
+ Request filters use `MemorixFilterInput[]`. A property is authorized when it is `filterable: true` on the entity descriptor and belongs to the list's **leading** content type. The list descriptor's `filters[]` array supplies pinned defaults only — it is not an allow-list for ad-hoc filters.
483
+
453
484
  ## Build, test, and live smoke
454
485
 
455
486
  ```bash
@@ -7,16 +7,16 @@
7
7
  "collectionPrefix": "assets",
8
8
  "identity": {
9
9
  "allowedIdFields": [
10
- "identity.recordId",
11
- "identity.targetId"
10
+ "recordId",
11
+ "recordId"
12
12
  ],
13
13
  "requiredExactlyOne": true,
14
- "defaultIdField": "identity.recordId"
14
+ "defaultIdField": "recordId"
15
15
  },
16
16
  "defaults": {
17
17
  "canonicalContentType": "snapshots",
18
18
  "dataRoot": "data",
19
- "effectiveDatePath": "lifecycle.capturedAt",
19
+ "effectiveDatePath": "data.lastSeen",
20
20
  "fallbackEffectiveDatePaths": [
21
21
  "capturedAt",
22
22
  "snapshot.capturedAt",
@@ -29,7 +29,7 @@
29
29
  "collection": "assets-snapshots",
30
30
  "dataRoot": "data",
31
31
  "isCanonical": true,
32
- "effectiveDatePath": "lifecycle.capturedAt",
32
+ "effectiveDatePath": "data.lastSeen",
33
33
  "fallbackEffectiveDatePaths": [
34
34
  "capturedAt",
35
35
  "snapshot.capturedAt",
@@ -81,7 +81,7 @@
81
81
  "label": "Source",
82
82
  "source": {
83
83
  "contentType": "snapshots",
84
- "path": "sourceFacts.values._source.rawValue"
84
+ "path": "data.source"
85
85
  },
86
86
  "humanReadable": true,
87
87
  "sortable": true,
@@ -276,7 +276,7 @@
276
276
  "label": "Raw XDR",
277
277
  "source": {
278
278
  "contentType": "snapshots",
279
- "path": "sourceFacts.values.xdrRaw.rawValue"
279
+ "path": "data.agentId"
280
280
  },
281
281
  "humanReadable": false,
282
282
  "sortable": false,
@@ -7,16 +7,16 @@
7
7
  "collectionPrefix": "vulnerabilities",
8
8
  "identity": {
9
9
  "allowedIdFields": [
10
- "identity.recordId",
11
- "identity.targetId"
10
+ "recordId",
11
+ "recordId"
12
12
  ],
13
13
  "requiredExactlyOne": true,
14
- "defaultIdField": "identity.recordId"
14
+ "defaultIdField": "recordId"
15
15
  },
16
16
  "defaults": {
17
17
  "canonicalContentType": "snapshots",
18
18
  "dataRoot": "data",
19
- "effectiveDatePath": "lifecycle.capturedAt",
19
+ "effectiveDatePath": "data.lastSeen",
20
20
  "fallbackEffectiveDatePaths": [
21
21
  "capturedAt",
22
22
  "snapshot.capturedAt",
@@ -29,7 +29,7 @@
29
29
  "collection": "vulnerabilities-snapshots",
30
30
  "dataRoot": "data",
31
31
  "isCanonical": true,
32
- "effectiveDatePath": "lifecycle.capturedAt",
32
+ "effectiveDatePath": "data.lastSeen",
33
33
  "fallbackEffectiveDatePaths": [
34
34
  "capturedAt",
35
35
  "snapshot.capturedAt",
@@ -42,7 +42,7 @@
42
42
  "label": "Vulnerability ID",
43
43
  "source": {
44
44
  "contentType": "snapshots",
45
- "path": "sourceFacts.values.vulnerabilityId.rawValue"
45
+ "path": "data.vulnerabilityId"
46
46
  },
47
47
  "humanReadable": true,
48
48
  "sortable": true,
@@ -107,7 +107,7 @@
107
107
  "label": "Plugin ID",
108
108
  "source": {
109
109
  "contentType": "snapshots",
110
- "path": "sourceFacts.values.pluginId.rawValue"
110
+ "path": "data.pluginId"
111
111
  },
112
112
  "humanReadable": true,
113
113
  "sortable": true,
@@ -3,7 +3,7 @@
3
3
  "entity": "assets",
4
4
  "title": "Asset Detail",
5
5
  "identity": {
6
- "idField": "identity.recordId"
6
+ "idField": "recordId"
7
7
  },
8
8
  "contentTypes": [
9
9
  {
@@ -11,7 +11,7 @@
11
11
  "required": true,
12
12
  "multiMatch": {
13
13
  "strategy": "last",
14
- "effectiveDatePath": "lifecycle.capturedAt",
14
+ "effectiveDatePath": "data.lastSeen",
15
15
  "fallbackEffectiveDatePaths": [
16
16
  "capturedAt",
17
17
  "snapshot.capturedAt",
@@ -3,7 +3,7 @@
3
3
  "entity": "topology-subnets",
4
4
  "title": "Topology Subnet Detail",
5
5
  "identity": {
6
- "idField": "identity.recordId"
6
+ "idField": "recordId"
7
7
  },
8
8
  "contentTypes": [
9
9
  {
@@ -11,7 +11,7 @@
11
11
  "required": true,
12
12
  "multiMatch": {
13
13
  "strategy": "last",
14
- "effectiveDatePath": "lifecycle.capturedAt",
14
+ "effectiveDatePath": "data.lastSeen",
15
15
  "fallbackEffectiveDatePaths": [
16
16
  "capturedAt",
17
17
  "snapshot.capturedAt"
@@ -3,7 +3,7 @@
3
3
  "entity": "vulnerabilities",
4
4
  "title": "Vulnerability Detail",
5
5
  "identity": {
6
- "idField": "identity.recordId"
6
+ "idField": "recordId"
7
7
  },
8
8
  "contentTypes": [
9
9
  {
@@ -11,7 +11,7 @@
11
11
  "required": true,
12
12
  "multiMatch": {
13
13
  "strategy": "last",
14
- "effectiveDatePath": "lifecycle.capturedAt",
14
+ "effectiveDatePath": "data.lastSeen",
15
15
  "fallbackEffectiveDatePaths": [
16
16
  "capturedAt",
17
17
  "snapshot.capturedAt",
@@ -19,7 +19,7 @@
19
19
  }
20
20
  ],
21
21
  "fields": [
22
- "identity.recordId"
22
+ "recordId"
23
23
  ],
24
24
  "title": "Critical vulnerabilities",
25
25
  "contentType": "snapshots",
@@ -8,7 +8,7 @@
8
8
  "topology-subnets",
9
9
  "vulnerabilities"
10
10
  ],
11
- "memorix-list-descriptors": [
11
+ "lists": [
12
12
  "assets-main-list",
13
13
  "topology-subnets-main-list",
14
14
  "vulnerabilities-main-list",
@@ -2,7 +2,7 @@
2
2
  "appId": "memorix",
3
3
  "catalogs": {
4
4
  "entityDescriptors": "memorix-object-type-descriptors",
5
- "listDescriptors": "memorix-list-descriptors",
5
+ "listDescriptors": "lists",
6
6
  "itemDescriptors": "memorix-item-descriptors"
7
7
  }
8
8
  }
@@ -15,7 +15,7 @@
15
15
  }
16
16
  },
17
17
  {
18
- "catalogId": "memorix-list-descriptors",
18
+ "catalogId": "lists",
19
19
  "name": "Memorix list descriptors",
20
20
  "catalogType": "memorix",
21
21
  "sourceMode": "native",
@@ -94,11 +94,11 @@
94
94
  }
95
95
  },
96
96
  {
97
- "catalogId": "memorix-list-descriptors",
97
+ "catalogId": "lists",
98
98
  "descriptorVersion": "1",
99
99
  "mode": "replace",
100
100
  "descriptor": {
101
- "catalogId": "memorix-list-descriptors",
101
+ "catalogId": "lists",
102
102
  "label": "Memorix list descriptors",
103
103
  "sourceMode": "native",
104
104
  "status": "active",
@@ -219,7 +219,7 @@
219
219
  },
220
220
  {
221
221
  "appId": "memorix",
222
- "catalogId": "memorix-list-descriptors",
222
+ "catalogId": "lists",
223
223
  "access": {
224
224
  "canRead": true,
225
225
  "canWrite": true
@@ -254,16 +254,16 @@
254
254
  "collectionPrefix": "assets",
255
255
  "identity": {
256
256
  "allowedIdFields": [
257
- "identity.recordId",
258
- "identity.targetId"
257
+ "recordId",
258
+ "recordId"
259
259
  ],
260
260
  "requiredExactlyOne": true,
261
- "defaultIdField": "identity.recordId"
261
+ "defaultIdField": "recordId"
262
262
  },
263
263
  "defaults": {
264
264
  "canonicalContentType": "snapshots",
265
265
  "dataRoot": "data",
266
- "effectiveDatePath": "lifecycle.capturedAt",
266
+ "effectiveDatePath": "data.lastSeen",
267
267
  "fallbackEffectiveDatePaths": [
268
268
  "capturedAt",
269
269
  "snapshot.capturedAt",
@@ -276,7 +276,7 @@
276
276
  "collection": "assets-snapshots",
277
277
  "dataRoot": "data",
278
278
  "isCanonical": true,
279
- "effectiveDatePath": "lifecycle.capturedAt",
279
+ "effectiveDatePath": "data.lastSeen",
280
280
  "fallbackEffectiveDatePaths": [
281
281
  "capturedAt",
282
282
  "snapshot.capturedAt",
@@ -328,7 +328,7 @@
328
328
  "label": "Source",
329
329
  "source": {
330
330
  "contentType": "snapshots",
331
- "path": "sourceFacts.values._source.rawValue"
331
+ "path": "data.source"
332
332
  },
333
333
  "humanReadable": true,
334
334
  "sortable": true,
@@ -523,7 +523,7 @@
523
523
  "label": "Raw XDR",
524
524
  "source": {
525
525
  "contentType": "snapshots",
526
- "path": "sourceFacts.values.xdrRaw.rawValue"
526
+ "path": "data.agentId"
527
527
  },
528
528
  "humanReadable": false,
529
529
  "sortable": false,
@@ -740,16 +740,16 @@
740
740
  "collectionPrefix": "vulnerabilities",
741
741
  "identity": {
742
742
  "allowedIdFields": [
743
- "identity.recordId",
744
- "identity.targetId"
743
+ "recordId",
744
+ "recordId"
745
745
  ],
746
746
  "requiredExactlyOne": true,
747
- "defaultIdField": "identity.recordId"
747
+ "defaultIdField": "recordId"
748
748
  },
749
749
  "defaults": {
750
750
  "canonicalContentType": "snapshots",
751
751
  "dataRoot": "data",
752
- "effectiveDatePath": "lifecycle.capturedAt",
752
+ "effectiveDatePath": "data.lastSeen",
753
753
  "fallbackEffectiveDatePaths": [
754
754
  "capturedAt",
755
755
  "snapshot.capturedAt",
@@ -762,7 +762,7 @@
762
762
  "collection": "vulnerabilities-snapshots",
763
763
  "dataRoot": "data",
764
764
  "isCanonical": true,
765
- "effectiveDatePath": "lifecycle.capturedAt",
765
+ "effectiveDatePath": "data.lastSeen",
766
766
  "fallbackEffectiveDatePaths": [
767
767
  "capturedAt",
768
768
  "snapshot.capturedAt",
@@ -775,7 +775,7 @@
775
775
  "label": "Vulnerability ID",
776
776
  "source": {
777
777
  "contentType": "snapshots",
778
- "path": "sourceFacts.values.vulnerabilityId.rawValue"
778
+ "path": "data.vulnerabilityId"
779
779
  },
780
780
  "humanReadable": true,
781
781
  "sortable": true,
@@ -840,7 +840,7 @@
840
840
  "label": "Plugin ID",
841
841
  "source": {
842
842
  "contentType": "snapshots",
843
- "path": "sourceFacts.values.pluginId.rawValue"
843
+ "path": "data.pluginId"
844
844
  },
845
845
  "humanReadable": true,
846
846
  "sortable": true,
@@ -1331,7 +1331,7 @@
1331
1331
  }
1332
1332
  },
1333
1333
  {
1334
- "catalogId": "memorix-list-descriptors",
1334
+ "catalogId": "lists",
1335
1335
  "scope": {
1336
1336
  "domains": [
1337
1337
  "network",
@@ -1393,7 +1393,7 @@
1393
1393
  }
1394
1394
  },
1395
1395
  {
1396
- "catalogId": "memorix-list-descriptors",
1396
+ "catalogId": "lists",
1397
1397
  "scope": {
1398
1398
  "domains": [
1399
1399
  "network",
@@ -1428,7 +1428,7 @@
1428
1428
  }
1429
1429
  },
1430
1430
  {
1431
- "catalogId": "memorix-list-descriptors",
1431
+ "catalogId": "lists",
1432
1432
  "scope": {
1433
1433
  "domains": [
1434
1434
  "network",
@@ -1487,7 +1487,7 @@
1487
1487
  }
1488
1488
  },
1489
1489
  {
1490
- "catalogId": "memorix-list-descriptors",
1490
+ "catalogId": "lists",
1491
1491
  "scope": {
1492
1492
  "domains": [
1493
1493
  "network",
@@ -1543,7 +1543,7 @@
1543
1543
  }
1544
1544
  },
1545
1545
  {
1546
- "catalogId": "memorix-list-descriptors",
1546
+ "catalogId": "lists",
1547
1547
  "scope": {
1548
1548
  "domains": [
1549
1549
  "network",
@@ -1574,7 +1574,7 @@
1574
1574
  }
1575
1575
  ],
1576
1576
  "fields": [
1577
- "identity.recordId"
1577
+ "recordId"
1578
1578
  ],
1579
1579
  "title": "Critical vulnerabilities",
1580
1580
  "contentType": "snapshots",
@@ -1585,7 +1585,7 @@
1585
1585
  }
1586
1586
  },
1587
1587
  {
1588
- "catalogId": "memorix-list-descriptors",
1588
+ "catalogId": "lists",
1589
1589
  "scope": {
1590
1590
  "domains": [
1591
1591
  "network",
@@ -1619,7 +1619,7 @@
1619
1619
  }
1620
1620
  },
1621
1621
  {
1622
- "catalogId": "memorix-list-descriptors",
1622
+ "catalogId": "lists",
1623
1623
  "scope": {
1624
1624
  "domains": [
1625
1625
  "network",
@@ -1656,7 +1656,7 @@
1656
1656
  }
1657
1657
  },
1658
1658
  {
1659
- "catalogId": "memorix-list-descriptors",
1659
+ "catalogId": "lists",
1660
1660
  "scope": {
1661
1661
  "domains": [
1662
1662
  "network",
@@ -1711,7 +1711,7 @@
1711
1711
  "entity": "assets",
1712
1712
  "title": "Asset Detail",
1713
1713
  "identity": {
1714
- "idField": "identity.recordId"
1714
+ "idField": "recordId"
1715
1715
  },
1716
1716
  "contentTypes": [
1717
1717
  {
@@ -1719,7 +1719,7 @@
1719
1719
  "required": true,
1720
1720
  "multiMatch": {
1721
1721
  "strategy": "last",
1722
- "effectiveDatePath": "lifecycle.capturedAt",
1722
+ "effectiveDatePath": "data.lastSeen",
1723
1723
  "fallbackEffectiveDatePaths": [
1724
1724
  "capturedAt",
1725
1725
  "snapshot.capturedAt",
@@ -1822,7 +1822,7 @@
1822
1822
  "entity": "topology-subnets",
1823
1823
  "title": "Topology Subnet Detail",
1824
1824
  "identity": {
1825
- "idField": "identity.recordId"
1825
+ "idField": "recordId"
1826
1826
  },
1827
1827
  "contentTypes": [
1828
1828
  {
@@ -1830,7 +1830,7 @@
1830
1830
  "required": true,
1831
1831
  "multiMatch": {
1832
1832
  "strategy": "last",
1833
- "effectiveDatePath": "lifecycle.capturedAt",
1833
+ "effectiveDatePath": "data.lastSeen",
1834
1834
  "fallbackEffectiveDatePaths": [
1835
1835
  "capturedAt",
1836
1836
  "snapshot.capturedAt"
@@ -1875,7 +1875,7 @@
1875
1875
  "entity": "vulnerabilities",
1876
1876
  "title": "Vulnerability Detail",
1877
1877
  "identity": {
1878
- "idField": "identity.recordId"
1878
+ "idField": "recordId"
1879
1879
  },
1880
1880
  "contentTypes": [
1881
1881
  {
@@ -1883,7 +1883,7 @@
1883
1883
  "required": true,
1884
1884
  "multiMatch": {
1885
1885
  "strategy": "last",
1886
- "effectiveDatePath": "lifecycle.capturedAt",
1886
+ "effectiveDatePath": "data.lastSeen",
1887
1887
  "fallbackEffectiveDatePaths": [
1888
1888
  "capturedAt",
1889
1889
  "snapshot.capturedAt",
@@ -0,0 +1,13 @@
1
+ import type { Catalox } from "@x12i/catalox";
2
+ import { MongoStore } from "@x12i/catalox/mongo";
3
+ export type CreateMemorixCataloxFromEnvOptions = {
4
+ processEnv?: NodeJS.ProcessEnv;
5
+ dbName?: string;
6
+ mongoUri?: string;
7
+ };
8
+ export type CreateMemorixCataloxFromEnvResult = {
9
+ catalox: Catalox;
10
+ mongoStore: MongoStore;
11
+ };
12
+ export declare function createMemorixCataloxFromEnv(options?: CreateMemorixCataloxFromEnvOptions): Promise<CreateMemorixCataloxFromEnvResult>;
13
+ //# sourceMappingURL=catalox-mongo-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-mongo-bootstrap.d.ts","sourceRoot":"","sources":["../../src/client/catalox-mongo-bootstrap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAA6B,MAAM,qBAAqB,CAAC;AAK5E,MAAM,MAAM,kCAAkC,GAAG;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAqBF,wBAAsB,2BAA2B,CAC/C,OAAO,GAAE,kCAAuC,GAC/C,OAAO,CAAC,iCAAiC,CAAC,CAO5C"}
@@ -0,0 +1,22 @@
1
+ import { createRequire } from "node:module";
2
+ import { MongoStore, wireCataloxFromMongoStore } from "@x12i/catalox/mongo";
3
+ import { resolveMemorixCataloxDbName, resolveMongoUri } from "../mongo/env.js";
4
+ const require = createRequire(import.meta.url);
5
+ async function initMongoStore(options) {
6
+ const { initMongoDb } = require("@x12i/helpers/mongo");
7
+ const api = await initMongoDb({
8
+ mongoUri: options.mongoUri,
9
+ dbName: options.dbName,
10
+ singleton: false,
11
+ });
12
+ return new MongoStore(api);
13
+ }
14
+ export async function createMemorixCataloxFromEnv(options = {}) {
15
+ const env = options.processEnv ?? process.env;
16
+ const mongoUri = options.mongoUri ?? resolveMongoUri(env);
17
+ const dbName = options.dbName ?? resolveMemorixCataloxDbName(env);
18
+ const mongoStore = await initMongoStore({ mongoUri, dbName });
19
+ const catalox = wireCataloxFromMongoStore({ mongo: mongoStore, mongoUri });
20
+ return { catalox, mongoStore };
21
+ }
22
+ //# sourceMappingURL=catalox-mongo-bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-mongo-bootstrap.js","sourceRoot":"","sources":["../../src/client/catalox-mongo-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE/E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAa/C,KAAK,UAAU,cAAc,CAAC,OAG7B;IACC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAMpD,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IACH,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,UAA8C,EAAE;IAEhD,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,2BAA2B,CAAC,GAAG,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,yBAAyB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { createCataloxFromEnv } from "@x12i/catalox";
1
+ import { createMemorixCataloxFromEnv } from "./catalox-mongo-bootstrap.js";
2
2
  import { DebugLogAbstract } from "@x12i/logxer";
3
3
  import { resolveMemorixAppId } from "../descriptors/resolve-app-id.js";
4
4
  import { memorixRetrievalLogger } from "../logging/logger.js";
@@ -13,7 +13,7 @@ export async function createMemorixRetrievalStackFromEnv(options = {}) {
13
13
  const appId = resolveMemorixAppId({
14
14
  appId: options.appId?.trim() || options.cataloxContext?.appId?.trim(),
15
15
  }, processEnv);
16
- const { catalox } = createCataloxFromEnv();
16
+ const { catalox } = await createMemorixCataloxFromEnv({ processEnv });
17
17
  const ctx = {
18
18
  ...(options.cataloxContext ?? {}),
19
19
  appId,
@@ -1 +1 @@
1
- {"version":3,"file":"create-stack-from-env.js","sourceRoot":"","sources":["../../src/client/create-stack-from-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAuBrE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,UAAqD,EAAE;IAEvD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC;IAErD,MAAM,KAAK,GAAG,mBAAmB,CAC/B;QACE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;KACtE,EACD,UAAU,CACX,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAmB;QAC1B,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;QACjC,KAAK;QACL,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE,KAAK,IAAI;YACtC,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,mBAAmB;SACxB;KACF,CAAC;IACF,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC;QACjD,KAAK;QACL,OAAO,EAAE,cAAc;QACvB,UAAU;KACX,CAAC,CAAC;IAEH,sBAAsB,CAAC,IAAI,CAAC,qCAAqC,EAAE;QACjE,KAAK;QACL,SAAS,EAAE,gBAAgB,CAAC,KAAK;KAClC,CAAC,CAAC;IAEH,OAAO;QACL,KAAK;QACL,YAAY;QACZ,OAAO,EAAE,cAAc;QACvB,MAAM;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-stack-from-env.js","sourceRoot":"","sources":["../../src/client/create-stack-from-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAuBrE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,UAAqD,EAAE;IAEvD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC;IAErD,MAAM,KAAK,GAAG,mBAAmB,CAC/B;QACE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;KACtE,EACD,UAAU,CACX,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,2BAA2B,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IACtE,MAAM,GAAG,GAAmB;QAC1B,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;QACjC,KAAK;QACL,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE,KAAK,IAAI;YACtC,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,mBAAmB;SACxB;KACF,CAAC;IACF,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC;QACjD,KAAK;QACL,OAAO,EAAE,cAAc;QACvB,UAAU;KACX,CAAC,CAAC;IAEH,sBAAsB,CAAC,IAAI,CAAC,qCAAqC,EAAE;QACjE,KAAK;QACL,SAAS,EAAE,gBAAgB,CAAC,KAAK;KAClC,CAAC,CAAC;IAEH,OAAO;QACL,KAAK;QACL,YAAY;QACZ,OAAO,EAAE,cAAc;QACvB,MAAM;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { MongoClient } from "mongodb";
2
2
  import type { createGcsClient } from "@x12i/helpers/gcs";
3
3
  import type { createS3Client } from "@x12i/helpers/s3";
4
+ import type { MemorixConcept } from "@x12i/memorix-descriptors";
4
5
  import type { CataloxLike } from "./catalox-like.js";
5
6
  import type { XronoxLike } from "./xronox-like.js";
6
7
  import type { MemorixTarget } from "../mongo/types.js";
@@ -68,10 +69,10 @@ export type FetchMemorixListRequest = {
68
69
  limit?: number;
69
70
  offset?: number;
70
71
  };
71
- sort?: {
72
+ sort?: Array<{
72
73
  property: string;
73
74
  direction: "asc" | "desc";
74
- };
75
+ }>;
75
76
  filters?: Array<import("../descriptors/descriptor-types.js").MemorixFilterInput>;
76
77
  /** Graph-run planning filters on reserved `_graphRuns.<graphId>` paths (MRX-FRS-001). */
77
78
  graphRunFilter?: import("../retrieval/graph-run-filters.js").GraphRunFilterInput | import("../retrieval/graph-run-filters.js").GraphRunFilterInput[];
@@ -93,6 +94,7 @@ export type FetchMemorixListRequest = {
93
94
  export type MemorixRecordDisplayFields = {
94
95
  recordId?: string;
95
96
  displayName?: string;
97
+ concept?: MemorixConcept;
96
98
  };
97
99
  export type FetchMemorixListResponse = {
98
100
  listId: string;
@@ -105,11 +107,11 @@ export type FetchMemorixListResponse = {
105
107
  hasMore: boolean;
106
108
  total?: number;
107
109
  };
108
- sort?: {
110
+ sort?: Array<{
109
111
  property: string;
110
112
  direction: "asc" | "desc";
111
113
  contentType: string;
112
- };
114
+ }>;
113
115
  rows: Array<Record<string, unknown> & MemorixRecordDisplayFields>;
114
116
  issues?: import("../errors/issues.js").MemorixRetrievalIssue[];
115
117
  source?: import("../runtime/source-provenance.js").MemorixRuntimeSourceRef;
@@ -132,10 +134,10 @@ export type FetchMemorixWorkspaceListRequest = {
132
134
  limit?: number;
133
135
  offset?: number;
134
136
  };
135
- sort?: {
137
+ sort?: Array<{
136
138
  property: string;
137
139
  direction: "asc" | "desc";
138
- };
140
+ }>;
139
141
  filters?: Array<import("../descriptors/descriptor-types.js").MemorixFilterInput>;
140
142
  /** Graph-run planning filters on reserved `_graphRuns.<graphId>` paths (MRX-FRS-001). */
141
143
  graphRunFilter?: import("../retrieval/graph-run-filters.js").GraphRunFilterInput | import("../retrieval/graph-run-filters.js").GraphRunFilterInput[];
@@ -159,11 +161,11 @@ export type FetchMemorixWorkspaceListResponse = {
159
161
  hasMore: boolean;
160
162
  total?: number;
161
163
  };
162
- sort?: {
164
+ sort?: Array<{
163
165
  property: string;
164
166
  direction: "asc" | "desc";
165
167
  contentType?: string;
166
- };
168
+ }>;
167
169
  issues?: import("../errors/issues.js").MemorixRetrievalIssue[];
168
170
  includedEntities: string[];
169
171
  discovery: {
@@ -196,6 +198,7 @@ export type FetchMemorixItemResponse = {
196
198
  eventId?: string;
197
199
  knowledgeId?: string;
198
200
  displayName?: string;
201
+ concept?: MemorixConcept;
199
202
  sections: Array<{
200
203
  id: string;
201
204
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"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"}