@skedulo/integration-sdk 0.9.0 → 0.10.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.
- package/CHANGELOG.md +24 -0
- package/dist/actions/action-registry.d.ts.map +1 -1
- package/dist/actions/action-registry.js +1 -0
- package/dist/actions/action-registry.js.map +1 -1
- package/dist/actions/data-flow.action.d.ts +62 -0
- package/dist/actions/data-flow.action.d.ts.map +1 -0
- package/dist/actions/data-flow.action.js +217 -0
- package/dist/actions/data-flow.action.js.map +1 -0
- package/dist/actions/event/on-skedulo.action.d.ts.map +1 -1
- package/dist/actions/event/on-skedulo.action.js +12 -1
- package/dist/actions/event/on-skedulo.action.js.map +1 -1
- package/dist/actions/event/types.d.ts +2 -0
- package/dist/actions/event/types.d.ts.map +1 -1
- package/dist/actions/event.action.d.ts +32 -0
- package/dist/actions/event.action.d.ts.map +1 -0
- package/dist/actions/event.action.js +113 -0
- package/dist/actions/event.action.js.map +1 -0
- package/dist/actions/metadata.action.d.ts +44 -0
- package/dist/actions/metadata.action.d.ts.map +1 -0
- package/dist/actions/metadata.action.js +96 -0
- package/dist/actions/metadata.action.js.map +1 -0
- package/dist/actions/scheduled-job.action.d.ts +73 -0
- package/dist/actions/scheduled-job.action.d.ts.map +1 -0
- package/dist/actions/scheduled-job.action.js +355 -0
- package/dist/actions/scheduled-job.action.js.map +1 -0
- package/dist/actions/sync/index.d.ts +1 -0
- package/dist/actions/sync/index.d.ts.map +1 -1
- package/dist/actions/sync/index.js +3 -1
- package/dist/actions/sync/index.js.map +1 -1
- package/dist/actions/sync/retry-failed.action.d.ts +10 -0
- package/dist/actions/sync/retry-failed.action.d.ts.map +1 -0
- package/dist/actions/sync/retry-failed.action.js +61 -0
- package/dist/actions/sync/retry-failed.action.js.map +1 -0
- package/dist/actions/sync/types.d.ts +11 -0
- package/dist/actions/sync/types.d.ts.map +1 -1
- package/dist/actions/sync.action.d.ts +26 -0
- package/dist/actions/sync.action.d.ts.map +1 -0
- package/dist/actions/sync.action.js +81 -0
- package/dist/actions/sync.action.js.map +1 -0
- package/dist/actions/utils/action-names.d.ts +1 -0
- package/dist/actions/utils/action-names.d.ts.map +1 -1
- package/dist/actions/utils/action-names.js +1 -0
- package/dist/actions/utils/action-names.js.map +1 -1
- package/dist/actions/utils/types.d.ts +2 -0
- package/dist/actions/utils/types.d.ts.map +1 -1
- package/dist/adapters/base-adapter-handler.d.ts +2 -0
- package/dist/adapters/base-adapter-handler.d.ts.map +1 -1
- package/dist/adapters/base-adapter-handler.js +4 -1
- package/dist/adapters/base-adapter-handler.js.map +1 -1
- package/dist/adapters/capabilities-defaults.d.ts.map +1 -1
- package/dist/adapters/capabilities-defaults.js +7 -1
- package/dist/adapters/capabilities-defaults.js.map +1 -1
- package/dist/adapters/skedulo-mutation-result.d.ts +18 -0
- package/dist/adapters/skedulo-mutation-result.d.ts.map +1 -0
- package/dist/adapters/skedulo-mutation-result.js +124 -0
- package/dist/adapters/skedulo-mutation-result.js.map +1 -0
- package/dist/adapters/skedulo.adapter.d.ts +5 -0
- package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
- package/dist/adapters/skedulo.adapter.js +139 -35
- package/dist/adapters/skedulo.adapter.js.map +1 -1
- package/dist/clients/failed-record.client.d.ts +37 -0
- package/dist/clients/failed-record.client.d.ts.map +1 -0
- package/dist/clients/failed-record.client.js +48 -0
- package/dist/clients/failed-record.client.js.map +1 -0
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -1
- package/dist/constants.js.map +1 -1
- package/dist/context.d.ts +3 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +5 -0
- package/dist/context.js.map +1 -1
- package/dist/interfaces/adapter.interface.d.ts +13 -0
- package/dist/interfaces/adapter.interface.d.ts.map +1 -1
- package/dist/interfaces/integration-capabilities.interface.d.ts +22 -0
- package/dist/interfaces/integration-capabilities.interface.d.ts.map +1 -1
- package/dist/interfaces/sync-pipeline.interface.d.ts +11 -0
- package/dist/interfaces/sync-pipeline.interface.d.ts.map +1 -1
- package/dist/services/artifact-builder.d.ts +95 -0
- package/dist/services/artifact-builder.d.ts.map +1 -0
- package/dist/services/artifact-builder.js +142 -0
- package/dist/services/artifact-builder.js.map +1 -0
- package/dist/services/external-id-sync.strategy.d.ts.map +1 -1
- package/dist/services/external-id-sync.strategy.js +23 -24
- package/dist/services/external-id-sync.strategy.js.map +1 -1
- package/dist/services/id-mapping-sync.strategy.d.ts.map +1 -1
- package/dist/services/id-mapping-sync.strategy.js +35 -21
- package/dist/services/id-mapping-sync.strategy.js.map +1 -1
- package/dist/services/id-mapping.service.d.ts +2 -0
- package/dist/services/id-mapping.service.d.ts.map +1 -1
- package/dist/services/id-mapping.service.js +57 -2
- package/dist/services/id-mapping.service.js.map +1 -1
- package/dist/services/run-log-builder.d.ts +4 -5
- package/dist/services/run-log-builder.d.ts.map +1 -1
- package/dist/services/run-log-builder.js +4 -5
- package/dist/services/run-log-builder.js.map +1 -1
- package/dist/services/sync-pipeline-errors.d.ts +24 -0
- package/dist/services/sync-pipeline-errors.d.ts.map +1 -0
- package/dist/services/sync-pipeline-errors.js +52 -0
- package/dist/services/sync-pipeline-errors.js.map +1 -0
- package/dist/services/sync-runner.d.ts +15 -0
- package/dist/services/sync-runner.d.ts.map +1 -1
- package/dist/services/sync-runner.js +250 -10
- package/dist/services/sync-runner.js.map +1 -1
- package/dist/services/sync.service.d.ts +4 -1
- package/dist/services/sync.service.d.ts.map +1 -1
- package/dist/services/sync.service.js +3 -2
- package/dist/services/sync.service.js.map +1 -1
- package/package.json +2 -2
- package/yarn.lock +4 -4
- package/.claude/worktrees/agent-a16acadaf5412dffd/jest.config.js +0 -12
- package/.claude/worktrees/agent-a33c3e4636d488e49/jest.config.js +0 -12
- package/.claude/worktrees/agent-a5b1d2ffa4ceef4a6/jest.config.js +0 -12
- package/.claude/worktrees/agent-aa1db4c22eabbde8e/jest.config.js +0 -12
- package/.claude/worktrees/agent-ac197ae8c69d7061c/jest.config.js +0 -12
- package/dist/handlers/metadata.handler.d.ts +0 -17
- package/dist/handlers/metadata.handler.d.ts.map +0 -1
- package/dist/handlers/metadata.handler.js +0 -50
- package/dist/handlers/metadata.handler.js.map +0 -1
- package/dist/utils/normalizeDataFlow.d.ts +0 -3
- package/dist/utils/normalizeDataFlow.d.ts.map +0 -1
- package/dist/utils/normalizeDataFlow.js +0 -37
- package/dist/utils/normalizeDataFlow.js.map +0 -1
- package/dist/utils.d.ts +0 -2
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -10
- package/dist/utils.js.map +0 -1
|
@@ -29,7 +29,13 @@ const constants_1 = require("../constants");
|
|
|
29
29
|
const helpers_1 = require("../utils/helpers");
|
|
30
30
|
const id_mapping_service_1 = require("../services/id-mapping.service");
|
|
31
31
|
const field_mapping_service_1 = require("../services/field-mapping.service");
|
|
32
|
+
const skedulo_mutation_result_1 = require("./skedulo-mutation-result");
|
|
32
33
|
const SKEDULO_PAGE_SIZE = 200;
|
|
34
|
+
// When an unattributable bulk write falls back to one-at-a-time and this many
|
|
35
|
+
// consecutive single writes fail, treat the failure as systemic: stop probing,
|
|
36
|
+
// mark the rest failed with the aggregate reason. Bounds wasted writes on a
|
|
37
|
+
// misconfigured flow; a few bad records among many good ones never trips it.
|
|
38
|
+
const SINGLE_WRITE_CIRCUIT_BREAKER = 10;
|
|
33
39
|
// Skedulo adapter covers both source (fetch from Skedulo for outbound batch sync)
|
|
34
40
|
// and target (upsert/delete into Skedulo for inbound sync) roles.
|
|
35
41
|
// Lookup resolution uses Skedulo EQL to translate ExternalId → UID.
|
|
@@ -89,6 +95,30 @@ class SkeduloAdapter {
|
|
|
89
95
|
}
|
|
90
96
|
});
|
|
91
97
|
}
|
|
98
|
+
// Re-fetch specific Skedulo records by UID (current state, so a fix in Skedulo takes effect).
|
|
99
|
+
// Powers retry for outbound flows; mirrors fetch()'s field selection, chunks the UID filter.
|
|
100
|
+
async fetchByIds(ctx, flow, ids) {
|
|
101
|
+
var _a;
|
|
102
|
+
if (ids.length === 0)
|
|
103
|
+
return [];
|
|
104
|
+
const fields = [...new Set(['UID', 'LastModifiedDate', ...(0, field_mapping_service_1.deriveSourceFields)(flow)])];
|
|
105
|
+
const out = [];
|
|
106
|
+
for (const idChunk of chunk(ids, constants_1.LOOKUP_CHUNK_SIZE)) {
|
|
107
|
+
const list = idChunk.map((id) => `'${(0, helpers_1.escapeEqlString)(id)}'`).join(', ');
|
|
108
|
+
const builder = ctx.newQueryBuilder({
|
|
109
|
+
objectName: flow.sourceObject,
|
|
110
|
+
operationName: constants_1.OperationName.PUSH_FETCH,
|
|
111
|
+
readOnly: true,
|
|
112
|
+
});
|
|
113
|
+
const result = await builder
|
|
114
|
+
.withFields(fields)
|
|
115
|
+
.withFilter(`UID IN [${list}]`)
|
|
116
|
+
.withLimit(idChunk.length)
|
|
117
|
+
.execute();
|
|
118
|
+
out.push(...((_a = result === null || result === void 0 ? void 0 : result.records) !== null && _a !== void 0 ? _a : []));
|
|
119
|
+
}
|
|
120
|
+
return out;
|
|
121
|
+
}
|
|
92
122
|
// ── Target role ─────────────────────────────────────────────────────────────
|
|
93
123
|
async resolveLookups(ctx, flow, pairs) {
|
|
94
124
|
var _a, _b;
|
|
@@ -176,37 +206,119 @@ class SkeduloAdapter {
|
|
|
176
206
|
}
|
|
177
207
|
return outcomes;
|
|
178
208
|
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
209
|
+
// Shared attribution: backfill → suppress + no source; incremental → emit + tag.
|
|
210
|
+
// DRY: used by `_mutate` (upsert/insert/update) AND `delete`/`deleteById` so the
|
|
211
|
+
// echo-break is symmetric across all inbound write shapes.
|
|
212
|
+
// COUPLING (load-bearing): `since === null` means "this run has no cursor" — it tracks
|
|
213
|
+
// `flow.lastRunAt` in scheduled runs (SyncRunner) and is hardcoded null on the direct
|
|
214
|
+
// `SyncService.processBatch` path. This infers "backfill" from cursor state, NOT an explicit
|
|
215
|
+
// isInitial flag. EVENT mode also has since === null, so the BATCH gate is required.
|
|
216
|
+
// If a future change stops threading lastRunAt into the pipeline, suppression silently flips.
|
|
217
|
+
// The regression tests pin this — do not simplify the guard.
|
|
218
|
+
_attribution(ctx) {
|
|
219
|
+
const p = ctx.pipeline;
|
|
220
|
+
const isBackfill = !p || (p.syncMode === constants_1.SyncMode.BATCH && p.since === null);
|
|
221
|
+
return {
|
|
222
|
+
suppressChangeEvents: isBackfill,
|
|
223
|
+
source: isBackfill ? undefined : (0, constants_1.integrationSource)(ctx.integrationType),
|
|
187
224
|
};
|
|
188
|
-
|
|
225
|
+
}
|
|
226
|
+
async _mutate(ctx, flow, records, operation, keyField) {
|
|
227
|
+
let result;
|
|
228
|
+
try {
|
|
229
|
+
result = await this._rawMutate(ctx, flow, records, operation, keyField);
|
|
230
|
+
}
|
|
231
|
+
catch (err) {
|
|
232
|
+
// A thrown bulk write tells us nothing per record — re-issue one at a time.
|
|
233
|
+
// At-least-once caveat: if the server committed an insert and the client threw after
|
|
234
|
+
// (e.g. a dropped connection), the re-issue creates a duplicate. Inherent for a
|
|
235
|
+
// non-idempotent insert with no idempotency key; no worse than the pre-existing
|
|
236
|
+
// behaviour (a failed batch re-created the same records on the next run).
|
|
237
|
+
return this._mutateEachSeparately(ctx, flow, records, operation, keyField, `bulk write threw: ${err instanceof Error ? err.message : String(err)}`);
|
|
238
|
+
}
|
|
239
|
+
const parsed = (0, skedulo_mutation_result_1.parseMutationResult)(result, records.length, operation);
|
|
240
|
+
if (parsed.attributed)
|
|
241
|
+
return parsed.outcomes;
|
|
242
|
+
// Can't tell which record broke — re-issue one at a time so each result is unambiguous.
|
|
243
|
+
return this._mutateEachSeparately(ctx, flow, records, operation, keyField, parsed.reason);
|
|
244
|
+
}
|
|
245
|
+
// Issue one bulk mutation and return the raw PSS result. Throws bubble to the caller.
|
|
246
|
+
async _rawMutate(ctx, flow, records, operation, keyField) {
|
|
247
|
+
var _a;
|
|
248
|
+
const attribution = this._attribution(ctx);
|
|
249
|
+
ctx.logger.debug(`inbound_write_attribution: object=${flow.targetObject} op=${operation} ` +
|
|
250
|
+
`suppressed=${attribution.suppressChangeEvents} source=${(_a = attribution.source) !== null && _a !== void 0 ? _a : '(suppressed)'}`);
|
|
251
|
+
const params = Object.assign({ objectName: flow.targetObject, operationName: constants_1.OperationName.PULL(flow.id), records,
|
|
252
|
+
keyField, bulkOperation: true }, attribution);
|
|
253
|
+
return operation === 'insert'
|
|
189
254
|
? await ctx.graphqlService.insert(params)
|
|
190
255
|
: operation === 'update'
|
|
191
256
|
? await ctx.graphqlService.update(params)
|
|
192
257
|
: await ctx.graphqlService.upsert(params);
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
if (uid === null && operation === 'insert') {
|
|
203
|
-
return {
|
|
204
|
-
status: 'precondition',
|
|
205
|
-
error: 'insert returned no UID — IntegrationIdMapping may not be bootstrapped (run /setup then /on-initial-sync)',
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
return { status: 'ok', result: uid };
|
|
258
|
+
}
|
|
259
|
+
// Fallback for an unattributable bulk failure: write each record on its own so the
|
|
260
|
+
// outcome is unambiguous. A circuit breaker stops probing once failures look systemic.
|
|
261
|
+
async _mutateEachSeparately(ctx, flow, records, operation, keyField, reason) {
|
|
262
|
+
var _a;
|
|
263
|
+
ctx.logger.warn(`skedulo_write_unattributable: object=${flow.targetObject} op=${operation} ` +
|
|
264
|
+
`records=${records.length} reason=${(0, helpers_1.truncate)(reason)} — retrying one at a time`);
|
|
265
|
+
ctx.metrics.counter('sync.write.single_record_fallback', 1, {
|
|
266
|
+
integrationType: ctx.integrationType,
|
|
209
267
|
});
|
|
268
|
+
const outcomes = new Array(records.length);
|
|
269
|
+
let consecutiveTransient = 0;
|
|
270
|
+
let firstFailure = '';
|
|
271
|
+
for (let i = 0; i < records.length; i++) {
|
|
272
|
+
const outcome = await this._mutateSingle(ctx, flow, records[i], operation, keyField);
|
|
273
|
+
outcomes[i] = outcome;
|
|
274
|
+
// The breaker guards against a systemic outage (infra failing every write), NOT ordinary
|
|
275
|
+
// bad-data records — those are per-record failures we WANT to isolate and record, so a run
|
|
276
|
+
// of them must never stop us reaching a valid record behind them (the SOL-1198 guarantee).
|
|
277
|
+
// Only consecutive TRANSIENT failures count toward opening the circuit.
|
|
278
|
+
if (outcome.status !== 'transient') {
|
|
279
|
+
consecutiveTransient = 0;
|
|
280
|
+
continue;
|
|
281
|
+
}
|
|
282
|
+
if (consecutiveTransient === 0)
|
|
283
|
+
firstFailure = (_a = outcome.error) !== null && _a !== void 0 ? _a : outcome.status;
|
|
284
|
+
consecutiveTransient++;
|
|
285
|
+
if (consecutiveTransient >= SINGLE_WRITE_CIRCUIT_BREAKER) {
|
|
286
|
+
// Systemic transient failure — stop hammering. Mark the remainder transient (they share
|
|
287
|
+
// the one cause), so the outage guard holds the cursor rather than advancing past them.
|
|
288
|
+
const aggregate = `systemic write failure suspected after ${consecutiveTransient} consecutive transient failures: ${(0, helpers_1.truncate)(firstFailure)}`;
|
|
289
|
+
for (let j = i + 1; j < records.length; j++) {
|
|
290
|
+
outcomes[j] = { status: 'transient', error: aggregate };
|
|
291
|
+
}
|
|
292
|
+
ctx.logger.warn(`skedulo_write_circuit_open: object=${flow.targetObject} op=${operation} ` +
|
|
293
|
+
`probed=${i + 1} remaining=${records.length - i - 1} reason=${(0, helpers_1.truncate)(firstFailure)}`);
|
|
294
|
+
ctx.metrics.counter('sync.write.circuit_breaker_open', 1, {
|
|
295
|
+
integrationType: ctx.integrationType,
|
|
296
|
+
});
|
|
297
|
+
break;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
return outcomes;
|
|
301
|
+
}
|
|
302
|
+
// Write a single record and resolve it to one definite outcome. Never re-enters the
|
|
303
|
+
// fallback, so an unattributable/thrown single write terminates as a failure.
|
|
304
|
+
async _mutateSingle(ctx, flow, record, operation, keyField) {
|
|
305
|
+
let result;
|
|
306
|
+
try {
|
|
307
|
+
result = await this._rawMutate(ctx, flow, [record], operation, keyField);
|
|
308
|
+
}
|
|
309
|
+
catch (err) {
|
|
310
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
311
|
+
return { status: (0, skedulo_mutation_result_1.classifySkeduloError)(message), error: (0, helpers_1.truncate)(message) };
|
|
312
|
+
}
|
|
313
|
+
const parsed = (0, skedulo_mutation_result_1.parseMutationResult)(result, 1, operation);
|
|
314
|
+
if (parsed.attributed)
|
|
315
|
+
return parsed.outcomes[0];
|
|
316
|
+
// Classify the reason like the thrown path does, so a 5xx/timeout/rate-limit that comes back
|
|
317
|
+
// as an unattributable response is transient (not silently downgraded to permanent).
|
|
318
|
+
return {
|
|
319
|
+
status: (0, skedulo_mutation_result_1.classifySkeduloError)(parsed.reason),
|
|
320
|
+
error: `unattributable single-write response: ${parsed.reason}`,
|
|
321
|
+
};
|
|
210
322
|
}
|
|
211
323
|
async delete(ctx, flow, ids) {
|
|
212
324
|
for (const id of ids) {
|
|
@@ -221,22 +333,14 @@ class SkeduloAdapter {
|
|
|
221
333
|
.execute();
|
|
222
334
|
if (!result.records || result.records.length === 0)
|
|
223
335
|
continue;
|
|
224
|
-
await ctx.graphqlService.delete({
|
|
225
|
-
objectName: flow.targetObject,
|
|
226
|
-
operationName: constants_1.OperationName.PARAGON_DELETE,
|
|
227
|
-
records: [{ UID: result.records[0].UID }],
|
|
228
|
-
});
|
|
336
|
+
await ctx.graphqlService.delete(Object.assign({ objectName: flow.targetObject, operationName: constants_1.OperationName.PARAGON_DELETE, records: [{ UID: result.records[0].UID }] }, this._attribution(ctx)));
|
|
229
337
|
}
|
|
230
338
|
}
|
|
231
339
|
/** Delete by Skedulo UID directly — used by IdMappingSyncStrategy after mapping table lookup. */
|
|
232
340
|
async deleteById(ctx, flow, ids) {
|
|
233
341
|
if (ids.length === 0)
|
|
234
342
|
return;
|
|
235
|
-
await ctx.graphqlService.delete({
|
|
236
|
-
objectName: flow.targetObject,
|
|
237
|
-
operationName: constants_1.OperationName.PARAGON_DELETE,
|
|
238
|
-
records: ids.map((uid) => ({ UID: uid })),
|
|
239
|
-
});
|
|
343
|
+
await ctx.graphqlService.delete(Object.assign({ objectName: flow.targetObject, operationName: constants_1.OperationName.PARAGON_DELETE, records: ids.map((uid) => ({ UID: uid })) }, this._attribution(ctx)));
|
|
240
344
|
}
|
|
241
345
|
// ── IdMapping role ───────────────────────────────────────────────────────────
|
|
242
346
|
getRecordIdField() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skedulo.adapter.js","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skedulo.adapter.js","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { BaseClient } from '@skedulo/pulse-solution-services';
|
|
2
|
+
import type { BaseConfig, ExecutionOptions } from '@skedulo/pulse-solution-services';
|
|
3
|
+
export interface FailedRecordEntry {
|
|
4
|
+
integrationType: string;
|
|
5
|
+
/** Numeric string — the IS DTO rejects a JS number to avoid bigint precision loss. */
|
|
6
|
+
dataFlowId: string;
|
|
7
|
+
/** Run id; links to integration_log.execution_id. */
|
|
8
|
+
executionId: string;
|
|
9
|
+
/** Record id in the source system; retry re-fetches by this. */
|
|
10
|
+
sourceId: string;
|
|
11
|
+
objectType: string;
|
|
12
|
+
stage: string;
|
|
13
|
+
errorClass: 'transient' | 'permanent';
|
|
14
|
+
errorCode?: string;
|
|
15
|
+
errorMessage: string;
|
|
16
|
+
}
|
|
17
|
+
export declare const MAX_FAILED_RECORDS_PER_REQUEST = 1000;
|
|
18
|
+
/**
|
|
19
|
+
* Tenant-authed writer for the failed-record dead-letter table. Mirrors
|
|
20
|
+
* IntegrationLogClient: targets the local IS base when LOCAL_INTEGRATION_SERVICE is
|
|
21
|
+
* set, else the gateway-prefixed `integration/failed-records`.
|
|
22
|
+
*/
|
|
23
|
+
export declare class FailedRecordClient extends BaseClient {
|
|
24
|
+
private readonly _base;
|
|
25
|
+
constructor(config: BaseConfig, executionOptions?: Partial<ExecutionOptions>);
|
|
26
|
+
/** Bulk-upsert failed records (POST body is a bare array). Chunked to the server cap. */
|
|
27
|
+
upsert(entries: FailedRecordEntry[]): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Mark the given source records `resolved` for a flow — the reconcile half of a run: a
|
|
30
|
+
* record that previously failed and now succeeds is closed by source id, since that's all
|
|
31
|
+
* the SDK holds after a run (there is no row id). Keyed by `(tenant, flow, source_id)`,
|
|
32
|
+
* the table's unique key, so each source id maps to exactly one row. Idempotent: a source
|
|
33
|
+
* id with no open row is a no-op.
|
|
34
|
+
*/
|
|
35
|
+
resolve(dataFlowId: string, sourceIds: string[]): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=failed-record.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failed-record.client.d.ts","sourceRoot":"","sources":["../../src/clients/failed-record.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAMrF,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,WAAW,GAAG,WAAW,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAGD,eAAO,MAAM,8BAA8B,OAAO,CAAC;AAEnD;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAMhF,yFAAyF;IACnF,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD;;;;;;OAMG;IACG,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAUtE"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FailedRecordClient = exports.MAX_FAILED_RECORDS_PER_REQUEST = void 0;
|
|
4
|
+
const pulse_solution_services_1 = require("@skedulo/pulse-solution-services");
|
|
5
|
+
const helpers_1 = require("../utils/helpers");
|
|
6
|
+
const local_override_1 = require("./local-override");
|
|
7
|
+
// integration-service caps a single bulk upsert; the SDK chunks beyond it.
|
|
8
|
+
exports.MAX_FAILED_RECORDS_PER_REQUEST = 1000;
|
|
9
|
+
/**
|
|
10
|
+
* Tenant-authed writer for the failed-record dead-letter table. Mirrors
|
|
11
|
+
* IntegrationLogClient: targets the local IS base when LOCAL_INTEGRATION_SERVICE is
|
|
12
|
+
* set, else the gateway-prefixed `integration/failed-records`.
|
|
13
|
+
*/
|
|
14
|
+
class FailedRecordClient extends pulse_solution_services_1.BaseClient {
|
|
15
|
+
constructor(config, executionOptions = {}) {
|
|
16
|
+
super(config, executionOptions);
|
|
17
|
+
const localBase = (0, local_override_1.resolveLocalIntegrationServiceBase)();
|
|
18
|
+
this._base = localBase ? `${localBase}/failed-records` : 'integration/failed-records';
|
|
19
|
+
}
|
|
20
|
+
/** Bulk-upsert failed records (POST body is a bare array). Chunked to the server cap. */
|
|
21
|
+
async upsert(entries) {
|
|
22
|
+
if (entries.length === 0)
|
|
23
|
+
return;
|
|
24
|
+
for (const chunk of (0, helpers_1.chunkArray)(entries, exports.MAX_FAILED_RECORDS_PER_REQUEST)) {
|
|
25
|
+
await this._performRequest({ endpoint: this._base, method: 'POST', body: chunk });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Mark the given source records `resolved` for a flow — the reconcile half of a run: a
|
|
30
|
+
* record that previously failed and now succeeds is closed by source id, since that's all
|
|
31
|
+
* the SDK holds after a run (there is no row id). Keyed by `(tenant, flow, source_id)`,
|
|
32
|
+
* the table's unique key, so each source id maps to exactly one row. Idempotent: a source
|
|
33
|
+
* id with no open row is a no-op.
|
|
34
|
+
*/
|
|
35
|
+
async resolve(dataFlowId, sourceIds) {
|
|
36
|
+
if (sourceIds.length === 0)
|
|
37
|
+
return;
|
|
38
|
+
for (const chunk of (0, helpers_1.chunkArray)(sourceIds, exports.MAX_FAILED_RECORDS_PER_REQUEST)) {
|
|
39
|
+
await this._performRequest({
|
|
40
|
+
endpoint: `${this._base}/status`,
|
|
41
|
+
method: 'POST',
|
|
42
|
+
body: { dataFlowId, sourceIds: chunk, status: 'resolved' },
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.FailedRecordClient = FailedRecordClient;
|
|
48
|
+
//# sourceMappingURL=failed-record.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failed-record.client.js","sourceRoot":"","sources":["../../src/clients/failed-record.client.ts"],"names":[],"mappings":";;;AAAA,8EAA8D;AAE9D,8CAA8C;AAC9C,qDAAsE;AAmBtE,2EAA2E;AAC9D,QAAA,8BAA8B,GAAG,IAAI,CAAC;AAEnD;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,oCAAU;IAGhD,YAAY,MAAkB,EAAE,mBAA8C,EAAE;QAC9E,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,IAAA,mDAAkC,GAAE,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,iBAAiB,CAAC,CAAC,CAAC,4BAA4B,CAAC;IACxF,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,MAAM,CAAC,OAA4B;QACvC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,KAAK,MAAM,KAAK,IAAI,IAAA,oBAAU,EAAC,OAAO,EAAE,sCAA8B,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,CAAC,eAAe,CAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,UAAkB,EAAE,SAAmB;QACnD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACnC,KAAK,MAAM,KAAK,IAAI,IAAA,oBAAU,EAAC,SAAS,EAAE,sCAA8B,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,CAAC,eAAe,CAAO;gBAC/B,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,SAAS;gBAChC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE;aAC3D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAlCD,gDAkCC"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -35,6 +35,12 @@ export declare const DataFlowStatus: {
|
|
|
35
35
|
export type DataFlowStatus = (typeof DataFlowStatus)[keyof typeof DataFlowStatus];
|
|
36
36
|
/** The Skedulo platform's own system name in a flow's source/target. */
|
|
37
37
|
export declare const SKEDULO_SYSTEM = "skedulo";
|
|
38
|
+
/**
|
|
39
|
+
* Change-event source tag for writes originating from an integration's inbound sync.
|
|
40
|
+
* Used to attribute writes (X-Skedulo-Source) and to recognise a flow's own echo in
|
|
41
|
+
* the outbound `on-skedulo` handler. Derive from `ctx.integrationType` on both sides.
|
|
42
|
+
*/
|
|
43
|
+
export declare const integrationSource: (integrationType: string) => string;
|
|
38
44
|
export declare const AdapterRole: {
|
|
39
45
|
readonly SOURCE: "source";
|
|
40
46
|
readonly TARGET: "target";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,eAAO,MAAM,aAAa;;gCAEL,MAAM;;;wBAGd,MAAM;0CACY,MAAM;;2BAErB,MAAM;;;;;;;CAOZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,oFAAoF;AACpF,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAElF,wEAAwE;AACxE,eAAO,MAAM,cAAc,YAAY,CAAC;AAExC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE,eAAO,MAAM,cAAc;IACzB,kFAAkF;;IAElF,sFAAsF;;CAE9E,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,eAAO,MAAM,aAAa;;gCAEL,MAAM;;;wBAGd,MAAM;0CACY,MAAM;;2BAErB,MAAM;;;;;;;CAOZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,oFAAoF;AACpF,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAElF,wEAAwE;AACxE,eAAO,MAAM,cAAc,YAAY,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,iBAAiB,MAAM,KAAG,MAC1B,CAAC;AAEnC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE,eAAO,MAAM,cAAc;IACzB,kFAAkF;;IAElF,sFAAsF;;CAE9E,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LookupStrategy = exports.SyncMode = exports.AdapterRole = exports.SKEDULO_SYSTEM = exports.DataFlowStatus = exports.MAX_MUTATION_BATCH_SIZE = exports.LOOKUP_CHUNK_SIZE = exports.OperationName = exports.Strategy = void 0;
|
|
3
|
+
exports.LookupStrategy = exports.SyncMode = exports.AdapterRole = exports.integrationSource = exports.SKEDULO_SYSTEM = exports.DataFlowStatus = exports.MAX_MUTATION_BATCH_SIZE = exports.LOOKUP_CHUNK_SIZE = exports.OperationName = exports.Strategy = void 0;
|
|
4
4
|
exports.Strategy = {
|
|
5
5
|
PARAGON_WORKFLOW: 'PARAGON_WORKFLOW',
|
|
6
6
|
SCHEDULED_PULL: 'SCHEDULED_PULL',
|
|
@@ -37,6 +37,13 @@ exports.DataFlowStatus = {
|
|
|
37
37
|
};
|
|
38
38
|
/** The Skedulo platform's own system name in a flow's source/target. */
|
|
39
39
|
exports.SKEDULO_SYSTEM = 'skedulo';
|
|
40
|
+
/**
|
|
41
|
+
* Change-event source tag for writes originating from an integration's inbound sync.
|
|
42
|
+
* Used to attribute writes (X-Skedulo-Source) and to recognise a flow's own echo in
|
|
43
|
+
* the outbound `on-skedulo` handler. Derive from `ctx.integrationType` on both sides.
|
|
44
|
+
*/
|
|
45
|
+
const integrationSource = (integrationType) => `integration:${integrationType}`;
|
|
46
|
+
exports.integrationSource = integrationSource;
|
|
40
47
|
exports.AdapterRole = {
|
|
41
48
|
SOURCE: 'source',
|
|
42
49
|
TARGET: 'target',
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG;IACtB,gBAAgB,EAAE,kBAAkB;IACpC,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEE,QAAA,aAAa,GAAG;IAC3B,eAAe,EAAE,gBAAgB;IACjC,YAAY,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE;IAClD,qBAAqB,EAAE,6BAA6B;IACpD,cAAc,EAAE,uBAAuB;IACvC,IAAI,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;IAClC,cAAc,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iBAAiB,UAAU,EAAE;IACrE,UAAU,EAAE,WAAW;IACvB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE;IACxC,eAAe,EAAE,kBAAkB;IACnC,aAAa,EAAE,gBAAgB;IAC/B,cAAc,EAAE,iBAAiB;IACjC,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,iBAAiB;IACjC,mBAAmB,EAAE,qBAAqB;CAClC,CAAC;AAEE,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAErC;;;;;GAKG;AACU,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,oFAAoF;AACvE,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,wEAAwE;AAC3D,QAAA,cAAc,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG;IACtB,gBAAgB,EAAE,kBAAkB;IACpC,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEE,QAAA,aAAa,GAAG;IAC3B,eAAe,EAAE,gBAAgB;IACjC,YAAY,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE;IAClD,qBAAqB,EAAE,6BAA6B;IACpD,cAAc,EAAE,uBAAuB;IACvC,IAAI,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;IAClC,cAAc,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iBAAiB,UAAU,EAAE;IACrE,UAAU,EAAE,WAAW;IACvB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE;IACxC,eAAe,EAAE,kBAAkB;IACnC,aAAa,EAAE,gBAAgB;IAC/B,cAAc,EAAE,iBAAiB;IACjC,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,iBAAiB;IACjC,mBAAmB,EAAE,qBAAqB;CAClC,CAAC;AAEE,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAErC;;;;;GAKG;AACU,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,oFAAoF;AACvE,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,wEAAwE;AAC3D,QAAA,cAAc,GAAG,SAAS,CAAC;AAExC;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,CAAC,eAAuB,EAAU,EAAE,CACnE,eAAe,eAAe,EAAE,CAAC;AADtB,QAAA,iBAAiB,qBACK;AAEtB,QAAA,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;CACR,CAAC;AAGE,QAAA,QAAQ,GAAG;IACtB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAGE,QAAA,cAAc,GAAG;IAC5B,kFAAkF;IAClF,UAAU,EAAE,YAAY;IACxB,sFAAsF;IACtF,SAAS,EAAE,WAAW;CACd,CAAC"}
|
package/dist/context.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { ProxyClient } from './clients/proxy.client';
|
|
|
4
4
|
import { DataFlowClient } from './clients/dataflow.client';
|
|
5
5
|
import { IntegrationConfigClient } from './clients/integration-config.client';
|
|
6
6
|
import { IntegrationLogClient } from './clients/integration-log.client';
|
|
7
|
+
import { FailedRecordClient } from './clients/failed-record.client';
|
|
7
8
|
import { DataFlowService } from './services/dataflow.service';
|
|
8
9
|
import { type Metrics } from './actions/utils/metrics';
|
|
9
10
|
import type { SyncPipelineState } from './interfaces/sync-pipeline.interface';
|
|
@@ -33,6 +34,7 @@ export declare class IntegrationContext extends ExecutionContext {
|
|
|
33
34
|
private _dataFlowClient?;
|
|
34
35
|
private _integrationConfigClient?;
|
|
35
36
|
private _integrationLogClient?;
|
|
37
|
+
private _failedRecordClient?;
|
|
36
38
|
private _dataFlowService?;
|
|
37
39
|
constructor(skedContext: any, integrationType: string, executionOptions?: Partial<ExecutionOptions>, extras?: IntegrationContextExtras);
|
|
38
40
|
static createContext(skedContext: any, integrationType: string, executionOptions?: Partial<ExecutionOptions>, extras?: IntegrationContextExtras): IntegrationContext;
|
|
@@ -44,6 +46,7 @@ export declare class IntegrationContext extends ExecutionContext {
|
|
|
44
46
|
get dataFlowClient(): DataFlowClient;
|
|
45
47
|
get integrationConfigClient(): IntegrationConfigClient;
|
|
46
48
|
get integrationLogClient(): IntegrationLogClient;
|
|
49
|
+
get failedRecordClient(): FailedRecordClient;
|
|
47
50
|
get dataFlowService(): DataFlowService;
|
|
48
51
|
}
|
|
49
52
|
export declare function createIntegrationContext(skedContext: any, integrationType: string, executionOptions?: Partial<ExecutionOptions>, extras?: IntegrationContextExtras): IntegrationContext;
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,gFAAgF;AAChF,MAAM,WAAW,wBAAwB;IACvC,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,wBAAwB,CAAC,CAA0B;IAC3D,OAAO,CAAC,qBAAqB,CAAC,CAAuB;IACrD,OAAO,CAAC,gBAAgB,CAAC,CAAkB;gBAGzC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B;IAavC,MAAM,CAAC,aAAa,CAClB,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B,GACpC,kBAAkB;IAIrB,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,OAAO,KAAK,WAAW,GAKtB;IAED,IAAI,WAAW,IAAI,WAAW,CAM7B;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,uBAAuB,IAAI,uBAAuB,CAKrD;IAED,IAAI,oBAAoB,IAAI,oBAAoB,CAK/C;IAED,IAAI,eAAe,IAAI,eAAe,CAErC;CACF;AAED,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B,GACpC,kBAAkB,CAEpB;AAED,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,kBAAkB,CAMrE"}
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,gFAAgF;AAChF,MAAM,WAAW,wBAAwB;IACvC,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,wBAAwB,CAAC,CAA0B;IAC3D,OAAO,CAAC,qBAAqB,CAAC,CAAuB;IACrD,OAAO,CAAC,mBAAmB,CAAC,CAAqB;IACjD,OAAO,CAAC,gBAAgB,CAAC,CAAkB;gBAGzC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B;IAavC,MAAM,CAAC,aAAa,CAClB,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B,GACpC,kBAAkB;IAIrB,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,OAAO,KAAK,WAAW,GAKtB;IAED,IAAI,WAAW,IAAI,WAAW,CAM7B;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,uBAAuB,IAAI,uBAAuB,CAKrD;IAED,IAAI,oBAAoB,IAAI,oBAAoB,CAK/C;IAED,IAAI,kBAAkB,IAAI,kBAAkB,CAK3C;IAED,IAAI,eAAe,IAAI,eAAe,CAErC;CACF;AAED,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,MAAM,EACvB,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM,EAChD,MAAM,GAAE,wBAA6B,GACpC,kBAAkB,CAEpB;AAED,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,kBAAkB,CAMrE"}
|
package/dist/context.js
CHANGED
|
@@ -9,6 +9,7 @@ const proxy_client_1 = require("./clients/proxy.client");
|
|
|
9
9
|
const dataflow_client_1 = require("./clients/dataflow.client");
|
|
10
10
|
const integration_config_client_1 = require("./clients/integration-config.client");
|
|
11
11
|
const integration_log_client_1 = require("./clients/integration-log.client");
|
|
12
|
+
const failed_record_client_1 = require("./clients/failed-record.client");
|
|
12
13
|
const dataflow_service_1 = require("./services/dataflow.service");
|
|
13
14
|
const metrics_1 = require("./actions/utils/metrics");
|
|
14
15
|
class IntegrationContext extends pulse_solution_services_1.ExecutionContext {
|
|
@@ -57,6 +58,10 @@ class IntegrationContext extends pulse_solution_services_1.ExecutionContext {
|
|
|
57
58
|
var _a;
|
|
58
59
|
return ((_a = this._integrationLogClient) !== null && _a !== void 0 ? _a : (this._integrationLogClient = new integration_log_client_1.IntegrationLogClient(this._baseConfig, this.executionOptions)));
|
|
59
60
|
}
|
|
61
|
+
get failedRecordClient() {
|
|
62
|
+
var _a;
|
|
63
|
+
return ((_a = this._failedRecordClient) !== null && _a !== void 0 ? _a : (this._failedRecordClient = new failed_record_client_1.FailedRecordClient(this._baseConfig, this.executionOptions)));
|
|
64
|
+
}
|
|
60
65
|
get dataFlowService() {
|
|
61
66
|
var _a;
|
|
62
67
|
return ((_a = this._dataFlowService) !== null && _a !== void 0 ? _a : (this._dataFlowService = new dataflow_service_1.DataFlowService(this.dataFlowClient)));
|
package/dist/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -144,6 +144,19 @@ export interface Adapter<TRecord = Record<string, unknown>> {
|
|
|
144
144
|
* SyncService applies spec.filter locally as a safety net after normalization.
|
|
145
145
|
*/
|
|
146
146
|
fetch?(ctx: IntegrationContext, flow: DataFlow, since: Date | null, filter: FilterSpec | null): AsyncIterable<TRecord[]>;
|
|
147
|
+
/**
|
|
148
|
+
* Fetch specific source records by their source-system id, for retrying failed
|
|
149
|
+
* records. Returns the current state of each — a record fixed at source replays
|
|
150
|
+
* its corrected data, not a stale snapshot. Missing ids (deleted at source) are
|
|
151
|
+
* simply absent from the result.
|
|
152
|
+
*
|
|
153
|
+
* Optional: implementing it advertises `capabilities.errorHandling.retryable`
|
|
154
|
+
* (derived in `resolveCapabilities`), which gates the UI's Retry action for INBOUND
|
|
155
|
+
* flows (this vendor is the source). Adapters that can't re-fetch by id leave their
|
|
156
|
+
* inbound failed records view-only. Outbound flows source from Skedulo, whose adapter
|
|
157
|
+
* always implements this, so they stay retryable regardless.
|
|
158
|
+
*/
|
|
159
|
+
fetchByIds?(ctx: IntegrationContext, flow: DataFlow, ids: string[]): Promise<TRecord[]>;
|
|
147
160
|
/**
|
|
148
161
|
* Parse a vendor's inbound change-event webhook envelope into a `MappedEvent`.
|
|
149
162
|
* Called by `BaseAdapterHandler.onChangeEvent` — implement when your function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/adapter.interface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/adapter.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,5 +35,27 @@ export interface IntegrationCapabilities {
|
|
|
35
35
|
outbound?: boolean;
|
|
36
36
|
inbound?: boolean;
|
|
37
37
|
};
|
|
38
|
+
/**
|
|
39
|
+
* Managed error-handling (per-record failure recording + retry).
|
|
40
|
+
*
|
|
41
|
+
* Its presence in a capabilities response tells the UI this integration's SDK
|
|
42
|
+
* records failed records, so the failed-records view can be surfaced.
|
|
43
|
+
*
|
|
44
|
+
* `retryable` describes the EXTERNAL (vendor) adapter and therefore gates retry
|
|
45
|
+
* for INBOUND flows only (vendor → Skedulo, where the vendor is the source). It's
|
|
46
|
+
* DERIVED (in `resolveCapabilities`) from whether that adapter implements
|
|
47
|
+
* `fetchByIds`, so adding re-fetch to an adapter turns inbound retry on with
|
|
48
|
+
* nothing to keep in sync.
|
|
49
|
+
*
|
|
50
|
+
* OUTBOUND flows (Skedulo → vendor) source from Skedulo, whose adapter always
|
|
51
|
+
* implements `fetchByIds`, so they are ALWAYS retryable regardless of this flag —
|
|
52
|
+
* the UI should show Retry on outbound flows unconditionally and consult this flag
|
|
53
|
+
* only for inbound ones. (The `sync.retry-failed` action is the authoritative gate:
|
|
54
|
+
* it resolves the flow's source adapter per call, so a wrong UI hint only shows a
|
|
55
|
+
* button that returns not_implemented, never silent data loss.)
|
|
56
|
+
*/
|
|
57
|
+
errorHandling?: {
|
|
58
|
+
retryable: boolean;
|
|
59
|
+
};
|
|
38
60
|
}
|
|
39
61
|
//# sourceMappingURL=integration-capabilities.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integration-capabilities.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/integration-capabilities.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH"}
|
|
1
|
+
{"version":3,"file":"integration-capabilities.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/integration-capabilities.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IACF;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;CACH"}
|
|
@@ -23,6 +23,17 @@ export interface SyncPipelineError {
|
|
|
23
23
|
message: string;
|
|
24
24
|
/** Present for record-level failures — index into ctx.pipeline.data. */
|
|
25
25
|
recordIndex?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Source-system id of the failed record, when known directly (e.g. a mapping
|
|
28
|
+
* write-back failure knows the source id but has no raw record). SyncRunner prefers
|
|
29
|
+
* this over deriving from `data` when building a failed-record row.
|
|
30
|
+
*/
|
|
31
|
+
sourceId?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Failure class from the adapter's own outcome (HTTP status → transient/permanent), when known.
|
|
34
|
+
* Preferred over re-deriving from the message text, and gates the cursor's outage hold.
|
|
35
|
+
*/
|
|
36
|
+
errorClass?: 'transient' | 'permanent';
|
|
26
37
|
/**
|
|
27
38
|
* Raw source record at the time of failure.
|
|
28
39
|
* Included so the data that caused the error can be inspected or replayed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-pipeline.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/sync-pipeline.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzE,eAAO,MAAM,SAAS;;;;;;CAMZ,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,KAAK,EAAE,SAAS,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAEnC,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IAE5B;;;;;OAKG;IACH,IAAI,EAAE,cAAc,EAAE,CAAC;IAEvB;;;OAGG;IACH,QAAQ,EAAE,aAAa,EAAE,CAAC;IAE1B;;;OAGG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB;;;;OAIG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAE5B;;;;OAIG;IACH,aAAa,EAAE,SAAS,GAAG,IAAI,CAAC;IAEhC;;;;;;;;;OASG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B"}
|
|
1
|
+
{"version":3,"file":"sync-pipeline.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/sync-pipeline.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzE,eAAO,MAAM,SAAS;;;;;;CAMZ,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,KAAK,EAAE,SAAS,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IACvC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAEnC,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IAE5B;;;;;OAKG;IACH,IAAI,EAAE,cAAc,EAAE,CAAC;IAEvB;;;OAGG;IACH,QAAQ,EAAE,aAAa,EAAE,CAAC;IAE1B;;;OAGG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB;;;;OAIG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAE5B;;;;OAIG;IACH,aAAa,EAAE,SAAS,GAAG,IAAI,CAAC;IAEhC;;;;;;;;;OASG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B"}
|