@x12i/memorix-retrieval 1.19.0 → 1.20.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 (43) hide show
  1. package/catalox-seeds/inputs/entity-descriptors/assets.json +73 -38
  2. package/catalox-seeds/inputs/entity-descriptors/topology-subnets.json +127 -0
  3. package/catalox-seeds/inputs/entity-descriptors/variabilities-groups.json +22 -33
  4. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +19 -30
  5. package/catalox-seeds/inputs/item-descriptors/asset-detail-item.json +20 -6
  6. package/catalox-seeds/inputs/item-descriptors/topology-subnet-detail-item.json +41 -0
  7. package/catalox-seeds/inputs/item-descriptors/variabilities-group-detail-item.json +5 -5
  8. package/catalox-seeds/inputs/item-descriptors/vulnerability-detail-item.json +5 -5
  9. package/catalox-seeds/inputs/list-descriptors/assets-main-list.json +4 -0
  10. package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-list.json +5 -5
  11. package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-slice.json +1 -1
  12. package/catalox-seeds/inputs/list-descriptors/topology-subnets-main-list.json +23 -0
  13. package/catalox-seeds/inputs/list-descriptors/variabilities-groups-main-list.json +3 -3
  14. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-main-list.json +3 -3
  15. package/catalox-seeds/inputs/memorix-descriptors.bundle.json +328 -330
  16. package/catalox-seeds/inputs/memorix-item-descriptors.catalog.json +16 -16
  17. package/catalox-seeds/inputs/memorix-item-descriptors.items.json +16 -16
  18. package/catalox-seeds/inputs/memorix-list-descriptors.catalog.json +11 -11
  19. package/catalox-seeds/inputs/memorix-list-descriptors.items.json +41 -11
  20. package/catalox-seeds/inputs/memorix-object-type-descriptors.catalog.json +279 -303
  21. package/catalox-seeds/inputs/memorix-object-type-descriptors.items.json +279 -303
  22. package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +411 -147
  23. package/dist/data/record-identity.d.ts +1 -1
  24. package/dist/data/record-identity.d.ts.map +1 -1
  25. package/dist/data/record-identity.js +30 -17
  26. package/dist/data/record-identity.js.map +1 -1
  27. package/dist/seeds/build-manifest.d.ts.map +1 -1
  28. package/dist/seeds/build-manifest.js +29 -1
  29. package/dist/seeds/build-manifest.js.map +1 -1
  30. package/dist/seeds/default-seed-spec.d.ts.map +1 -1
  31. package/dist/seeds/default-seed-spec.js +4 -0
  32. package/dist/seeds/default-seed-spec.js.map +1 -1
  33. package/dist/seeds/merge-for-apply.d.ts.map +1 -1
  34. package/dist/seeds/merge-for-apply.js +3 -1
  35. package/dist/seeds/merge-for-apply.js.map +1 -1
  36. package/dist/tests/collection-parser.test.js +8 -3
  37. package/dist/tests/collection-parser.test.js.map +1 -1
  38. package/dist/tests/seed-manifest.test.js +3 -3
  39. package/dist/tests/seed-manifest.test.js.map +1 -1
  40. package/dist/tests/source-provenance.test.js +14 -8
  41. package/dist/tests/source-provenance.test.js.map +1 -1
  42. package/docs/MEMORIX-DATABASE-CONVENTIONS.md +48 -27
  43. package/package.json +4 -4
@@ -4,7 +4,7 @@ export type MemorixRecordIdentity = {
4
4
  /** @deprecated Use recordId */
5
5
  id: string;
6
6
  identityField: string;
7
- source: "descriptor" | "target-default" | "recordId" | "id" | "mongo-id" | "fallback";
7
+ source: "descriptor" | "identity" | "id" | "mongo-id" | "fallback";
8
8
  };
