@memberjunction/integration-engine 5.44.0 → 5.45.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.
@@ -415,6 +415,13 @@ export declare abstract class BaseIntegrationConnector {
415
415
  BatchSize?: number;
416
416
  MaxRecords?: number;
417
417
  }): Promise<ExternalFieldSchema[]>;
418
+ /**
419
+ * The record source `DiscoverFieldsViaFetch` streams for field/PK inference. Default: loop
420
+ * `FetchChanges` (full fetch), yielding each record's fields until `maxRecords`. A protocol subclass
421
+ * (e.g. REST) overrides this to sample a template-var CHILD with the correct record-constrained,
422
+ * recursive stream. Yields plain field maps; the caller stops it at `maxRecords`.
423
+ */
424
+ protected DiscoverySampleRecordStream(companyIntegration: MJCompanyIntegrationEntity, objectName: string, contextUser: UserInfo, batchSize: number, maxRecords: number): AsyncGenerator<Record<string, unknown>>;
418
425
  /**
419
426
  * Tests connectivity to the external system.
420
427
  * @param companyIntegration - The company integration entity with connection credentials
@@ -1 +1 @@
1
- {"version":3,"file":"BaseIntegrationConnector.d.ts","sourceRoot":"","sources":["../src/BaseIntegrationConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseIntegrationConnector.d.ts","sourceRoot":"","sources":["../src/BaseIntegrationConnector.ts"],"names":[],"mappings":"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"}
@@ -352,40 +352,8 @@ export class BaseIntegrationConnector {
352
352
  // `discoveryMaxRecords` knob. Sampling itself is the FALLBACK path — used only when the source lacks a
353
353
  // describe endpoint that yields pk+type+columns; a describe-capable connector returns here-unused.
354
354
  const maxRecords = opts.MaxRecords ?? envInt('MJ_INTEGRATION_DISCOVERY_MAX_RECORDS', 500);
355
- const self = this;
356
- async function* readPathStream() {
357
- let ctx = {
358
- CompanyIntegration: companyIntegration,
359
- ObjectName: objectName,
360
- WatermarkValue: null, // FULL fetch — discovery wants breadth, not the incremental delta
361
- BatchSize: batchSize,
362
- ContextUser: contextUser,
363
- };
364
- let yielded = 0;
365
- for (;;) {
366
- const batch = await self.FetchChanges(ctx);
367
- for (const rec of batch.Records) {
368
- yield rec.Fields;
369
- if (++yielded >= maxRecords)
370
- return;
371
- }
372
- if (!batch.HasMore)
373
- break;
374
- ctx = {
375
- ...ctx,
376
- WatermarkValue: null,
377
- CurrentPage: batch.NextPage,
378
- CurrentOffset: batch.NextOffset,
379
- CurrentCursor: batch.NextCursor,
380
- AfterKeyValue: batch.NextAfterKeyValue ?? ctx.AfterKeyValue,
381
- };
382
- }
383
- }
384
355
  try {
385
- return await this.DiscoverFieldsViaStream(readPathStream(), {
386
- Discovery: { TimeBudgetMs: timeBudgetMs },
387
- ReadOnly: true,
388
- });
356
+ return await this.DiscoverFieldsViaStream(this.DiscoverySampleRecordStream(companyIntegration, objectName, contextUser, batchSize, maxRecords), { Discovery: { TimeBudgetMs: timeBudgetMs }, ReadOnly: true });
389
357
  }
390
358
  catch (err) {
391
359
  const msg = err instanceof Error ? err.message : String(err);
@@ -393,6 +361,40 @@ export class BaseIntegrationConnector {
393
361
  return this.DiscoverFields(companyIntegration, objectName, contextUser);
394
362
  }
395
363
  }
364
+ /**
365
+ * The record source `DiscoverFieldsViaFetch` streams for field/PK inference. Default: loop
366
+ * `FetchChanges` (full fetch), yielding each record's fields until `maxRecords`. A protocol subclass
367
+ * (e.g. REST) overrides this to sample a template-var CHILD with the correct record-constrained,
368
+ * recursive stream. Yields plain field maps; the caller stops it at `maxRecords`.
369
+ */
370
+ async *DiscoverySampleRecordStream(companyIntegration, objectName, contextUser, batchSize, maxRecords) {
371
+ let ctx = {
372
+ CompanyIntegration: companyIntegration,
373
+ ObjectName: objectName,
374
+ WatermarkValue: null, // FULL fetch — discovery wants breadth, not the incremental delta
375
+ BatchSize: batchSize,
376
+ ContextUser: contextUser,
377
+ };
378
+ let yielded = 0;
379
+ for (;;) {
380
+ const batch = await this.FetchChanges(ctx);
381
+ for (const rec of batch.Records) {
382
+ yield rec.Fields;
383
+ if (++yielded >= maxRecords)
384
+ return;
385
+ }
386
+ if (!batch.HasMore)
387
+ break;
388
+ ctx = {
389
+ ...ctx,
390
+ WatermarkValue: null,
391
+ CurrentPage: batch.NextPage,
392
+ CurrentOffset: batch.NextOffset,
393
+ CurrentCursor: batch.NextCursor,
394
+ AfterKeyValue: batch.NextAfterKeyValue ?? ctx.AfterKeyValue,
395
+ };
396
+ }
397
+ }
396
398
  /**
397
399
  * Returns suggested default field mappings for an external object to MJ entity.
398
400
  * Override in subclasses to provide intelligent defaults.
@@ -1 +1 @@
1
- {"version":3,"file":"BaseIntegrationConnector.js","sourceRoot":"","sources":["../src/BaseIntegrationConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseIntegrationConnector.js","sourceRoot":"","sources":["../src/BaseIntegrationConnector.ts"],"names":[],"mappings":"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"}
@@ -192,6 +192,42 @@ export declare abstract class BaseRESTIntegrationConnector extends BaseIntegrati
192
192
  * Override in a concrete connector if a vendor tolerates larger per-call parent runs.
193
193
  */
