airbyte-faros-destination 0.23.12 → 0.23.13

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.
@@ -42,6 +42,13 @@ export declare class FarosDestination extends AirbyteDestination<DestinationConf
42
42
  private initGlobal;
43
43
  private init;
44
44
  private getOrigin;
45
+ private static sourceFarosSourceId;
46
+ /**
47
+ * Normalizes a source config message into the account-identity shape so
48
+ * account init can be driven from either the early identity message or the
49
+ * config message emitted by read().
50
+ */
51
+ private static identityFromSourceConfig;
45
52
  write(config: DestinationConfig, redactedConfig: AirbyteConfig, catalog: AirbyteConfiguredCatalog, stdin: NodeJS.ReadStream, dryRun: boolean): AsyncGenerator<AirbyteStateMessage>;
46
53
  private writeEntries;
47
54
  private shouldResetData;
@@ -28,6 +28,16 @@ const sync_1 = __importDefault(require("./sync"));
28
28
  const PACKAGE_ROOT = path_1.default.join(__dirname, '..');
29
29
  const BASE_RESOURCES_DIR = path_1.default.join(PACKAGE_ROOT, 'resources');
30
30
  const DEFAULT_API_URL = 'https://prod.api.faros.ai';
31
+ /**
32
+ * Raised when account/sync bootstrapping fails. Account init runs lazily from
33
+ * inside the write loop (which is wrapped in handleRecordProcessingError), but
34
+ * unlike a bad record its failure must always fail the sync rather than be
35
+ * swallowed by InvalidRecordStrategy.SKIP — matching the pre-deferral behavior
36
+ * where getOrCreateAccount/createAccountSync ran before the loop and failed
37
+ * loudly.
38
+ */
39
+ class AccountInitializationError extends verror_1.VError {
40
+ }
31
41
  /** Faros destination implementation. */
32
42
  class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
33
43
  constructor(logger, specOverride = undefined, farosClientConfig = undefined, farosClient = undefined, farosGraph = undefined, jsonataConverter = undefined, jsonataMode = jsonata_1.JSONataApplyMode.FALLBACK, passthrough = false, invalidRecordStrategy = types_1.InvalidRecordStrategy.SKIP, excludeFieldsByModel = {}, redactFieldsByModel = {}, redactor = undefined, graphQLClient = undefined) {
@@ -85,10 +95,10 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
85
95
  status: faros_airbyte_cdk_1.AirbyteConnectionStatus.SUCCEEDED,
86
96
  });
87
97
  }