9
9
  export declare function resolveMemorixRecordIdentity(target: MemorixTarget, record: Record<string, unknown>, options?: {
10
10
  descriptorIdentityField?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"record-identity.d.ts","sourceRoot":"","sources":["../../src/data/record-identity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,GAAG,gBAAgB,GAAG,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC;CACvF,CAAC;AAwBF,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,CAAC,EAAE;IACR,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,GACA,qBAAqB,CAsDvB"}
1
+ {"version":3,"file":"record-identity.d.ts","sourceRoot":"","sources":["../../src/data/record-identity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC;CACpE,CAAC;AAkCF,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,CAAC,EAAE;IACR,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,GACA,qBAAqB,CA6DvB"}
@@ -1,5 +1,4 @@
1
1
  import { ObjectId } from "mongodb";
2
- import { resolveMemorixIdentityField } from "../mongo/target-config.js";
3
2
  const DEFAULT_FALLBACK_FIELDS = ["id"];
4
3
  function stringifyId(value) {
5
4
  if (value == null)
@@ -18,6 +17,13 @@ function stringifyId(value) {
18
17
  function readField(record, field) {
19
18
  return stringifyId(record[field]);
20
19
  }
20
+ function readIdentityBlock(record) {
21
+ const identity = record.identity;
22
+ if (identity && typeof identity === "object" && !Array.isArray(identity)) {
23
+ return identity;
24
+ }
25
+ return null;
26
+ }
21
27
  export function resolveMemorixRecordIdentity(target, record, options) {
22
28
  if (options?.descriptorIdentityField) {
23
29
  const id = readField(record, options.descriptorIdentityField);
@@ -30,19 +36,26 @@ export function resolveMemorixRecordIdentity(target, record, options) {
30
36
  };
31
37
  }
32
38
  }
33
- const recordIdValue = readField(record, "recordId");
34
- if (recordIdValue) {
35
- return { recordId: recordIdValue, id: recordIdValue, identityField: "recordId", source: "recordId" };
36
- }
37
- const targetField = resolveMemorixIdentityField(target);
38
- const targetId = readField(record, targetField);
39
- if (targetId) {
40
- return {
41
- recordId: targetId,
42
- id: targetId,
43
- identityField: targetField,
44
- source: "target-default",
45
- };
39
+ const identityBlock = readIdentityBlock(record);
40
+ if (identityBlock) {
41
+ const recordId = stringifyId(identityBlock.recordId);
42
+ if (recordId) {
43
+ return {
44
+ recordId,
45
+ id: recordId,
46
+ identityField: "identity.recordId",
47
+ source: "identity",
48
+ };
49
+ }
50
+ const targetId = stringifyId(identityBlock.targetId);
51
+ if (targetId) {
52
+ return {
53
+ recordId: targetId,
54
+ id: targetId,
55
+ identityField: "identity.targetId",
56
+ source: "identity",
57
+ };
58
+ }
46
59
  }
47
60
  const idValue = readField(record, "id");
48
61
  if (idValue) {
@@ -50,7 +63,7 @@ export function resolveMemorixRecordIdentity(target, record, options) {
50
63
  }
51
64
  const fallbacks = options?.fallbackFields ?? [...DEFAULT_FALLBACK_FIELDS];
52
65
  for (const field of fallbacks) {
53
- if (field === "id" || field === "recordId")
66
+ if (field === "id")
54
67
  continue;
55
68
  const id = readField(record, field);
56
69
  if (id) {
@@ -64,8 +77,8 @@ export function resolveMemorixRecordIdentity(target, record, options) {
64
77
  return {
65
78
  recordId: "",
66
79
  id: "",
67
- identityField: targetField,
68
- source: "target-default",
80
+ identityField: "identity.targetId",
81
+ source: "identity",
69
82
  };
70
83
  }
71
84
  //# sourceMappingURL=record-identity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"record-identity.js","sourceRoot":"","sources":["../../src/data/record-identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-identity.js","sourceRoot":"","sources":["../../src/data/record-identity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-manifest.d.ts","sourceRoot":"","sources":["../../src/seeds/build-manifest.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,4BAA4B,EAE5B,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,wCAAwC,GAAG;IACrD,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAkDF,wBAAsB,iCAAiC,CACrD,OAAO,EAAE,wCAAwC,GAChD,OAAO,CAAC,4BAA4B,CAAC,CAwCvC"}
1
+ {"version":3,"file":"build-manifest.d.ts","sourceRoot":"","sources":["../../src/seeds/build-manifest.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,4BAA4B,EAE5B,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,wCAAwC,GAAG;IACrD,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAuFF,wBAAsB,iCAAiC,CACrD,OAAO,EAAE,wCAAwC,GAChD,OAAO,CAAC,4BAA4B,CAAC,CAwCvC"}
@@ -40,6 +40,7 @@ function buildCatalogDescriptor(spec) {
40
40
  },
41
41
  };
42
42
  }
43
+ const OBJECT_TYPE_DESCRIPTOR_SCHEMA_V2 = "memorix.objectTypeDescriptor.v2";
43
44
  function withEntityTarget(data) {
44
45
  const id = typeof data.id === "string" ? data.id : undefined;
45
46
  const target = id ? MEMORIX_RETRIEVAL_ENTITY_TARGETS[id] : undefined;
@@ -47,6 +48,33 @@ function withEntityTarget(data) {
47
48
  return data;
48
49
  return { ...data, target };
49
50
  }
51
+ /** Canonical v2 seed payloads — prevents legacy entityName from breaking snapshot load. */
52
+ function prepareObjectTypeSeedData(data) {
53
+ const withTarget = withEntityTarget(data);
54
+ const objectType = (typeof withTarget.objectType === "string" && withTarget.objectType.trim()) ||
55
+ (typeof withTarget.entityName === "string" && withTarget.entityName.trim()) ||
56
+ (typeof withTarget.id === "string" && withTarget.id.trim());
57
+ if (!objectType)
58
+ return withTarget;
59
+ const prepared = {
60
+ ...withTarget,
61
+ schemaVersion: OBJECT_TYPE_DESCRIPTOR_SCHEMA_V2,
62
+ objectType,
63
+ };
64
+ delete prepared.entityName;
65
+ const relations = prepared.relations;
66
+ if (relations && typeof relations === "object" && !Array.isArray(relations)) {
67
+ prepared.relations = Object.fromEntries(Object.entries(relations).map(([key, rel]) => {
68
+ const next = { ...rel };
69
+ if ("targetEntity" in next && !("targetObjectType" in next)) {
70
+ next.targetObjectType = next.targetEntity;
71
+ delete next.targetEntity;
72
+ }
73
+ return [key, next];
74
+ }));
75
+ }
76
+ return prepared;
77
+ }
50
78
  export async function buildMemorixRetrievalSeedManifest(options) {
51
79
  const itemScope = options.scope ?? MEMORIX_RETRIEVAL_DEFAULT_SCOPE;
52
80
  const appId = options.appId ?? MEMORIX_RETRIEVAL_SEED_APP_ID;
@@ -62,7 +90,7 @@ export async function buildMemorixRetrievalSeedManifest(options) {
62
90
  for (const file of spec.inputFiles) {
63
91
  let data = await options.readJson(file);
64
92
  if (spec.catalogId === MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG) {
65
- data = withEntityTarget(data);
93
+ data = prepareObjectTypeSeedData(data);
66
94
  }
67
95
  items.push({ catalogId: spec.catalogId, scope: itemScope, data });
68
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build-manifest.js","sourceRoot":"","sources":["../../src/seeds/build-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-manifest.js","sourceRoot":"","sources":["../../src/seeds/build-manifest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-seed-spec.d.ts","sourceRoot":"","sources":["../../src/seeds/default-seed-spec.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,eAAO,MAAM,gCAAgC,kCAAkC,CAAC;AAEhF,eAAO,MAAM,+BAA+B,EAAE,gBAG7C,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,gCAAgC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,WAAW,CAM7F,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,sBAAsB,EAyEnE,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAiB,CAAC;AAE5D,wBAAgB,uCAAuC,IAAI,KAAK,CAAC;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC,CAQD"}
1
+ {"version":3,"file":"default-seed-spec.d.ts","sourceRoot":"","sources":["../../src/seeds/default-seed-spec.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,eAAO,MAAM,gCAAgC,kCAAkC,CAAC;AAEhF,eAAO,MAAM,+BAA+B,EAAE,gBAG7C,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,gCAAgC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,WAAW,CAO7F,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,sBAAsB,EA4EnE,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAiB,CAAC;AAE5D,wBAAgB,uCAAuC,IAAI,KAAK,CAAC;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC,CAQD"}
@@ -7,6 +7,7 @@ export const MEMORIX_RETRIEVAL_DEFAULT_SCOPE = {
7
7
  /** Entity descriptor id → Memorix target database role (applied at seed build). */
8
8
  export const MEMORIX_RETRIEVAL_ENTITY_TARGETS = {
9
9
  assets: "entity",
10
+ "topology-subnets": "entity",
10
11
  "variabilities-groups": "entity",
11
12
  vulnerabilities: "event",
12
13
  "knowledge-playbooks": "knowledge",
@@ -30,6 +31,7 @@ export const MEMORIX_RETRIEVAL_SEED_CATALOGS = [
30
31
  },
31
32
  inputFiles: [
32
33
  "entity-descriptors/assets.json",
34
+ "entity-descriptors/topology-subnets.json",
33
35
  "entity-descriptors/variabilities-groups.json",
34
36
  "entity-descriptors/vulnerabilities.json",
35
37
  "entity-descriptors/knowledge-playbooks.json",
@@ -53,6 +55,7 @@ export const MEMORIX_RETRIEVAL_SEED_CATALOGS = [
53
55
  },
54
56
  inputFiles: [
55
57
  "list-descriptors/assets-main-list.json",
58
+ "list-descriptors/topology-subnets-main-list.json",
56
59
  "list-descriptors/vulnerabilities-main-list.json",
57
60
  "list-descriptors/critical-vulnerabilities-list.json",
58
61
  "list-descriptors/critical-vulnerabilities-slice.json",
@@ -79,6 +82,7 @@ export const MEMORIX_RETRIEVAL_SEED_CATALOGS = [
79
82
  },
80
83
  inputFiles: [
81
84
  "item-descriptors/asset-detail-item.json",
85
+ "item-descriptors/topology-subnet-detail-item.json",
82
86
  "item-descriptors/vulnerability-detail-item.json",
83
87
  "item-descriptors/variabilities-group-detail-item.json",
84
88
  "item-descriptors/knowledge-playbook-detail-item.json",
@@ -1 +1 @@
1
- {"version":3,"file":"default-seed-spec.js","sourceRoot":"","sources":["../../src/seeds/default-seed-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-seed-spec.js","sourceRoot":"","sources":["../../src/seeds/default-seed-spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"merge-for-apply.d.ts","sourceRoot":"","sources":["../../src/seeds/merge-for-apply.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAE5B,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,EAAE,gBAAgB,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAKvD;AAED,wBAAgB,2CAA2C,CACzD,QAAQ,EAAE,4BAA4B,GACrC,4BAA4B,CAQ9B;AAED,yFAAyF;AACzF,wBAAgB,kDAAkD,CAChE,QAAQ,EAAE,IAAI,CAAC,4BAA4B,EAAE,OAAO,CAAC,GAAG;IACtD,KAAK,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,gBAAgB,CAAC;KAC1B,CAAC,CAAC;CACJ,GACA,IAAI,CAAC,4BAA4B,EAAE,OAAO,CAAC,GAAG;IAC/C,KAAK,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;CACpE,CAKA"}
1
+ {"version":3,"file":"merge-for-apply.d.ts","sourceRoot":"","sources":["../../src/seeds/merge-for-apply.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAE5B,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AAGzB;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,EAAE,gBAAgB,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAMvD;AAED,wBAAgB,2CAA2C,CACzD,QAAQ,EAAE,4BAA4B,GACrC,4BAA4B,CAQ9B;AAED,yFAAyF;AACzF,wBAAgB,kDAAkD,CAChE,QAAQ,EAAE,IAAI,CAAC,4BAA4B,EAAE,OAAO,CAAC,GAAG;IACtD,KAAK,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,gBAAgB,CAAC;KAC1B,CAAC,CAAC;CACJ,GACA,IAAI,CAAC,4BAA4B,EAAE,OAAO,CAAC,GAAG;IAC/C,KAAK,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;CACpE,CAKA"}
@@ -1,3 +1,4 @@
1
+ import { encodeCatalogItemDataForCatalox } from "../../../memorix-descriptors/dist/catalox/object-type-relations-bridge.js";
1
2
  /**
2
3
  * Catalox seed apply upserts `row.data` only; merge scope into data for native items.
3
4
  */
@@ -7,9 +8,10 @@ export function mergeSeedItemScopeIntoUpsertData(data, scope) {
7
8
  return { ...data, scope };
8
9
  }
9
10
  export function prepareSeedManifestItemForApply(item) {
11
+ const merged = mergeSeedItemScopeIntoUpsertData(item.data, item.scope);
10
12
  return {
11
13
  catalogId: item.catalogId,
12
- data: mergeSeedItemScopeIntoUpsertData(item.data, item.scope),
14
+ data: encodeCatalogItemDataForCatalox(item.catalogId, merged),
13
15
  };
14
16
  }
15
17
  export function prepareMemorixRetrievalSeedManifestForApply(manifest) {
@@ -1 +1 @@
1
- {"version":3,"file":"merge-for-apply.js","sourceRoot":"","sources":["../../src/seeds/merge-for-apply.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,IAA6B,EAC7B,KAAmC;IAEnC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,IAI/C;IACC,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,IAAI,EAAE,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2CAA2C,CACzD,QAAsC;IAEtC,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACnC,GAAG,IAAI;YACP,IAAI,EAAE,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,kDAAkD,CAChE,QAMC;IAID,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC;KAC3D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"merge-for-apply.js","sourceRoot":"","sources":["../../src/seeds/merge-for-apply.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,+BAA+B,EAAE,MAAM,2EAA2E,CAAC;AAE5H;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,IAA6B,EAC7B,KAAmC;IAEnC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,IAI/C;IACC,MAAM,MAAM,GAAG,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,IAAI,EAAE,+BAA+B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2CAA2C,CACzD,QAAsC;IAEtC,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACnC,GAAG,IAAI;YACP,IAAI,EAAE,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,kDAAkD,CAChE,QAMC;IAID,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC;KAC3D,CAAC;AACJ,CAAC"}
@@ -72,9 +72,14 @@ describe("target config", () => {
72
72
  });
73
73
  });
74
74
  describe("resolveMemorixRecordIdentity", () => {
75
- it("prefers descriptor field then target default then fallbacks", () => {
76
- expect(resolveMemorixRecordIdentity("entity", { entityId: "e1", id: "x" }).source).toBe("target-default");
77
- expect(resolveMemorixRecordIdentity("knowledge", { knowledgeId: "k1" })).toMatchObject({ id: "k1", identityField: "knowledgeId" });
75
+ it("prefers descriptor field then identity block then fallbacks", () => {
76
+ expect(resolveMemorixRecordIdentity("entity", {
77
+ identity: { targetId: "e1", target: "entity" },
78
+ id: "x",
79
+ }).source).toBe("identity");
80
+ expect(resolveMemorixRecordIdentity("knowledge", {
81
+ identity: { targetId: "k1", target: "knowledge" },
82
+ })).toMatchObject({ id: "k1", identityField: "identity.targetId" });
78
83
  expect(resolveMemorixRecordIdentity("entity", { id: "fallback-id" }, {
79
84
  descriptorIdentityField: "customId",
80
85
  }).source).toBe("id");
@@ -1 +1 @@
1
- {"version":3,"file":"collection-parser.test.js","sourceRoot":"","sources":["../../src/tests/collection-parser.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection-parser.test.js","sourceRoot":"","sources":["../../src/tests/collection-parser.test.ts"],"names":[],"mappings":"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"}
@@ -27,13 +27,13 @@ describe("buildMemorixRetrievalSeedManifest", () => {
27
27
  const assetsEntity = manifest.items.find((i) => i.catalogId === MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG && i.data.id === "assets");
28
28
  expect(assetsEntity).toMatchObject({
29
29
  scope: { domains: ["network"], agents: ["neo"] },
30
- data: { id: "assets", entityName: "assets", target: "entity" },
30
+ data: { id: "assets", target: "entity" },
31
31
  });
32
32
  expect(manifest.items.some((i) => i.catalogId === MEMORIX_LIST_DESCRIPTORS_CATALOG)).toBe(true);
33
33
  });
34
34
  it("builds full manifest from shipped catalox-seeds/inputs", async () => {
35
35
  const manifest = await buildMemorixRetrievalSeedManifestFromInputs();
36
- expect(manifest.items).toHaveLength(18);
36
+ expect(manifest.items).toHaveLength(MEMORIX_RETRIEVAL_SEED_CATALOGS.flatMap((c) => c.inputFiles).length);
37
37
  expect(manifest.items.every((i) => i.scope.domains.length > 0)).toBe(true);
38
38
  });
39
39
  });
@@ -74,7 +74,7 @@ describe("listExpectedMemorixRetrievalSeedItemIds", () => {
74
74
  it("lists all shipped catalog item ids", () => {
75
75
  const expected = listExpectedMemorixRetrievalSeedItemIds();
76
76
  expect(expected.find((c) => c.catalogId.includes("object-type"))?.itemIds).toContain("assets");
77
- expect(expected.flatMap((c) => c.itemIds)).toHaveLength(18);
77
+ expect(expected.flatMap((c) => c.itemIds)).toHaveLength(MEMORIX_RETRIEVAL_SEED_CATALOGS.flatMap((c) => c.inputFiles).length);
78
78
  });
79
79
  });
80
80
  //# sourceMappingURL=seed-manifest.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"seed-manifest.test.js","sourceRoot":"","sources":["../../src/tests/seed-manifest.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seed-manifest.test.js","sourceRoot":"","sources":["../../src/tests/seed-manifest.test.ts"],"names":[],"mappings":"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"}
@@ -46,19 +46,25 @@ describe("parseMemorixCollectionName", () => {
46
46
  });
47
47
  });
48
48
  describe("resolveMemorixRecordIdentity", () => {
49
- it("prefers recordId before target default", () => {
49
+ it("prefers identity.recordId before identity.targetId", () => {
50
50
  const identity = resolveMemorixRecordIdentity("knowledge", {
51
- recordId: "k1",
52
- knowledgeId: "k2",
51
+ identity: {
52
+ recordId: "k1",
53
+ targetId: "k2",
54
+ target: "knowledge",
55
+ },
53
56
  });
54
57
  expect(identity.recordId).toBe("k1");
55
- expect(identity.source).toBe("recordId");
58
+ expect(identity.source).toBe("identity");
59
+ expect(identity.identityField).toBe("identity.recordId");
56
60
  });
57
- it("uses knowledgeId as target default", () => {
58
- const identity = resolveMemorixRecordIdentity("knowledge", { knowledgeId: "k1" });
61
+ it("uses identity.targetId when recordId is absent", () => {
62
+ const identity = resolveMemorixRecordIdentity("knowledge", {
63
+ identity: { targetId: "k1", target: "knowledge" },
64
+ });
59
65
  expect(identity.recordId).toBe("k1");
60
- expect(identity.identityField).toBe("knowledgeId");
61
- expect(identity.source).toBe("target-default");
66
+ expect(identity.identityField).toBe("identity.targetId");
67
+ expect(identity.source).toBe("identity");
62
68
  });
63
69
  });
64
70
  describe("resolveMemorixTargetBindings", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"source-provenance.test.js","sourceRoot":"","sources":["../../src/tests/source-provenance.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-provenance.test.js","sourceRoot":"","sources":["../../src/tests/source-provenance.test.ts"],"names":[],"mappings":"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"}
@@ -193,7 +193,7 @@ Source collections typically use an **`-information`** suffix to distinguish the
193
193
  | `vulnerability-groups-information` | `variabilities-group` | Group-level enrichment |
194
194
  | `assets-information` | `assets` | Asset metadata |
195
195
 
196
- **Peer rule:** Source collection names are referenced in `targetSelector.sourceCollection` on Memorix records and in completion mappings. Keep these strings stable — they are the join key for mapping selection.
196
+ **Peer rule:** Source collection names are referenced in `targetSelector.sourceCollection` in completion mappings and in `_system.provenance.source.collection` on Memorix records. Keep these strings stable — they are the join key for mapping selection.
197
197
 
198
198
  ## Collection name resolution order
199
199
 
@@ -211,48 +211,69 @@ All peers should implement the same precedence so local, CI, and production beha
211
211
 
212
212
  ## Document shape
213
213
 
214
- ### Memorix entity / event document
214
+ ### Memorix 2.0 record (entity / event / knowledge)
215
215
 
216
- Documents in `memorix-entities` and `memorix-events` share this layout:
216
+ All Memorix records use the grouped envelope introduced in Memorix 2.0. Version string: `memorix-record.2.0`.
217
217
 
218
218
  ```json
219
219
  {
220
220
  "_id": "<ObjectId>",
221
- "recordId": "<optional stable id>",
222
- "entityId": "<for entity records>",
223
- "eventId": "<for event records>",
224
- "capturedAt": "<ISO-8601 timestamp>",
225
- "data": {
226
- "... domain fields ..."
221
+ "identity": {
222
+ "recordId": "<stable logical id>",
223
+ "target": "entity | event | knowledge",
224
+ "targetId": "<target-specific id>",
225
+ "objectType": "<object type>",
226
+ "contentType": "<snapshots | core | scoped | inferences | ...>",
227
+ "version": "memorix-record.2.0"
228
+ },
229
+ "lifecycle": {
230
+ "createdAt": "<ISO-8601>",
231
+ "modifiedAt": "<ISO-8601>",
232
+ "capturedAt": "<ISO-8601 optional>",
233
+ "status": "active"
234
+ },
235
+ "concept": {
236
+ "kind": "<readable kind>",
237
+ "name": "<primary readable label>",
238
+ "title": "<optional>"
239
+ },
240
+ "data": { "... domain fields ..." },
241
+ "associatedData": { "... snapshot-only related context ..." },
242
+ "analytics": { "... snapshot-only numeric rollups ..." },
243
+ "insights": { "... snapshot-only interpretations ..." },
244
+ "sourceFacts": { "schemaVersion": "sourceFacts.v1", "values": {} },
245
+ "_system": {
246
+ "memorix": {},
247
+ "provenance": {},
248
+ "processing": {},
249
+ "narratives": {}
227
250
  }
228
251
  }
229
252
  ```
230
253
 
231
- | Field | Entity | Event | Notes |
232
- |-------|--------|-------|-------|
233
- | `_id` | Required | Required | MongoDB primary key |
234
- | `recordId` | Recommended | Recommended | Logical id; falls back to `_id` string |
235
- | `entityId` | Required* | Optional | Join key for entity completion |
236
- | `eventId` | | Required* | Join key for event completion |
237
- | `data` | Required | Required | Payload; completion writes here |
238
- | `modifiedAt` | Optional | Optional | Set by writers on update (ISO-8601) |
239
-
240
- \*Required for completion pipelines that match on these paths.
241
-
242
- Legacy field `snapshotId` is still read as a fallback for `recordId` but **must not** be written by new code.
254
+ | Block | Required | Notes |
255
+ |-------|----------|-------|
256
+ | `identity` | Yes | Use `identity.recordId` and `identity.targetId` not root `entityId` / `eventId` / `recordId` |
257
+ | `lifecycle` | Recommended | Timestamps and record status |
258
+ | `concept` | Snapshots | Readable core label |
259
+ | `data` | Yes | Domain payload; all content types |
260
+ | `associatedData` / `analytics` / `insights` | Snapshots only | Full materialized view blocks |
261
+ | `sourceFacts` | Optional | Raw/opaque source values |
262
+ | `_system` | Recommended | Memorix-managed metadata, provenance, processing |
243
263
 
244
- ### Provenance (logical, not always stored)
264
+ Legacy root fields (`entityId`, `eventId`, `recordId`, `displayName`, `snapshotId`, `_memorix`, root `idField`, etc.) **must not** be written. Provenance belongs under `_system.provenance`.
245
265
 
246
- Completion and ingestion tools track provenance in memory using:
266
+ ### Provenance (under `_system.provenance`)
247
267
 
248
268
  | Field | Description |
249
269
  |-------|-------------|
250
- | `sourceCollection` | Which source collection this record was enriched from |
251
- | `sourceDatabase` | Source database name |
270
+ | `source.collection` | Which source collection this record was enriched from |
271
+ | `source.database` | Source database name |
272
+ | `source.server` | Source server label (when applicable) |
252
273
  | `sourceId` | Id in the source system |
253
- | `idField` | Which id field was used when the record was created |
274
+ | `snapshotRecordId` | Snapshot lineage id (snapshots only) |
254
275
 
255
- These align with `targetSelector` in completion mappings.
276
+ These align with `targetSelector` in completion mappings (`targetSelector.sourceCollection` matches `provenance.source.collection`). Source id-field names belong in source lookup paths such as `match.sourcePath`, not in record provenance.
256
277
 
257
278
  ### Source document
258
279
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/memorix-retrieval",
3
- "version": "1.19.0",
3
+ "version": "1.20.0",
4
4
  "description": "Read-side runtime data tier for Memorix: inventory, lists, items, slices, graph, and health",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -33,12 +33,12 @@
33
33
  "node": ">=18.0.0"
34
34
  },
35
35
  "dependencies": {
36
- "@x12i/catalox": "^5.10.0",
36
+ "@x12i/catalox": "^5.10.1",
37
37
  "@x12i/env": "^4.0.3",
38
- "@x12i/helpers": "^1.7.0",
38
+ "@x12i/helpers": "^2.0.0",
39
39
  "@x12i/logxer": "^5.1.0",
40
40
  "@x12i/memorix-agents": "^1.2.1",
41
- "@x12i/memorix-descriptors": "^1.16.0",
41
+ "@x12i/memorix-descriptors": "^1.17.0",
42
42
  "@x12i/xronox": "^3.9.0"
43
43
  },
44
44
  "devDependencies": {