194
194
  protected TemplateVarParentBatchSize(): number;
195
+ /**
196
+ * DISCOVERY-ONLY: last-resort SAFETY bound on the recursion depth for multi-level template chains (a
197
+ * parent that is itself a template-var child), so a malformed metadata cycle cannot loop unboundedly.
198
+ * This is only the fallback when the consumer sets no `discoverySampleMaxDepth` in Configuration and
199
+ * no env override is present — the consumer decides the real value. A recursion cap MUST have some
200
+ * bound, so a conservative default remains here; override the getter to change the fallback.
201
+ */
202
+ protected DiscoverySampleMaxDepth(): number;
203
+ /**
204
+ * REST override (§sample-discover): a SINGLE-template-var CHILD is sampled with the recursive,
205
+ * record-constrained {@link StreamRecordsForDiscovery}. Flat objects fall back to the generic
206
+ * FetchChanges loop; MULTI-var (composition) children are deferred — {@link StreamRecordsForDiscovery}
207
+ * adjourns them (declared-only until first sync) rather than fire malformed URLs.
208
+ */
209
+ protected DiscoverySampleRecordStream(companyIntegration: MJCompanyIntegrationEntity, objectName: string, contextUser: UserInfo, batchSize: number, maxRecords: number): AsyncGenerator<Record<string, unknown>>;
210
+ /**
211
+ * DISCOVERY-ONLY recursive lazy sampler. Yields records of `objectID` for field/PK analysis by
212
+ * STREAMING — never bulk. A top-level object paginates its endpoint directly. A template-var CHILD
213
+ * streams its PARENT (recursively, via this same routine), classifies the parent's key from the
214
+ * parent's own ~`target` rows (declared PK → value-statistic classifier → adjourn — never a guessed
215
+ * name), and fetches children under parent rows until the child has `target`. Parent rows beyond what
216
+ * the child needs are analysis-only — they keep the parent's key classified on a CONSISTENT ~`target`
217
+ * sample; if the child needs MORE parents than `target`, it keeps streaming, so the parent count may
218
+ * be over OR under `target`. Record-constrained (unlike sync, which walks ALL rows via the DAG): a
219
+ * million-row ancestor is streamed and cut off early. Pure HTTP — no SQL, dialect-agnostic.
220
+ */
221
+ private StreamRecordsForDiscovery;
222
+ /**
223
+ * Resolves the parent's addressing-key FIELD NAME for discovery-time sampling, without presupposing
224
+ * it: (1) a declared PK in metadata; else (2) the value-statistic classifier over the fetched rows.
225
+ * Returns null when the parent is genuinely keyless (→ the caller adjourns). No conventional identity
226
+ * name is ever guessed — a name is never assumed for a field the data doesn't prove is the key.
227
+ */
228
+ private ResolveParentKeyField;
229
+ /** Reads the discovery knob precedence — per-connection Configuration (int) → operator env → default. */
230
+ private ReadDiscoveryConfig;
195
231
  /** Stable total order over ID strings — numeric when ALL are integer-like, else lexical. */