88
- persistedSourceConfig(destinationConfig, msg) {
98
+ persistedSourceConfig(destinationConfig, identity) {
89
99
  return {
90
100
  ...destinationConfig,
91
- ...(msg.redactedUserConfig ?? msg.redactedConfig),
101
+ ...(identity.redactedUserConfig ?? identity.redactedConfig),
92
102
  };
93
103
  }
94
104
  makeHttpAgents(keepAlive, proxyUrl) {
@@ -315,6 +325,24 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
315
325
  this.logger.info(`Determined origin '${origin}' from stream prefixes`);
316
326
  return origin;
317
327
  }
328
+ static sourceFarosSourceId(identity) {
329
+ const id = identity?.redactedConfig?.faros_source_id;
330
+ return typeof id === 'string' && id.length > 0 ? id : undefined;
331
+ }
332
+ /**
333
+ * Normalizes a source config message into the account-identity shape so
334
+ * account init can be driven from either the early identity message or the
335
+ * config message emitted by read().
336
+ */
337
+ static identityFromSourceConfig(msg) {
338
+ return {
339
+ redactedConfig: msg.redactedConfig,
340
+ sourceType: msg.sourceType,
341
+ sourceMode: msg.sourceMode,
342
+ sourceVersion: msg.sourceVersion,
343
+ redactedUserConfig: msg.redactedUserConfig,
344
+ };
345
+ }
318
346
  async *write(config, redactedConfig, catalog, stdin, dryRun) {
319
347
  // Reset sync errors for each write operation
320
348
  this.syncErrors = {
@@ -324,35 +352,57 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
324
352
  this.adjustLoggerLevel(config);
325
353
  const startedAt = new Date();
326
354
  const origin = this.getOrigin(config, catalog);
327
- const accountId = config.faros_source_id || origin;
328
355
  const dryRunEnabled = config.dry_run === true || dryRun;
329
356
  await this.init({ ...config, dry_run: dryRunEnabled });
330
- let account;
331
- let sync;
332
- let logFiles;
333
- let heartbeatIntervalId;
334
- if (!dryRunEnabled) {
335
- account = await this.getFarosClient().getOrCreateAccount(accountId, this.farosGraph, redactedConfig);
336
- // WORKER_JOB_ID is populated by Airbyte
337
- let logId = process.env['WORKER_JOB_ID'] || undefined; // don't send empty string
338
- if (account) {
339
- sync = await this.getFarosClient().createAccountSync(accountId, startedAt, logId, config.edition_configs.heartbeat_timeout);
340
- this.logger.shouldSaveLogs =
341
- !!account.local &&
342
- sync &&
343
- config.edition_configs.upload_sync_logs !== false;
344
- if (sync && config.edition_configs.heartbeat_timeout) {
345
- const interval = (config.edition_configs.heartbeat_interval ||
346
- Math.floor(config.edition_configs.heartbeat_timeout / 3)) * 1000;
347
- heartbeatIntervalId = setInterval(async () => this.getFarosClient().sendHeartbeat(accountId, sync.syncId), interval);
348
- }
349
- if (this.logger.shouldSaveLogs) {
350
- logId = undefined; // let Faros generate a unique log id
351
- logFiles = new destination_logger_1.LogFiles(this.logger);
352
- this.logger.logFiles = logFiles;
357
+ let accountContext;
358
+ const ensureAccountSync = async (identity) => {
359
+ if (accountContext || dryRunEnabled) {
360
+ return;
361
+ }
362
+ // Prefer the source-level faros_source_id once the source identity (or
363
+ // config) message has arrived. If no such message precedes the first
364
+ // record/state/status message, fall back to the destination config and
365
+ // origin without pre-reading stdin.
366
+ const accountId = FarosDestination.sourceFarosSourceId(identity) ||
367
+ config.faros_source_id ||
368
+ origin;
369
+ const accountConfig = identity
370
+ ? this.persistedSourceConfig(redactedConfig, identity)
371
+ : redactedConfig;
372
+ // Account/sync bootstrap runs lazily inside the write loop, which is
373
+ // wrapped in handleRecordProcessingError. Wrap failures as
374
+ // AccountInitializationError so they always fail the sync instead of
375
+ // being swallowed as skippable record errors under
376
+ // InvalidRecordStrategy.SKIP.
377
+ try {
378
+ const account = await this.getFarosClient().getOrCreateAccount(accountId, this.farosGraph, accountConfig, identity?.sourceType, identity?.sourceMode);
379
+ accountContext = { accountId, account };
380
+ // WORKER_JOB_ID is populated by Airbyte
381
+ let logId = process.env['WORKER_JOB_ID'] || undefined; // don't send empty string
382
+ if (account) {
383
+ const sync = await this.getFarosClient().createAccountSync(accountId, startedAt, logId, config.edition_configs.heartbeat_timeout);
384
+ accountContext.sync = sync;
385
+ this.logger.shouldSaveLogs =
386
+ !!account.local &&
387
+ sync &&
388
+ config.edition_configs.upload_sync_logs !== false;
389
+ if (sync && config.edition_configs.heartbeat_timeout) {
390
+ const interval = (config.edition_configs.heartbeat_interval ||
391
+ Math.floor(config.edition_configs.heartbeat_timeout / 3)) *
392
+ 1000;
393
+ accountContext.heartbeatIntervalId = setInterval(async () => this.getFarosClient().sendHeartbeat(accountId, sync.syncId), interval);
394
+ }
395
+ if (this.logger.shouldSaveLogs) {
396
+ logId = undefined; // let Faros generate a unique log id
397
+ accountContext.logFiles = new destination_logger_1.LogFiles(this.logger);
398
+ this.logger.logFiles = accountContext.logFiles;
399
+ }
353
400
  }
354
401
  }
355
- }
402
+ catch (err) {
403
+ throw new AccountInitializationError(err, `Failed to initialize Faros account/sync for '${accountId}'`);
404
+ }
405
+ };
356
406
  const { streams, resetModelsByStream, converterDependencies } = this.initStreamsCheckConverters(catalog);
357
407
  const streamsSyncMode = {};
358
408
  for (const stream of Object.keys(streams)) {
@@ -409,11 +459,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
409
459
  }
410
460
  : streamContext, stats, this);
411
461
  try {
412
- for await (const stateMessage of this.writeEntries(config, streamContext, stdin, streams, converterDependencies, stats, writer, logFiles, async (isResetSync) => await graphQLClient.resetData(streamContext, Array.from(streamContext.getModelsForReset()), isResetSync), async (msg) => {
413
- if (account?.local) {
414
- await this.getFarosClient().updateLocalAccount(accountId, this.farosGraph, this.persistedSourceConfig(redactedConfig, msg), msg.sourceType, msg.sourceMode);
415
- }
416
- }, sourceVersion)) {
462
+ for await (const stateMessage of this.writeEntries(config, streamContext, stdin, streams, converterDependencies, stats, writer, () => accountContext?.logFiles, async (isResetSync) => await graphQLClient.resetData(streamContext, Array.from(streamContext.getModelsForReset()), isResetSync), ensureAccountSync, sourceVersion)) {
417
463
  await graphQLClient.flush();
418
464
  yield stateMessage;
419
465
  }
@@ -431,7 +477,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
431
477
  throw error;
432
478
  }
433
479
  finally {
434
- if (sync?.syncId) {
480
+ if (accountContext?.sync?.syncId) {
435
481
  let errorOrigin;
436
482
  if (this.syncErrors.dst.length) {
437
483
  errorOrigin = 'destination';
@@ -439,7 +485,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
439
485
  else if (this.syncErrors.src.fatal.length) {
440
486
  errorOrigin = 'source';
441
487
  }
442
- await this.getFarosClient().updateAccountSync(accountId, sync.syncId, {
488
+ await this.getFarosClient().updateAccountSync(accountContext.accountId, accountContext.sync.syncId, {
443
489
  endedAt: new Date(),
444
490
  status: this.syncErrors.src.fatal.length || this.syncErrors.dst.length
445
491
  ? 'error'
@@ -485,18 +531,20 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
485
531
  this.logger.warn(`Warning: ${warning.summary}`);
486
532
  }
487
533
  }
488
- if (logFiles) {
489
- const logs = await logFiles.sortedLogs(this.logger);
490
- if (account?.local && sync?.syncId && logs) {
491
- await this.getFarosClient().uploadLogs(accountId, sync.syncId, logs);
534
+ if (accountContext?.logFiles) {
535
+ const logs = await accountContext.logFiles.sortedLogs(this.logger);
536
+ if (accountContext.account?.local &&
537
+ accountContext.sync?.syncId &&
538
+ logs) {
539
+ await this.getFarosClient().uploadLogs(accountContext.accountId, accountContext.sync.syncId, logs);
492
540
  }
493
541
  }
494
- if (heartbeatIntervalId) {
495
- clearInterval(heartbeatIntervalId);
542
+ if (accountContext?.heartbeatIntervalId) {
543
+ clearInterval(accountContext.heartbeatIntervalId);
496
544
  }
497
545
  }
498
546
  }
499
- async *writeEntries(config, ctx, stdin, streams, converterDependencies, stats, writer, logFiles, resetData, updateLocalAccount, sourceVersion) {
547
+ async *writeEntries(config, ctx, stdin, streams, converterDependencies, stats, writer, getLogFiles, resetData, ensureAccountSync, sourceVersion) {
500
548
  const recordsToBeProcessedLast = [];
501
549
  const convertersUsed = new Map();
502
550
  // NOTE: readline.createInterface() will start to consume the input stream once invoked.
@@ -533,8 +581,28 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
533
581
  await this.handleRecordProcessingError(stats, async () => {
534
582
  const msg = (0, faros_airbyte_cdk_1.parseAirbyteMessage)(line);
535
583
  stats.messagesRead++;
584
+ // Resolve the account with the fallback identity only once we hit a
585
+ // message that necessarily comes after the source identity/config
586
+ // messages. LOG and source-log messages can precede them (the runner
587
+ // logs version/config/catalog first), so initializing on those would
588
+ // lock the fallback before the source faros_source_id is seen.
589
+ if (!(0, faros_airbyte_cdk_1.isSourceIdentityMessage)(msg) &&
590
+ !(0, faros_airbyte_cdk_1.isSourceConfigMessage)(msg) &&
591
+ !(0, faros_airbyte_cdk_1.isSourceLogsMessage)(msg) &&
592
+ !(0, faros_airbyte_cdk_1.isAirbyteLog)(msg)) {
593
+ await ensureAccountSync?.();
594
+ }
536
595
  if ((0, faros_airbyte_cdk_1.isStateMessage)(msg)) {
537
- if ((0, faros_airbyte_cdk_1.isSourceStatusMessage)(msg)) {
596
+ if ((0, faros_airbyte_cdk_1.isSourceIdentityMessage)(msg)) {
597
+ // Early account-identity signal (emitted before the pre-read
598
+ // check). Drives account init only — the source config message
599
+ // remains the single runtime-config signal.
600
+ await ensureAccountSync?.(msg.sourceIdentity);
601
+ if (sourceVersion) {
602
+ sourceVersion.version = msg.sourceIdentity.sourceVersion;
603
+ }
604
+ }
605
+ else if ((0, faros_airbyte_cdk_1.isSourceStatusMessage)(msg)) {
538
606
  const status = msg.sourceStatus?.status;
539
607
  if (status === 'SUCCESS') {
540
608
  sourceSucceeded = true;
@@ -593,7 +661,10 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
593
661
  ctx.markAllStreamsForReset();
594
662
  await resetData?.(false);
595
663
  }
596
- await updateLocalAccount?.(msg);
664
+ // Idempotent fallback: the identity message normally initializes
665
+ // the account first, but a source that does not emit one still
666
+ // gets its account resolved here from the config message.
667
+ await ensureAccountSync?.(FarosDestination.identityFromSourceConfig(msg));
597
668
  if (sourceVersion)
598
669
  sourceVersion.version = msg.sourceVersion;
599
670
  ctx.setSourceConfig(msg.redactedConfig);
@@ -606,7 +677,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
606
677
  }
607
678
  else if ((0, faros_airbyte_cdk_1.isSourceLogsMessage)(msg)) {
608
679
  this.logger.debug(`Received ${msg.logs.length} source logs`);
609
- logFiles?.writeSourceLogs(...msg.logs);
680
+ getLogFiles?.()?.writeSourceLogs(...msg.logs);
610
681
  }
611
682
  else {
612
683
  stateMessage = msg;
@@ -697,6 +768,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
697
768
  yield stateMessage;
698
769
  }
699
770
  }
771
+ await ensureAccountSync?.();
700
772
  // Process all the remaining records
701
773
  if (recordsToBeProcessedLast.length > 0) {
702
774
  this.logger.info(`Stdin processing completed, but still have ${recordsToBeProcessedLast.length} records to process`);
@@ -833,6 +905,12 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
833
905
  await processRecord();
834
906
  }
835
907
  catch (e) {
908
+ // Account/sync bootstrap failures must always fail the sync, never be
909
+ // downgraded to a skippable record error regardless of the configured
910
+ // InvalidRecordStrategy.
911
+ if (e instanceof AccountInitializationError) {
912
+ throw e;
913
+ }
836
914
  stats.recordsErrored++;
837
915
  this.logger.error(`Error processing input: ${e.message ?? JSON.stringify(e)}`, e.stack);
838
916
  // Add processing error to sync errors for proper tracking
@@ -1 +1 @@
1
- {"version":3,"file":"destination.js","sourceRoot":"","sources":["../src/destination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"destination.js","sourceRoot":"","sources":["../src/destination.ts"],"names":[],"mappings":"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"}
package/lib/sync.d.ts CHANGED
@@ -35,7 +35,7 @@ declare class FarosSyncClient extends FarosClient {
35
35
  createLocalAccount(accountId: string, graphName: string, redactedConfig: AirbyteConfig, type?: string, mode?: string): Promise<Account | undefined>;
36
36
  updateLocalAccount(accountId: string, graphName: string, redactedConfig: AirbyteConfig, type: string, mode?: string): Promise<Account | undefined>;
37
37
  getAccount(accountId: string): Promise<Account | undefined>;
38
- getOrCreateAccount(accountId: string, graphName: string, redactedConfig: AirbyteConfig): Promise<Account | undefined>;
38
+ getOrCreateAccount(accountId: string, graphName: string, redactedConfig: AirbyteConfig, type?: string, mode?: string): Promise<Account | undefined>;
39
39
  updateAccountSync(accountId: string, syncId: string, props: UpdateAccountSyncProps): Promise<AccountSync | undefined>;
40
40
  getAccountSyncLogFileUrl(accountId: string, syncId: string, hash: string): Promise<string | undefined>;
41
41
  uploadLogs(accountId: string, syncId: string, { content, hash }: LogContent): Promise<void>;
package/lib/sync.js CHANGED
@@ -88,20 +88,25 @@ class FarosSyncClient extends faros_js_client_1.FarosClient {
88
88
  async getAccount(accountId) {
89
89
  return accountResult(await this.attemptRequest(this.request('GET', `/accounts/${accountId}`)));
90
90
  }
91
- async getOrCreateAccount(accountId, graphName, redactedConfig) {
92
- // getOrCreateAccount runs before source records are processed. Keep known
93
- // source-config-owned keys out of this startup fallback write so they don't
94
- // briefly overwrite source-config values and create false changelog events.
95
- const startupAccountParams = (0, lodash_1.omit)(redactedConfig, LOCAL_ACCOUNT_STARTUP_CONFIG_IGNORED_KEYS);
91
+ async getOrCreateAccount(accountId, graphName, redactedConfig, type, mode) {
92
+ // When type is absent this is the startup fallback before source-config
93
+ // records are processed. Keep source-config-owned keys out of that write so
94
+ // they don't briefly overwrite source-config values and create false churn.
95
+ const accountParams = type
96
+ ? redactedConfig
97
+ : (0, lodash_1.omit)(redactedConfig, LOCAL_ACCOUNT_STARTUP_CONFIG_IGNORED_KEYS);
96
98
  const account = await this.getAccount(accountId);
97
99
  if (account) {
98
100
  if (account.local) {
99
101
  this.airbyteLogger?.debug(`Account ${accountId} exists and is local, merging config`);
100
- return this.updateAccountParams(accountId, graphName, startupAccountParams);
102
+ if (type) {
103
+ return this.updateLocalAccount(accountId, graphName, accountParams, type, mode);
104
+ }
105
+ return this.updateAccountParams(accountId, graphName, accountParams);
101
106
  }
102
107
  return account;
103
108
  }
104
- return this.createLocalAccount(accountId, graphName, startupAccountParams);
109
+ return this.createLocalAccount(accountId, graphName, accountParams, type, mode);
105
110
  }
106
111
  async updateAccountSync(accountId, syncId, props) {
107
112
  return syncResult(await this.attemptRequest(this.request('PATCH', `/accounts/${accountId}/syncs/${syncId}`, {
package/lib/sync.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}