@memberjunction/ai-vector-sync 5.23.0 → 5.25.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.
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDocumenTemplateParserBase.d.ts","sourceRoot":"","sources":["../../src/generic/EntityDocumenTemplateParserBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGxE;;GAEG;AACH,8BAAsB,gCAAgC;WACtC,UAAU;WAGV,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAIvG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IACzD,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAEvD;IAED;;;;;;;;OAQG;IACU,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;cA8CjG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CA4BlI"}
1
+ {"version":3,"file":"EntityDocumenTemplateParserBase.d.ts","sourceRoot":"","sources":["../../src/generic/EntityDocumenTemplateParserBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIxE;;GAEG;AACH,8BAAsB,gCAAgC;WACtC,UAAU;WAGV,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAIvG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IACzD,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAEvD;IAED;;;;;;;;OAQG;IACU,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;cAyDjG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CA4BlI"}
@@ -1,5 +1,6 @@
1
1
  import { CompositeKey, Metadata } from '@memberjunction/core';
2
2
  import { UUIDsEqual } from '@memberjunction/global';
3
+ import { TemplateEngineServer } from '@memberjunction/templates';
3
4
  /**
4
5
  * This is an abstract base class, use the EntityDocumentTemplateParser class or a sub-class thereof.
5
6
  */
@@ -32,10 +33,20 @@ export class EntityDocumentTemplateParserBase {
32
33
  if (!entityInfo) {
33
34
  throw new Error(`Entity with ID ${EntityID} not found.`);
34
35
  }
36
+ // If template uses Nunjucks {{ }} syntax, pre-render with the MJ TemplateEngine first.
37
+ // This handles conditionals, filters, and expressions that ${} syntax can't express.
38
+ let processedTemplate = Template;
39
+ if (/\{\{.*\}\}/.test(Template)) {
40
+ await TemplateEngineServer.Instance.Config(false, ContextUser);
41
+ const renderResult = await TemplateEngineServer.Instance.RenderTemplateSimple(Template, EntityRecord);
42
+ if (renderResult.Success && renderResult.Output) {
43
+ processedTemplate = renderResult.Output;
44
+ }
45
+ }
35
46
  let compositeKey = new CompositeKey();
36
47
  compositeKey.LoadFromEntityInfoAndRecord(entityInfo, EntityRecord);
37
48
  const regex = /\$\{([^{}]+)\}/g;
38
- const matches = Template.matchAll(regex);
49
+ const matches = processedTemplate.matchAll(regex);
39
50
  // Convert matches to an array to handle them asynchronously
40
51
  const replacements = Array.from(matches).map(async (match) => {
41
52
  const content = match[1]; // The captured group from regex
@@ -53,7 +64,7 @@ export class EntityDocumentTemplateParserBase {
53
64
  // Resolve all promises
54
65
  const resolvedReplacements = await Promise.all(replacements);
55
66
  // Replace each placeholder in the template with its resolved value
56
- let resolvedTemplate = Template;
67
+ let resolvedTemplate = processedTemplate;
57
68
  resolvedReplacements.forEach((replacement) => {
58
69
  resolvedTemplate = resolvedTemplate.replace(replacement.old, replacement.new);
59
70
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDocumenTemplateParserBase.js","sourceRoot":"","sources":["../../src/generic/EntityDocumenTemplateParserBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAY,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAgB,gCAAgC;IAC7C,MAAM,CAAC,UAAU;QACtB,gCAAgC,CAAC,OAAO,GAAG,EAAE,CAAC;IAChD,CAAC;IACM,MAAM,CAAC,cAAc,CAAC,QAAgB,EAAE,sBAA8B,EAAE,OAAe;QAC5F,OAAO,GAAG,QAAQ,MAAM,sBAAsB,MAAM,OAAO,EAAE,CAAC;IAChE,CAAC;aAEgB,YAAO,GAA8B,EAAE,CAAC;IAC/C,MAAM,KAAK,MAAM;QACzB,OAAO,gCAAgC,CAAC,OAAO,CAAC;IAClD,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,QAAgB,EAAE,YAAiB,EAAE,WAAqB;QAC7F,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,aAAa,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,YAAY,GAAiB,IAAI,YAAY,EAAE,CAAC;QACpD,YAAY,CAAC,2BAA2B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEnE,MAAM,KAAK,GAAG,iBAAiB,CAAC;QAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEzC,4DAA4D;QAC5D,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC;YAC1D,MAAM,QAAQ,GAAG,gCAAgC,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;YAE7G,qEAAqE;YACrE,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvD,4CAA4C;gBAC5C,gCAAgC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAClI,CAAC;YAED,OAAO;gBACL,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,uCAAuC;gBACtD,GAAG,EAAE,gCAAgC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,wBAAwB;aACjF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,uBAAuB;QACvB,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE7D,mEAAmE;QACnE,IAAI,gBAAgB,GAAG,QAAQ,CAAC;QAChC,oBAAoB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;YAC3C,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,QAAgB,EAAE,YAAiB,EAAE,WAAqB;QAC7G,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;YAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACnD,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBACrB,kEAAkE;gBAClE,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC;qBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,8CAA8C;YAC9C,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;gBACzC,4EAA4E;gBAC5E,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,kBAAkB,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,2EAA2E;YAC3E,OAAO,YAAY,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC"}
1
+ {"version":3,"file":"EntityDocumenTemplateParserBase.js","sourceRoot":"","sources":["../../src/generic/EntityDocumenTemplateParserBase.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,11 @@ export type VectorizeProgressUpdate = {
59
59
  PercentComplete: number;
60
60
  /** Elapsed time in ms since pipeline start */
61
61
  ElapsedMs: number;
62
+ /** Records that failed template rendering, if any. Populated at 'complete' stage. */
63
+ Errors?: {
64
+ RecordID: string;
65
+ Message: string;
66
+ }[];
62
67
  };
63
68
  export type VectorizeEntityResponse = {
64
69
  success: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"vectorSync.types.d.ts","sourceRoot":"","sources":["../../src/generic/vectorSync.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vectorSync.types.d.ts","sourceRoot":"","sources":["../../src/generic/vectorSync.types.ts"],"names":[],"mappings":"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"}
@@ -2,22 +2,19 @@ import { UserInfo } from "@memberjunction/core";
2
2
  import { MJEntityDocumentEntity, MJEntityDocumentTypeEntity } from "@memberjunction/core-entities";
3
3
  import { BaseSingleton } from "@memberjunction/global";
4
4
  /**
5
- * Simple caching class to load all Entity Documents and related data at once into memory
5
+ * Caching class for Entity Documents and Entity Document Types.
6
+ *
7
+ * Delegates Entity Document storage to KnowledgeHubMetadataEngine (which uses
8
+ * BaseEngine auto-refresh on entity events), and only independently caches
9
+ * Entity Document Types (which KH engine does not manage).
6
10
  */
7
11
  export declare class EntityDocumentCache extends BaseSingleton<EntityDocumentCache> {
8
12
  private _loaded;
9
- private _cache;
10
13
  private _typeCache;
11
14
  private _contextUser;
12
15
  constructor();
13
16
  static get Instance(): EntityDocumentCache;
14
17
  get IsLoaded(): boolean;
15
- protected Cache(): {
16
- [key: string]: MJEntityDocumentEntity;
17
- };
18
- protected TypeCache(): {
19
- [key: string]: MJEntityDocumentTypeEntity;
20
- };
21
18
  GetDocument(EntityDocumentID: string): MJEntityDocumentEntity | null;
22
19
  GetFirstActiveDocumentForEntityByID(EntityID: string): MJEntityDocumentEntity | null;
23
20
  GetFirstActiveDocumentForEntityByName(EntityName: string): MJEntityDocumentEntity | null;
@@ -25,6 +22,10 @@ export declare class EntityDocumentCache extends BaseSingleton<EntityDocumentCac
25
22
  GetDocumentType(EntityDocumentTypeID: string): MJEntityDocumentTypeEntity | null;
26
23
  GetDocumentTypeByName(EntityDocumentTypeName: string): MJEntityDocumentTypeEntity | null;
27
24
  SetCurrentUser(user: UserInfo): void;
25
+ /**
26
+ * Refreshes the cache. Entity Documents are loaded via KnowledgeHubMetadataEngine
27
+ * (auto-refreshing BaseEngine). Entity Document Types are loaded independently.
28
+ */
28
29
  Refresh(forceRefresh: boolean, ContextUser?: UserInfo): Promise<void>;
29
30
  }
30
31
  //# sourceMappingURL=EntityDocumentCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDocumentCache.d.ts","sourceRoot":"","sources":["../../src/models/EntityDocumentCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAqC,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IACvE,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,MAAM,CAAiD;IAC/D,OAAO,CAAC,UAAU,CAAqD;IACvE,OAAO,CAAC,YAAY,CAAyB;;IAM7C,WAAkB,QAAQ,IAAI,mBAAmB,CAEhD;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,SAAS,CAAC,KAAK,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAAA;KAAE;IAI5D,SAAS,CAAC,SAAS,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,0BAA0B,CAAA;KAAE;IAI7D,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IASpE,mCAAmC,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAYpF,qCAAqC,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAYxF,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAa5E,eAAe,CAAC,oBAAoB,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAUhF,qBAAqB,CAAC,sBAAsB,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAYxF,cAAc,CAAC,IAAI,EAAE,QAAQ;IAIvB,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ;CAsCrE"}
1
+ {"version":3,"file":"EntityDocumentCache.d.ts","sourceRoot":"","sources":["../../src/models/EntityDocumentCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAqC,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAA8B,MAAM,+BAA+B,CAAC;AAC/H,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD;;;;;;GAMG;AACH,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IACvE,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,UAAU,CAAqD;IACvE,OAAO,CAAC,YAAY,CAAyB;;IAM7C,WAAkB,QAAQ,IAAI,mBAAmB,CAEhD;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAEM,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAQpE,mCAAmC,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAWpF,qCAAqC,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAWxF,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAa5E,eAAe,CAAC,oBAAoB,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAUhF,qBAAqB,CAAC,sBAAsB,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAYxF,cAAc,CAAC,IAAI,EAAE,QAAQ;IAIpC;;;OAGG;IACU,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ;CA6BrE"}
@@ -1,14 +1,18 @@
1
1
  import { RunView, LogStatus } from "@memberjunction/core";
2
2
  import { UUIDsEqual } from "@memberjunction/global";
3
+ import { KnowledgeHubMetadataEngine } from "@memberjunction/core-entities";
3
4
  import { BaseSingleton } from "@memberjunction/global";
4
5
  /**
5
- * Simple caching class to load all Entity Documents and related data at once into memory
6
+ * Caching class for Entity Documents and Entity Document Types.
7
+ *
8
+ * Delegates Entity Document storage to KnowledgeHubMetadataEngine (which uses
9
+ * BaseEngine auto-refresh on entity events), and only independently caches
10
+ * Entity Document Types (which KH engine does not manage).
6
11
  */
7
12
  export class EntityDocumentCache extends BaseSingleton {
8
13
  constructor() {
9
14
  super();
10
15
  this._loaded = false;
11
- this._cache = {};
12
16
  this._typeCache = {};
13
17
  this._contextUser = null;
14
18
  }
@@ -18,94 +22,76 @@ export class EntityDocumentCache extends BaseSingleton {
18
22
  get IsLoaded() {
19
23
  return this._loaded;
20
24
  }
21
- Cache() {
22
- return this._cache;
23
- }
24
- TypeCache() {
25
- return this._typeCache;
26
- }
27
25
  GetDocument(EntityDocumentID) {
28
- let document = this._cache[EntityDocumentID];
26
+ const document = KnowledgeHubMetadataEngine.Instance.GetEntityDocumentById(EntityDocumentID);
29
27
  if (!document) {
30
28
  LogStatus(`EntityDocumentCache.GetDocument: Cache miss for EntityDocumentID: ${EntityDocumentID}`);
31
29
  }
32
- return document || null;
30
+ return document ?? null;
33
31
  }
34
32
  GetFirstActiveDocumentForEntityByID(EntityID) {
35
- let documentType = this.GetDocumentTypeByName('Record Duplicate');
33
+ const documentType = this.GetDocumentTypeByName('Record Duplicate');
36
34
  if (!documentType) {
37
35
  return null;
38
36
  }
39
- return Object.values(this._cache).find((ed) => {
40
- UUIDsEqual(ed.EntityID, EntityID) && ed.Status === 'Active' && UUIDsEqual(ed.TypeID, documentType.ID);
41
- });
37
+ return KnowledgeHubMetadataEngine.Instance.EntityDocuments.find((ed) => UUIDsEqual(ed.EntityID, EntityID) && ed.Status === 'Active' && UUIDsEqual(ed.TypeID, documentType.ID)) ?? null;
42
38
  }
43
39
  GetFirstActiveDocumentForEntityByName(EntityName) {
44
- let documentType = this.GetDocumentTypeByName('Record Duplicate');
40
+ const documentType = this.GetDocumentTypeByName('Record Duplicate');
45
41
  if (!documentType) {
46
42
  return null;
47
43
  }
48
- return Object.values(this._cache).find((ed) => {
49
- ed.Entity === EntityName && ed.Status === 'Active' && UUIDsEqual(ed.TypeID, documentType.ID);
50
- });
44
+ return KnowledgeHubMetadataEngine.Instance.EntityDocuments.find((ed) => ed.Entity === EntityName && ed.Status === 'Active' && UUIDsEqual(ed.TypeID, documentType.ID)) ?? null;
51
45
  }
52
46
  GetDocumentByName(EntityDocumentName) {
53
47
  const toLower = EntityDocumentName.trim().toLowerCase();
54
- let document = Object.values(this._cache).find((ed) => {
55
- ed.Name.trim().toLowerCase() === toLower;
56
- });
48
+ const document = KnowledgeHubMetadataEngine.Instance.EntityDocuments.find((ed) => ed.Name.trim().toLowerCase() === toLower);
57
49
  if (!document) {
58
50
  LogStatus(`EntityDocumentCache.GetDocumentByName: Cache miss for EntityDocumentName: ${EntityDocumentName}`);
59
51
  }
60
- return document || null;
52
+ return document ?? null;
61
53
  }
62
54
  GetDocumentType(EntityDocumentTypeID) {
63
- let documentType = this._typeCache[EntityDocumentTypeID];
55
+ const documentType = this._typeCache[EntityDocumentTypeID];
64
56
  if (!documentType) {
65
- LogStatus(`EntityDocumentCache.GetDocument: Cache miss for EntityDocumentID: ${EntityDocumentTypeID}`);
57
+ LogStatus(`EntityDocumentCache.GetDocumentType: Cache miss for EntityDocumentTypeID: ${EntityDocumentTypeID}`);
66
58
  return null;
67
59
  }
68
60
  return documentType;
69
61
  }
70
62
  GetDocumentTypeByName(EntityDocumentTypeName) {
71
63
  const toLower = EntityDocumentTypeName.trim().toLowerCase();
72
- let documentType = Object.values(this._typeCache).find((edt) => edt.Name.trim().toLowerCase() === toLower);
64
+ const documentType = Object.values(this._typeCache).find((edt) => edt.Name.trim().toLowerCase() === toLower);
73
65
  if (!documentType) {
74
- LogStatus(`EntityDocumentCache.GetDocumentByName: Cache miss for EntityDocumentName: ${EntityDocumentTypeName}`);
66
+ LogStatus(`EntityDocumentCache.GetDocumentTypeByName: Cache miss for EntityDocumentTypeName: ${EntityDocumentTypeName}`);
75
67
  return null;
76
68
  }
77
69
  return documentType;
78
- ;
79
70
  }
80
71
  SetCurrentUser(user) {
81
72
  this._contextUser = user;
82
73
  }
74
+ /**
75
+ * Refreshes the cache. Entity Documents are loaded via KnowledgeHubMetadataEngine
76
+ * (auto-refreshing BaseEngine). Entity Document Types are loaded independently.
77
+ */
83
78
  async Refresh(forceRefresh, ContextUser) {
84
79
  if (!forceRefresh && this._loaded) {
85
80
  return;
86
81
  }
87
82
  LogStatus('Refreshing Entity Document Cache');
88
- this._cache = {};
89
83
  this._typeCache = {};
90
- // now load up the cache with all the entity documents
84
+ const user = ContextUser || this._contextUser;
85
+ // Delegate Entity Documents to KnowledgeHubMetadataEngine
86
+ await KnowledgeHubMetadataEngine.Instance.Config(forceRefresh, user);
87
+ // Load Entity Document Types independently (KH engine doesn't cache these)
91
88
  const rv = new RunView();
92
- const results = await rv.RunViews([
93
- {
94
- EntityName: "MJ: Entity Documents",
95
- ResultType: "entity_object"
96
- },
97
- {
98
- EntityName: "MJ: Entity Document Types",
99
- ResultType: "entity_object"
100
- }
101
- ], ContextUser || this._contextUser);
102
- if (results[0] && results[0].Success) {
103
- for (const entityDocument of results[0].Results) {
104
- this._cache[entityDocument.ID] = entityDocument;
105
- }
106
- }
107
- if (results[1] && results[1].Success) {
108
- for (const entityDocumentType of results[1].Results) {
89
+ const result = await rv.RunView({
90
+ EntityName: "MJ: Entity Document Types",
91
+ ResultType: "entity_object"
92
+ }, user);
93
+ if (result && result.Success) {
94
+ for (const entityDocumentType of result.Results) {
109
95
  this._typeCache[entityDocumentType.ID] = entityDocumentType;
110
96
  }
111
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDocumentCache.js","sourceRoot":"","sources":["../../src/models/EntityDocumentCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityDocumentCache.js","sourceRoot":"","sources":["../../src/models/EntityDocumentCache.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ import { EmbeddingData, TemplateParamData, VectorEmeddingData, VectorizeEntityPa
8
8
  export declare class EntityVectorSyncer extends VectorBase {
9
9
  _startTime: Date;
10
10
  _endTime: Date;
11
+ /** Accumulates render errors across batches so they can be reported through the progress callback */
12
+ private _renderErrors;
11
13
  constructor();
12
14
  /**
13
15
  * Refreshes the EntityDocumentCache and configures the AIEngine and TemplateEngineServer
@@ -30,6 +32,8 @@ export declare class EntityVectorSyncer extends VectorBase {
30
32
  private createVectorUpserter;
31
33
  /**
32
34
  * Renders templates for a batch of entity records and generates embeddings for the rendered text.
35
+ * Tracks render failures and attaches error info to the returned EmbeddingData array so the
36
+ * caller can surface them through the progress callback.
33
37
  */
34
38
  private renderAndEmbedBatch;
35
39
  /**
@@ -59,10 +63,6 @@ export declare class EntityVectorSyncer extends VectorBase {
59
63
  */
60
64
  private getFieldTruncationLimit;
61
65
  private upsertBatchToVectorDB;
62
- /**
63
- * Validates template input data against template parameter definitions
64
- */
65
- private validateTemplateInput;
66
66
  /**
67
67
  * Starts the async data paging loop that feeds records into the stream pipeline.
68
68
  */
@@ -76,6 +76,12 @@ export declare class EntityVectorSyncer extends VectorBase {
76
76
  */
77
77
  CreateDefaultEntityDocument(EntityID: string, VectorDatabase: MJVectorDatabaseEntity, AIModel: MJAIModelEntity): Promise<MJEntityDocumentEntity>;
78
78
  protected GetVectorDatabaseAndEmbeddingClassByEntityDocumentID(entityDocumentID: string, createDocumentIfNotFound?: boolean): Promise<VectorEmeddingData>;
79
+ /**
80
+ * Resolves the API key for a vector database provider. Checks the Credential Engine
81
+ * first (if VectorDatabase.CredentialID is set), then falls back to the legacy
82
+ * environment variable AI_VENDOR_API_KEY__<ClassKey>.
83
+ */
84
+ protected ResolveVectorDBAPIKey(vectorDBEntity: MJVectorDatabaseEntity): Promise<string>;
79
85
  GetEntityDocument(EntityDocumentID: string): Promise<MJEntityDocumentEntity | null>;
80
86
  GetEntityDocumentByName(EntityDocumentName: string, ContextUser?: UserInfo): Promise<MJEntityDocumentEntity | null>;
81
87
  /**
@@ -85,7 +91,12 @@ export declare class EntityVectorSyncer extends VectorBase {
85
91
  * @param entityIDs If provided, only Entity Documents for the specified entities will be returned.
86
92
  */
87
93
  GetActiveEntityDocuments(entityNames?: string[]): Promise<MJEntityDocumentEntity[]>;
88
- private GetOrCreateVectorIndex;
94
+ /**
95
+ * Resolves the VectorIndex for the given EntityDocument by looking up its VectorIndexID
96
+ * using the cached KnowledgeHubMetadataEngine. If VectorIndexID is not set on the
97
+ * EntityDocument, throws a descriptive error instructing the user to configure it.
98
+ */
99
+ private GetVectorIndexForEntityDocument;
89
100
  protected CreateTemplateForEntityDocument(entityDocument: MJEntityDocumentEntity): Promise<MJTemplateEntity>;
90
101
  protected BuildTemplateContent(entityFields: EntityField[]): string;
91
102
  protected GetEntityFieldsForSimilaritySearch(entityID: string): Promise<EntityField[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"entityVectorSync.d.ts","sourceRoot":"","sources":["../../src/models/entityVectorSync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entityVectorSync.d.ts","sourceRoot":"","sources":["../../src/models/entityVectorSync.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { BaseEmbeddings, GetAIAPIKey } from '@memberjunction/ai';
3
+ import { CredentialEngine } from '@memberjunction/credentials';
3
4
  import { VectorDBBase } from '@memberjunction/ai-vectordb';
4
5
  import { VectorBase } from '@memberjunction/ai-vectors';
5
- import { LogError, LogStatus, Metadata, RunView, ValidationResult } from '@memberjunction/core';
6
+ import { LogError, LogStatus, Metadata, RunView } from '@memberjunction/core';
6
7
  import { MJGlobal, UUIDsEqual } from '@memberjunction/global';
7
8
  import { pipeline } from 'node:stream/promises';
8
9
  import { EntityDocumentCache } from './EntityDocumentCache.js';
@@ -11,12 +12,15 @@ import { AsyncBatchTransform } from './AsyncBatchTransform.js';
11
12
  import { PassThrough, Transform } from 'node:stream';
12
13
  import { AIEngine } from '@memberjunction/aiengine';
13
14
  import { TemplateEngineServer } from '@memberjunction/templates';
15
+ import { KnowledgeHubMetadataEngine } from '@memberjunction/core-entities';
14
16
  /**
15
17
  * Class that specializes in vectorizing entities using embedding models and upserting them into Vector Databases
16
18
  */
17
19
  export class EntityVectorSyncer extends VectorBase {
18
20
  constructor() {
19
21
  super();
22
+ /** Accumulates render errors across batches so they can be reported through the progress callback */
23
+ this._renderErrors = [];
20
24
  }
21
25
  /**
22
26
  * Refreshes the EntityDocumentCache and configures the AIEngine and TemplateEngineServer
@@ -27,6 +31,7 @@ export class EntityVectorSyncer extends VectorBase {
27
31
  super.CurrentUser;
28
32
  await EntityDocumentCache.Instance.Refresh(forceRefresh, contextUser);
29
33
  await AIEngine.Instance.Config(forceRefresh, contextUser);
34
+ await KnowledgeHubMetadataEngine.Instance.Config(forceRefresh, contextUser);
30
35
  await TemplateEngineServer.Instance.Config(forceRefresh, contextUser);
31
36
  }
32
37
  async VectorizeEntity(params, contextUser) {
@@ -35,9 +40,10 @@ export class EntityVectorSyncer extends VectorBase {
35
40
  }
36
41
  const startTime = new Date().getTime();
37
42
  super.CurrentUser = contextUser;
43
+ this._renderErrors = []; // reset for each vectorization run
38
44
  await TemplateEngineServer.Instance.Config(false, contextUser);
39
45
  const entityDocument = await this.GetEntityDocument(params.entityDocumentID);
40
- const vectorIndexEntity = await this.GetOrCreateVectorIndex(entityDocument);
46
+ const vectorIndexEntity = this.GetVectorIndexForEntityDocument(entityDocument);
41
47
  const obj = await this.GetVectorDatabaseAndEmbeddingClassByEntityDocumentID(params.entityDocumentID);
42
48
  // Parse configuration for pipeline tuning
43
49
  const docConfig = this.parseDocumentConfig(entityDocument);
@@ -88,6 +94,7 @@ export class EntityVectorSyncer extends VectorBase {
88
94
  // Throttled to emit only when the percentage changes to avoid flooding PubSub.
89
95
  let lastEmittedPct = -1;
90
96
  let dataStreamEnded = false;
97
+ const renderErrors = this._renderErrors; // capture reference for use in Transform closure
91
98
  const progressTracker = new Transform({
92
99
  objectMode: true,
93
100
  transform(chunk, _encoding, callback) {
@@ -103,6 +110,7 @@ export class EntityVectorSyncer extends VectorBase {
103
110
  Stage: 'complete',
104
111
  PercentComplete: 100,
105
112
  ElapsedMs: elapsed,
113
+ Errors: renderErrors.length > 0 ? renderErrors : undefined,
106
114
  });
107
115
  }
108
116
  else {
@@ -135,7 +143,7 @@ export class EntityVectorSyncer extends VectorBase {
135
143
  const elapsedMs = new Date().getTime() - startTime;
136
144
  const elapsedSeconds = elapsedMs / 1000;
137
145
  LogStatus(`Finished vectorizing ${entityDocument.Entity} entity in ${elapsedSeconds} seconds (${(elapsedSeconds / 60).toFixed(1)} minutes)`);
138
- // Emit final 100% completion
146
+ // Emit final 100% completion with any accumulated render errors
139
147
  if (onProgress) {
140
148
  onProgress({
141
149
  TotalRecords: totalRecordsFed,
@@ -143,9 +151,13 @@ export class EntityVectorSyncer extends VectorBase {
143
151
  Stage: 'complete',
144
152
  PercentComplete: 100,
145
153
  ElapsedMs: elapsedMs,
154
+ Errors: this._renderErrors.length > 0 ? this._renderErrors : undefined,
146
155
  });
147
156
  }
148
- return { success: true, status: 'Complete', errorMessage: '' };
157
+ const errorSummary = this._renderErrors.length > 0
158
+ ? `${this._renderErrors.length} record(s) failed template rendering`
159
+ : '';
160
+ return { success: true, status: 'Complete', errorMessage: errorSummary };
149
161
  }
150
162
  /**
151
163
  * Creates an AsyncBatchTransform that renders templates and generates embeddings
@@ -173,22 +185,24 @@ export class EntityVectorSyncer extends VectorBase {
173
185
  }
174
186
  /**
175
187
  * Renders templates for a batch of entity records and generates embeddings for the rendered text.
188
+ * Tracks render failures and attaches error info to the returned EmbeddingData array so the
189
+ * caller can surface them through the progress callback.
176
190
  */
177
191
  async renderAndEmbedBatch(batch, template, templateContent, embedding, delayTimeMS) {
178
192
  TemplateEngineServer.Instance.SetupNunjucks();
179
193
  const validEntries = [];
180
194
  for (const entityData of batch) {
181
- const validationResult = this.validateTemplateInput(template, entityData);
182
- if (!validationResult.Success) {
183
- LogError(`Validation error for record`, undefined, validationResult.Errors.map(e => e.Message).join('\n'));
184
- continue;
185
- }
186
- const result = await TemplateEngineServer.Instance.RenderTemplate(template, templateContent, entityData, true);
195
+ // No pre-validation — entity records commonly have null fields (e.g. Bio, State)
196
+ // and the Nunjucks templates handle missing data gracefully via {% if Field %} conditionals.
197
+ // Pass SuppressWarnings=true since entity doc vectorization doesn't need warnings for missing fields.
198
+ const result = await TemplateEngineServer.Instance.RenderTemplate(template, templateContent, entityData, true, true);
187
199
  if (result.Success) {
188
200
  validEntries.push({ text: result.Output, record: entityData });
189
201
  }
190
202
  else {
191
- LogError(`Error rendering template`, undefined, result.Message);
203
+ const recordID = String(entityData.__mj_recordID ?? entityData.ID ?? 'unknown');
204
+ LogError(`Error rendering template for record ${recordID}`, undefined, result.Message);
205
+ this._renderErrors.push({ RecordID: recordID, Message: result.Message });
192
206
  }
193
207
  }
194
208
  if (validEntries.length === 0) {
@@ -331,34 +345,6 @@ export class EntityVectorSyncer extends VectorBase {
331
345
  await new Promise((resolve) => setTimeout(resolve, delayTimeMS));
332
346
  return batch;
333
347
  }
334
- /**
335
- * Validates template input data against template parameter definitions
336
- */
337
- validateTemplateInput(template, data) {
338
- const result = new ValidationResult();
339
- const params = template.Params;
340
- if (!params) {
341
- result.Errors.push({ Source: '', Message: 'Params property not found on the template.', Value: '', Type: 'Failure' });
342
- }
343
- params?.forEach((p) => {
344
- if (p.IsRequired) {
345
- // For Record type params, fields are spread to root level (flat convention)
346
- // so check that data has any keys, not a specific key matching the param name
347
- if (p.Type === 'Record') {
348
- if (Object.keys(data).length === 0) {
349
- result.Errors.push({ Source: p.Name, Message: `Parameter ${p.Name} is required.`, Value: undefined, Type: 'Failure' });
350
- }
351
- return;
352
- }
353
- const val = data[p.Name];
354
- if (val === undefined || val === null || (typeof val === 'string' && val.trim() === '')) {
355
- result.Errors.push({ Source: p.Name, Message: `Parameter ${p.Name} is required.`, Value: val, Type: 'Failure' });
356
- }
357
- }
358
- });
359
- result.Success = !result.Errors.some(e => e.Type === 'Failure');
360
- return result;
361
- }
362
348
  /**
363
349
  * Starts the async data paging loop that feeds records into the stream pipeline.
364
350
  */
@@ -469,7 +455,7 @@ export class EntityVectorSyncer extends VectorBase {
469
455
  const vectorDBEntity = this.GetVectorDatabase(entityDocument.VectorDatabaseID);
470
456
  const aiModelEntity = this.GetAIModel(entityDocument.AIModelID);
471
457
  const embeddingAPIKey = GetAIAPIKey(aiModelEntity.DriverClass);
472
- const vectorDBAPIKey = GetAIAPIKey(vectorDBEntity.ClassKey);
458
+ const vectorDBAPIKey = await this.ResolveVectorDBAPIKey(vectorDBEntity);
473
459
  if (!embeddingAPIKey) {
474
460
  throw Error(`No API Key found for AI Model ${aiModelEntity.DriverClass}`);
475
461
  }
@@ -496,6 +482,42 @@ export class EntityVectorSyncer extends VectorBase {
496
482
  };
497
483
  return obj;
498
484
  }
485
+ /**
486
+ * Resolves the API key for a vector database provider. Checks the Credential Engine
487
+ * first (if VectorDatabase.CredentialID is set), then falls back to the legacy
488
+ * environment variable AI_VENDOR_API_KEY__<ClassKey>.
489
+ */
490
+ async ResolveVectorDBAPIKey(vectorDBEntity) {
491
+ if (vectorDBEntity.CredentialID) {
492
+ try {
493
+ await CredentialEngine.Instance.Config(false, super.CurrentUser);
494
+ const credentialEntity = CredentialEngine.Instance.getCredentialById(vectorDBEntity.CredentialID);
495
+ if (credentialEntity) {
496
+ const resolved = await CredentialEngine.Instance.getCredential(credentialEntity.Name, {
497
+ credentialId: vectorDBEntity.CredentialID,
498
+ contextUser: super.CurrentUser,
499
+ subsystem: 'VectorSync',
500
+ });
501
+ // The credential Values JSON may store the key as "apiKey" or as a raw string
502
+ const apiKey = resolved.values.apiKey ?? resolved.values.api_key;
503
+ if (apiKey) {
504
+ LogStatus(`Using Credential Engine API key for vector DB "${vectorDBEntity.Name}"`);
505
+ return apiKey;
506
+ }
507
+ LogError(`Credential "${credentialEntity.Name}" for vector DB "${vectorDBEntity.Name}" has no apiKey field, falling back to environment variable`);
508
+ }
509
+ else {
510
+ LogError(`Credential ID ${vectorDBEntity.CredentialID} not found for vector DB "${vectorDBEntity.Name}", falling back to environment variable`);
511
+ }
512
+ }
513
+ catch (e) {
514
+ const msg = e instanceof Error ? e.message : String(e);
515
+ LogError(`Failed to resolve credential for vector DB "${vectorDBEntity.Name}": ${msg}, falling back to environment variable`);
516
+ }
517
+ }
518
+ // Fallback to legacy environment variable
519
+ return GetAIAPIKey(vectorDBEntity.ClassKey);
520
+ }
499
521
  async GetEntityDocument(EntityDocumentID) {
500
522
  const cache = EntityDocumentCache.Instance;
501
523
  if (!cache.IsLoaded) {
@@ -546,34 +568,23 @@ export class EntityVectorSyncer extends VectorBase {
546
568
  }
547
569
  return entityDocuments;
548
570
  }
549
- async GetOrCreateVectorIndex(entityDocument) {
550
- let vectorIndexEntity = await super.RunViewForSingleValue('MJ: Vector Indexes', `VectorDatabaseID = '${entityDocument.VectorDatabaseID}' AND EmbeddingModelID = '${entityDocument.AIModelID}'`);
551
- if (vectorIndexEntity) {
552
- return vectorIndexEntity;
553
- }
554
- LogStatus(`No Vector Index found for entityDocument ${entityDocument.ID}, creating one`);
555
- try {
556
- vectorIndexEntity = await super.Metadata.GetEntityObject('MJ: Vector Indexes');
557
- vectorIndexEntity.NewRecord();
558
- vectorIndexEntity.VectorDatabaseID = entityDocument.VectorDatabaseID;
559
- vectorIndexEntity.EmbeddingModelID = entityDocument.AIModelID;
560
- vectorIndexEntity.Name = `Vector Index for entityDocument ${entityDocument.EntityID}`;
561
- vectorIndexEntity.Description = `Vector Index that uses the Vector database ${entityDocument.VectorDatabaseID} and ${entityDocument.AIModelID} as the embedding model`;
562
- const saveResult = await super.SaveEntity(vectorIndexEntity);
563
- if (saveResult) {
564
- LogStatus(`Successfully created new Vector Index Entity`);
565
- return vectorIndexEntity;
566
- }
567
- else {
568
- LogError('Error saving Vector Index Entity');
569
- return null;
570
- }
571
- }
572
- catch (err) {
573
- console.error(JSON.stringify(err));
574
- LogError(err);
575
- return null;
576
- }
571
+ /**
572
+ * Resolves the VectorIndex for the given EntityDocument by looking up its VectorIndexID
573
+ * using the cached KnowledgeHubMetadataEngine. If VectorIndexID is not set on the
574
+ * EntityDocument, throws a descriptive error instructing the user to configure it.
575
+ */
576
+ GetVectorIndexForEntityDocument(entityDocument) {
577
+ if (!entityDocument.VectorIndexID) {
578
+ throw new Error(`Entity Document "${entityDocument.Name}" (ID: ${entityDocument.ID}) does not have a VectorIndexID configured. ` +
579
+ `Please edit the Entity Document and select a Vector Index before running vectorization. ` +
580
+ `You can create a Vector Index in the Knowledge Hub > Vector Indexes section.`);
581
+ }
582
+ const vectorIndex = KnowledgeHubMetadataEngine.Instance.GetVectorIndexById(entityDocument.VectorIndexID);
583
+ if (!vectorIndex) {
584
+ throw new Error(`Vector Index with ID "${entityDocument.VectorIndexID}" not found for Entity Document "${entityDocument.Name}". ` +
585
+ `The configured VectorIndexID may refer to a deleted index. Please update the Entity Document's Vector Index setting.`);
586
+ }
587
+ return vectorIndex;
577
588
  }
578
589
  async CreateTemplateForEntityDocument(entityDocument) {
579
590
  const templateEntity = await super.Metadata.GetEntityObject('MJ: Templates');
@@ -727,10 +738,9 @@ export class EntityVectorSyncer extends VectorBase {
727
738
  const md = super.Metadata;
728
739
  const rv = super.RunView;
729
740
  const vectorIndexID = String(embeddingData.VectorIndexID);
730
- const vectorIndex = await md.GetEntityObject('MJ: Vector Indexes', contextUser);
731
- const loadResult = await vectorIndex.Load(vectorIndexID);
732
- if (!loadResult) {
733
- LogError(`Vector Index with ID ${vectorIndexID} not found`);
741
+ const vectorIndex = KnowledgeHubMetadataEngine.Instance.GetVectorIndexById(vectorIndexID);
742
+ if (!vectorIndex) {
743
+ LogError(`Vector Index with ID ${vectorIndexID} not found in KnowledgeHubMetadataEngine cache`);
734
744
  return;
735
745
  }
736
746
  const entityDocument = embeddingData.EntityDocument;
@@ -1 +1 @@
1
- {"version":3,"file":"entityVectorSync.js","sourceRoot":"","sources":["../../src/models/entityVectorSync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entityVectorSync.js","sourceRoot":"","sources":["../../src/models/entityVectorSync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"VectorizeTemplates.d.ts","sourceRoot":"","sources":["../../../src/models/workers/VectorizeTemplates.ts"],"names":[],"mappings":"AAaA,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAmDrD"}
1
+ {"version":3,"file":"VectorizeTemplates.d.ts","sourceRoot":"","sources":["../../../src/models/workers/VectorizeTemplates.ts"],"names":[],"mappings":"AAaA,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAkDrD"}
@@ -1,6 +1,6 @@
1
1
  import { parentPort, threadId, workerData } from 'node:worker_threads';
2
2
  import { TemplateEngineServer } from '@memberjunction/templates';
3
- import { LogError, ValidationResult } from '@memberjunction/core';
3
+ import { LogError } from '@memberjunction/core';
4
4
  import { MJGlobal } from '@memberjunction/global';
5
5
  import { BaseEmbeddings } from '@memberjunction/ai';
6
6
  // AI provider loading now handled by @memberjunction/aiengine
@@ -14,21 +14,21 @@ export async function VectorizeEntity() {
14
14
  const templateContent = context.templateContent;
15
15
  TemplateEngineServer.Instance.SetupNunjucks();
16
16
  const startTime = Date.now();
17
- //console.log('\t##### Annotator started #####', { threadId, now: Date.now() % 10_000, elapsed: Date.now() - context.executionId });
18
17
  const embedding = MJGlobal.Instance.ClassFactory.CreateInstance(BaseEmbeddings, context.embeddingDriverClass, context.embeddingAPIKey);
19
18
  const processedBatch = [];
19
+ const failedRecords = [];
20
20
  for (const entityData of batch) {
21
- const validationResult = ValidateTemplateInput(template, entityData);
22
- if (!validationResult.Success) {
23
- LogError(`Validation error for record ${entityData.ID}`, undefined, validationResult.Errors.map(e => e.Message).join('\n'));
24
- continue;
25
- }
26
- let result = await TemplateEngineServer.Instance.RenderTemplate(template, templateContent, entityData, true);
21
+ // No pre-validation — entity records commonly have null fields (e.g. Bio, State)
22
+ // and the Nunjucks templates handle missing data gracefully via {% if Field %} conditionals.
23
+ // Pass SuppressWarnings=true since entity doc vectorization doesn't need warnings for missing fields.
24
+ const result = await TemplateEngineServer.Instance.RenderTemplate(template, templateContent, entityData, true, true);
27
25
  if (result.Success) {
28
26
  processedBatch.push(result.Output);
29
27
  }
30
28
  else {
31
- LogError(`Error rendering template for record ${entityData.ID}`, undefined, result.Message);
29
+ const recordID = String(entityData.ID ?? entityData.__mj_recordID ?? 'unknown');
30
+ LogError(`Error rendering template for record ${recordID}`, undefined, result.Message);
31
+ failedRecords.push({ RecordID: recordID, Message: result.Message });
32
32
  }
33
33
  }
34
34
  const embeddings = await embedding.EmbedTexts({ texts: processedBatch, model: null });
@@ -48,40 +48,8 @@ export async function VectorizeEntity() {
48
48
  const runTime = Date.now() - startTime;
49
49
  const elapsed = Date.now() - context.executionId;
50
50
  console.log('\t##### Generating Vectors: Complete #####', { threadId, now: Date.now() % 100_000, runTime, elapsed });
51
- await delay(context.delayTimeMS); //short deplay to avoid getting rate limited by the embedding model's api
52
- parentPort.postMessage({ ...workerData, batch: embeddingBatch });
53
- }
54
- /**
55
- * This method is different from the Validate() method which validates the state of the Template itself. This method validates the data object provided meets the requirements for the template's parameter definitions.
56
- * @param data - the data object to validate against the template's parameter definitions
57
- */
58
- function ValidateTemplateInput(template, data) {
59
- const result = new ValidationResult();
60
- let params = template.Params;
61
- if (!params) {
62
- result.Errors.push({
63
- Source: "",
64
- Message: "Params property not found on the template.",
65
- Value: "",
66
- Type: 'Failure'
67
- });
68
- }
69
- params?.forEach((p) => {
70
- if (p.IsRequired) {
71
- if (!data || data[p.Name] === undefined || data[p.Name] === null ||
72
- (typeof data[p.Name] === 'string' && data[p.Name].toString().trim() === '')) {
73
- result.Errors.push({
74
- Source: p.Name,
75
- Message: `Parameter ${p.Name} is required.`,
76
- Value: data[p.Name],
77
- Type: 'Failure'
78
- });
79
- }
80
- }
81
- });
82
- // now set result's top level success falg based on the existence of ANY failure record within the errors collection
83
- result.Success = result.Errors.some(e => e.Type === 'Failure') ? false : true;
84
- return result;
51
+ await delay(context.delayTimeMS); //short deplay to avoid getting rate limited by the embedding model's api
52
+ parentPort.postMessage({ ...workerData, batch: embeddingBatch, errors: failedRecords });
85
53
  }
86
54
  VectorizeEntity();
87
55
  //# sourceMappingURL=VectorizeTemplates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VectorizeTemplates.js","sourceRoot":"","sources":["../../../src/models/workers/VectorizeTemplates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VectorizeTemplates.js","sourceRoot":"","sources":["../../../src/models/workers/VectorizeTemplates.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-vector-sync",
3
3
  "type": "module",
4
- "version": "5.23.0",
4
+ "version": "5.25.0",
5
5
  "description": "MemberJunction: AI Vector/Entity Sync Package - handles synchronization between MemberJunction entities and vector databases",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -18,18 +18,19 @@
18
18
  "author": "MemberJunction.com",
19
19
  "license": "ISC",
20
20
  "dependencies": {
21
- "@memberjunction/ai": "5.23.0",
22
- "@memberjunction/ai-vectordb": "5.23.0",
23
- "@memberjunction/ai-vectors": "5.23.0",
24
- "@memberjunction/ai-vectors-pinecone": "5.23.0",
25
- "@memberjunction/ai-core-plus": "5.23.0",
26
- "@memberjunction/ai-prompts": "5.23.0",
27
- "@memberjunction/aiengine": "5.23.0",
28
- "@memberjunction/core": "5.23.0",
29
- "@memberjunction/core-entities": "5.23.0",
30
- "@memberjunction/global": "5.23.0",
31
- "@memberjunction/templates": "5.23.0",
32
- "@memberjunction/templates-base-types": "5.23.0",
21
+ "@memberjunction/ai": "5.25.0",
22
+ "@memberjunction/ai-vectordb": "5.25.0",
23
+ "@memberjunction/ai-vectors": "5.25.0",
24
+ "@memberjunction/ai-vectors-pinecone": "5.25.0",
25
+ "@memberjunction/ai-core-plus": "5.25.0",
26
+ "@memberjunction/ai-prompts": "5.25.0",
27
+ "@memberjunction/aiengine": "5.25.0",
28
+ "@memberjunction/core": "5.25.0",
29
+ "@memberjunction/core-entities": "5.25.0",
30
+ "@memberjunction/credentials": "5.25.0",
31
+ "@memberjunction/global": "5.25.0",
32
+ "@memberjunction/templates": "5.25.0",
33
+ "@memberjunction/templates-base-types": "5.25.0",
33
34
  "dotenv": "^17.2.4",
34
35
  "mssql": "^12.2.0"
35
36
  },
@@ -1,2 +0,0 @@
1
- export declare function UpsertVectorRecords(): Promise<void>;
2
- //# sourceMappingURL=UpsertVectors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UpsertVectors.d.ts","sourceRoot":"","sources":["../../../src/models/workers/UpsertVectors.ts"],"names":[],"mappings":"AASA,wBAAsB,mBAAmB,kBAsCxC"}
@@ -1,43 +0,0 @@
1
- import { parentPort, threadId, workerData } from 'node:worker_threads';
2
- import { VectorDBBase } from '@memberjunction/ai-vectordb';
3
- import { MJGlobal } from '@memberjunction/global';
4
- import { LogError } from '@memberjunction/core';
5
- const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
6
- export async function UpsertVectorRecords() {
7
- const { batch, context } = workerData;
8
- const embeddingsBatch = batch;
9
- if (!embeddingsBatch) {
10
- throw new Error('Embeddings are required for the ArchiveWorker');
11
- }
12
- const entityDocument = context.entityDocument;
13
- const vectorDB = MJGlobal.Instance.ClassFactory.CreateInstance(VectorDBBase, context.vectorDBClassKey, context.vectorDBAPIKey);
14
- const startTime = Date.now();
15
- //console.log('\t##### Archiver started #####', { threadId, now: Date.now() % 10_000, elapsed: Date.now() - context.executionId });
16
- const vectorRecords = embeddingsBatch.map((embedding) => {
17
- const guid = uuidv4();
18
- embedding.VectorID = guid;
19
- return {
20
- id: guid,
21
- values: embedding.Vector,
22
- metadata: {
23
- RecordID: embedding.__mj_compositeKey.toString(),
24
- Entity: entityDocument.Entity,
25
- TemplateID: context.templateContent.ID,
26
- }
27
- };
28
- });
29
- const response = await vectorDB.CreateRecords(vectorRecords);
30
- if (!response.success) {
31
- LogError('Unable to successfully save records to vector database', undefined, response.message);
32
- }
33
- const runTime = Date.now() - startTime;
34
- const elapsed = Date.now() - context.executionId;
35
- console.log('\t##### Upserting records to vector database: Complete #####', { threadId, now: Date.now() % 100_000, runTime, elapsed });
36
- await delay(context.delayTimeMS); //short deplay to avoid getting rate limited by the embedding model's api
37
- parentPort.postMessage({ ...workerData, ...batch });
38
- }
39
- function uuidv4() {
40
- return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, c => (+c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> +c / 4).toString(16));
41
- }
42
- UpsertVectorRecords();
43
- //# sourceMappingURL=UpsertVectors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UpsertVectors.js","sourceRoot":"","sources":["../../../src/models/workers/UpsertVectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAgB,YAAY,EAAgB,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEhF,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,UAA8C,CAAC;IAE1E,MAAM,eAAe,GAAoB,KAAwB,CAAC;IAClE,IAAG,CAAC,eAAe,EAAC,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAC9C,MAAM,QAAQ,GAAiB,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAe,YAAY,EAAE,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE3J,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,mIAAmI;IAEnI,MAAM,aAAa,GAAmB,eAAe,CAAC,GAAG,CAAC,CAAC,SAAwB,EAAE,EAAE;QACrF,MAAM,IAAI,GAAW,MAAM,EAAE,CAAC;QAC9B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC1B,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,QAAQ,EAAE;gBACR,QAAQ,EAAE,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE;gBAChD,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE;aACvC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAiB,MAAM,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAC3E,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,QAAQ,CAAC,wDAAwD,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClG,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,8DAA8D,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvI,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,0EAA0E;IAC5G,UAAU,CAAC,WAAW,CAAC,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,MAAM;IACb,OAAO,sCAAsC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAClE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAChF,CAAC;AACJ,CAAC;AAED,mBAAmB,EAAE,CAAC"}