196
232
  private SortIdsStable;
197
233
  /** Total-order comparator matching SortIdsStable, used for keyset resume (id > AfterKeyValue). */
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRESTIntegrationConnector.d.ts","sourceRoot":"","sources":["../src/BaseRESTIntegrationConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAI3I,OAAO,EACH,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACR,cAAc,EACd,gBAAgB,EAGhB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACb,MAAM,YAAY,CAAC;AAIpB,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC5B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,+CAA+C;IAC/C,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,sDAAsD;AACtD,MAAM,WAAW,YAAY;IACzB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC5B,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,+EAA+E;AAC/E,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;AAqBzE,gGAAgG;AAIhG;;;;;;;;;;GAUG;AACH,8BAAsB,4BAA6B,SAAQ,wBAAwB;IAI/E;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC3B,kBAAkB,EAAE,0BAA0B,EAC9C,WAAW,EAAE,QAAQ,GACtB,OAAO,CAAC,eAAe,CAAC;IAE3B;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC3B,IAAI,EAAE,eAAe,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,CAC9B,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,IAAI,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC;IAExB;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAChC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,MAAM,GAAG,IAAI,GAC/B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAE5B;;;;;;;;OAQG;IACH,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CACpC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACjB,eAAe;IAElB;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CACzB,kBAAkB,EAAE,0BAA0B,EAC9C,IAAI,EAAE,eAAe,GACtB,MAAM;IAET;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,eAAe,CACrB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,8BAA8B,EAAE,GAC1C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAI1B;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;IAI3D;;;;;;;;OAQG;IACH,SAAS,CAAC,4BAA4B,CAClC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,GAAG,EAAE,yBAAyB,EAC9B,MAAM,EAAE,8BAA8B,EAAE,GACzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAc1B;;OAEG;IACU,eAAe,CACxB,kBAAkB,EAAE,0BAA0B,EAC9C,YAAY,EAAE,QAAQ,GACvB,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAelC;;OAEG;IACU,cAAc,CACvB,kBAAkB,EAAE,0BAA0B,EAC9C,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,QAAQ,GACvB,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAOjC;;;;OAIG;IACU,gBAAgB,CACzB,kBAAkB,EAAE,0BAA0B,EAC9C,YAAY,EAAE,QAAQ,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAkB5B;;;OAGG;IACU,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8BvE,+FAA+F;IACzE,YAAY,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4BjF,+FAA+F;IACzE,YAAY,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6BjF,yFAAyF;IACnE,YAAY,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4BjF,+FAA+F;IACzE,SAAS,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IA4BtF;;;;;;OAMG;IACH,SAAS,CAAC,kBAAkB,CACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO;IAOV;;;;;;;;OAQG;IACH,SAAS,CAAC,kBAAkB,CACxB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GAAG,IAAI,GAC1B,MAAM;IAST,wGAAwG;IACxG,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS;IAWzE,kFAAkF;IAClF,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS;IA0BtG;;OAEG;YACW,SAAS;IA0BvB;;;;;;;;;;;OAWG;YACW,qBAAqB;IA8EnC;;;;;OAKG;IACH,SAAS,CAAC,0BAA0B,IAAI,MAAM;IAI9C,4FAA4F;IAC5F,OAAO,CAAC,aAAa;IAIrB,kGAAkG;IAClG,OAAO,CAAC,UAAU;IAQlB,0GAA0G;YAC5F,UAAU;IAaxB;;;;;;;;;;;OAWG;YACW,mBAAmB;IA6CjC;;;;;;;;;;OAUG;IACH,gHAAgH;IAChH,OAAO,CAAC,sBAAsB;IAU9B;;iFAE6E;IAC7E,OAAO,CAAC,yBAAyB;IAejC,OAAO,CAAC,mBAAmB;IAsE3B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;;;OAIG;YACW,aAAa;IAgD3B;;;OAGG;YACW,mBAAmB;IAajC;;OAEG;YACW,eAAe;IAuB7B;;;;;;OAMG;YACW,kBAAkB;IA0EhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAMpB;;;;;;OAMG;IACH,SAAS,CAAC,iBAAiB,CACvB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,yBAAyB,EAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,EACf,iBAAiB,CAAC,EAAE,MAAM,GAC3B,MAAM;IAkBT;;;;;OAKG;IACH,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,yBAAyB,GAAG,MAAM;IA0BvF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAK1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAM9B;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,yBAAyB;IAQ/F;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,8BAA8B,EAAE;IAQ7E;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAoCxB;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAOhC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA8B7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAW/B"}
1
+ {"version":3,"file":"BaseRESTIntegrationConnector.d.ts","sourceRoot":"","sources":["../src/BaseRESTIntegrationConnector.ts"],"names":[],"mappings":"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"}
@@ -369,6 +369,10 @@ export class BaseRESTIntegrationConnector extends BaseIntegrationConnector {
369
369
  // AfterKeyValue, so the engine loops to completion), fetch them CONCURRENTLY up to the engine's
370
370
  // MaxConcurrency, and gate each on the engine's adaptive AIMD bucket (RateLimitAcquire/Report).
371
371
  const top = resolutions[0];
372
+ // Sync path only: parent IDs come from the SYNCED DB. Discovery-time sampling of a template-var
373
+ // child no longer routes through here — the REST DiscoverySampleRecordStream override drives it via
374
+ // StreamRecordsForDiscovery (which fetches parents live), so FetchWithTemplateVars is sync-exclusive
375
+ // and an unsynced parent correctly yields ZERO_PARENTS ("sync the parent first").
372
376
  const allParentIDs = this.SortIdsStable(await this.LoadParentIDs(top.parentObjectID, ctx.ContextUser, []));
373
377
  if (allParentIDs.length === 0) {
374
378
  const parentObj = IntegrationEngineBase.Instance.GetIntegrationObjectByID(top.parentObjectID);
@@ -411,6 +415,181 @@ export class BaseRESTIntegrationConnector extends BaseIntegrationConnector {
411
415
  TemplateVarParentBatchSize() {
412
416
  return 10;
413
417
  }
418
+ /**
419
+ * DISCOVERY-ONLY: last-resort SAFETY bound on the recursion depth for multi-level template chains (a
420
+ * parent that is itself a template-var child), so a malformed metadata cycle cannot loop unboundedly.
421
+ * This is only the fallback when the consumer sets no `discoverySampleMaxDepth` in Configuration and
422
+ * no env override is present — the consumer decides the real value. A recursion cap MUST have some
423
+ * bound, so a conservative default remains here; override the getter to change the fallback.
424
+ */
425
+ DiscoverySampleMaxDepth() {
426
+ return 4;
427
+ }
428
+ /**
429
+ * REST override (§sample-discover): a SINGLE-template-var CHILD is sampled with the recursive,
430
+ * record-constrained {@link StreamRecordsForDiscovery}. Flat objects fall back to the generic
431
+ * FetchChanges loop; MULTI-var (composition) children are deferred — {@link StreamRecordsForDiscovery}
432
+ * adjourns them (declared-only until first sync) rather than fire malformed URLs.
433
+ */
434
+ async *DiscoverySampleRecordStream(companyIntegration, objectName, contextUser, batchSize, maxRecords) {
435
+ const obj = this.GetCachedObject(companyIntegration.IntegrationID, objectName);
436
+ if (this.DetectTemplateVars(obj.APIPath).length === 0) {
437
+ yield* super.DiscoverySampleRecordStream(companyIntegration, objectName, contextUser, batchSize, maxRecords);
438
+ return;
439
+ }
440
+ let yielded = 0;
441
+ for await (const rec of this.StreamRecordsForDiscovery(companyIntegration, obj.ID, contextUser, maxRecords, 0)) {
442
+ yield rec.Fields;
443
+ if (++yielded >= maxRecords)
444
+ return;
445
+ }
446
+ }
447
+ /**
448
+ * DISCOVERY-ONLY recursive lazy sampler. Yields records of `objectID` for field/PK analysis by
449
+ * STREAMING — never bulk. A top-level object paginates its endpoint directly. A template-var CHILD
450
+ * streams its PARENT (recursively, via this same routine), classifies the parent's key from the
451
+ * parent's own ~`target` rows (declared PK → value-statistic classifier → adjourn — never a guessed
452
+ * name), and fetches children under parent rows until the child has `target`. Parent rows beyond what
453
+ * the child needs are analysis-only — they keep the parent's key classified on a CONSISTENT ~`target`
454
+ * sample; if the child needs MORE parents than `target`, it keeps streaming, so the parent count may
455
+ * be over OR under `target`. Record-constrained (unlike sync, which walks ALL rows via the DAG): a
456
+ * million-row ancestor is streamed and cut off early. Pure HTTP — no SQL, dialect-agnostic.
457
+ */
458
+ async *StreamRecordsForDiscovery(companyIntegration, objectID, contextUser, target, depth) {
459
+ const maxDepth = this.ReadDiscoveryConfig(companyIntegration)
460
+ .int('discoverySampleMaxDepth', 'MJ_INTEGRATION_DISCOVERY_SAMPLE_MAX_DEPTH', this.DiscoverySampleMaxDepth());
461
+ if (depth > maxDepth)
462
+ return;
463
+ const obj = IntegrationEngineBase.Instance.GetIntegrationObjectByID(objectID);
464
+ if (!obj)
465
+ return;
466
+ const fields = this.GetCachedFields(obj.ID);
467
+ const auth = await this.Authenticate(companyIntegration, contextUser);
468
+ const baseURL = this.GetBaseURL(companyIntegration, auth);
469
+ const templateVars = this.DetectTemplateVars(obj.APIPath);
470
+ const pkFieldNames = this.FindPrimaryKeyFieldNames(fields);
471
+ // TOP-LEVEL: paginate the flat endpoint lazily; the caller stops pulling at its own target.
472
+ if (templateVars.length === 0) {
473
+ let pageCtx = { CompanyIntegration: companyIntegration, ObjectName: obj.Name, WatermarkValue: null, BatchSize: target, ContextUser: contextUser };
474
+ for (let guard = 0; guard < 100_000; guard++) {
475
+ const batch = await this.FetchFlat(auth, baseURL, obj, fields, pageCtx);
476
+ for (const rec of batch.Records)
477
+ yield rec;
478
+ if (!batch.HasMore)
479
+ return;
480
+ pageCtx = { ...pageCtx, CurrentPage: batch.NextPage, CurrentOffset: batch.NextOffset, CurrentCursor: batch.NextCursor };
481
+ }
482
+ return;
483
+ }
484
+ // MULTI-VAR (composition) children are DEFERRED, and deferring means NOT ATTEMPTING: resolving only
485
+ // templateVars[0] would leave the remaining `{Vars}` as literal, unsubstituted text in the fetch URL
486
+ // (e.g. `/orgs/123/profiles/{ProfileId}/events`) — malformed requests fired at the vendor API. Adjourn
487
+ // instead → the multi-var child falls back to declared-only fields, caught at first real sync (which
488
+ // handles multi-var properly via FetchWithTemplateVars). (rkihm-BC #3049.)
489
+ if (templateVars.length > 1)
490
+ return;
491
+ // CHILD (single template var): stream the PARENT recursively via this SAME routine — so a
492
+ // grandparent is sampled identically (uniform to all depths). Classify the parent's key from its
493
+ // own rows (declared PK → value-statistic classifier → adjourn — never a guessed name), then fetch
494
+ // children under each parent row.
495
+ //
496
+ // NO local cap. The ONLY bound is the leaf consumer's fill-to-`target`. Because each level pulls
497
+ // its parent LAZILY (the for-await below suspends between parents), that demand propagates up the
498
+ // WHOLE chain: when a parent's children run out and the leaf still needs more, the loop pulls the
499
+ // next parent — which lazily pulls the next grandparent, and so on to the highest ancestor. That is
500
+ // where the "fill to N" completion actually happens — at the top of the dependency chain, not
501
+ // locally.
502
+ const parentInfo = this.ResolveParentForVar(obj, fields, templateVars[0], companyIntegration.IntegrationID);
503
+ if (!parentInfo)
504
+ return;
505
+ const parentObj = IntegrationEngineBase.Instance.GetIntegrationObjectByID(parentInfo.parentObjectID);
506
+ if (!parentObj)
507
+ return;
508
+ let parentKey = this.GetCachedFields(parentObj.ID).find(f => f.IsPrimaryKey)?.Name ?? null;
509
+ const buffer = []; // parent rows awaiting descent until the key is classified
510
+ const fetchChildren = async function* (key, parentRec) {
511
+ const idVal = parentRec.Fields?.[key];
512
+ if (idVal == null || String(idVal) === '')
513
+ return;
514
+ const path = this.SubstituteTemplateVars(obj.APIPath, parentInfo.templateVar, String(idVal));
515
+ const fullURL = this.BuildFullURL(baseURL, path);
516
+ const ctx = { CompanyIntegration: companyIntegration, ObjectName: obj.Name, WatermarkValue: null, BatchSize: target, ContextUser: contextUser };
517
+ const result = await this.FetchWithPagination(auth, fullURL, obj, ctx);
518
+ for (const r of result.Records) {
519
+ r[parentInfo.fkFieldName] = String(idVal); // tag the resolved parent FK onto the child row
520
+ const transformed = this.applyTransformPreservingKeys(r, obj, fields);
521
+ yield this.ToExternalRecord(transformed, obj.Name, pkFieldNames);
522
+ }
523
+ }.bind(this);
524
+ for await (const parentRec of this.StreamRecordsForDiscovery(companyIntegration, parentInfo.parentObjectID, contextUser, target, depth + 1)) {
525
+ if (parentKey) {
526
+ yield* fetchChildren(parentKey, parentRec);
527
+ continue;
528
+ }
529
+ // Key not declared: buffer up to `target` parent rows, classify the key from them, then flush.
530
+ // This buffer pulls `target` parents up the chain (recursively resolving THEIR parents) — the
531
+ // "resolve N at the highest dependency" step — bounded by `target`, never the parent's total.
532
+ buffer.push(parentRec);
533
+ if (buffer.length >= target) {
534
+ parentKey = await this.ResolveParentKeyField(parentObj, buffer);
535
+ if (!parentKey)
536
+ return; // parent genuinely keyless → adjourn
537
+ for (const bp of buffer)
538
+ yield* fetchChildren(parentKey, bp);
539
+ buffer.length = 0;
540
+ }
541
+ }
542
+ // Parent stream ended before `target`: classify on whatever we buffered, then flush its children.
543
+ if (!parentKey && buffer.length > 0) {
544
+ parentKey = await this.ResolveParentKeyField(parentObj, buffer);
545
+ if (parentKey)
546
+ for (const bp of buffer)
547
+ yield* fetchChildren(parentKey, bp);
548
+ }
549
+ }
550
+ /**
551
+ * Resolves the parent's addressing-key FIELD NAME for discovery-time sampling, without presupposing
552
+ * it: (1) a declared PK in metadata; else (2) the value-statistic classifier over the fetched rows.
553
+ * Returns null when the parent is genuinely keyless (→ the caller adjourns). No conventional identity
554
+ * name is ever guessed — a name is never assumed for a field the data doesn't prove is the key.
555
+ */
556
+ async ResolveParentKeyField(parentObj, records) {
557
+ // (1) metadata: a declared PK sticks.
558
+ const declared = this.GetCachedFields(parentObj.ID).find(f => f.IsPrimaryKey);
559
+ if (declared)
560
+ return declared.Name;
561
+ // (2) discovery via fetch: let the value-statistic classifier pick the key from the fetched rows.
562
+ try {
563
+ const fields = await this.DiscoverFieldsViaStream(records.map(r => r.Fields), { ReadOnly: true });
564
+ const classified = fields.find(f => f.IsPrimaryKey);
565
+ if (classified)
566
+ return classified.Name;
567
+ }
568
+ catch { /* classifier abstains on a thin/ambiguous sample → adjourn */ }
569
+ // No name is ever assumed. If neither declared metadata nor the value-statistic classifier over the
570
+ // fetched rows yields a key, the parent is genuinely keyless → adjourn (its child is caught on the
571
+ // first real sync). We do NOT guess a conventional identity name.
572
+ return null;
573
+ }
574
+ /** Reads the discovery knob precedence — per-connection Configuration (int) → operator env → default. */
575
+ ReadDiscoveryConfig(ci) {
576
+ let cfg = {};
577
+ try {
578
+ if (ci.Configuration)
579
+ cfg = JSON.parse(ci.Configuration);
580
+ }
581
+ catch { /* malformed → env/default */ }
582
+ const asInt = (v) => (typeof v === 'number' && Number.isFinite(v) && v > 0 ? Math.floor(v) : undefined);
583
+ return {
584
+ int: (cfgKey, envKey, def) => {
585
+ const fromCfg = asInt(cfg[cfgKey]);
586
+ if (fromCfg != null)
587
+ return fromCfg;
588
+ const fromEnv = parseInt(process.env[envKey] ?? '', 10);
589
+ return Number.isFinite(fromEnv) && fromEnv > 0 ? fromEnv : def;
590
+ },
591
+ };
592
+ }
414
593
  /** Stable total order over ID strings — numeric when ALL are integer-like, else lexical. */
415
594
  SortIdsStable(ids) {
416
595
  return [...ids].sort((a, b) => this.CompareIds(a, b));