@skedulo/integration-sdk 0.9.1 → 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 +14 -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.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/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 +4 -0
- package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
- package/dist/adapters/skedulo.adapter.js +114 -17
- 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/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 +246 -9
- package/dist/services/sync-runner.js.map +1 -1
- package/dist/services/sync.service.d.ts +2 -0
- package/dist/services/sync.service.d.ts.map +1 -1
- package/dist/services/sync.service.js +1 -0
- package/dist/services/sync.service.js.map +1 -1
- package/package.json +1 -1
- 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;
|
|
@@ -194,34 +224,101 @@ class SkeduloAdapter {
|
|
|
194
224
|
};
|
|
195
225
|
}
|
|
196
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) {
|
|
197
247
|
var _a;
|
|
198
248
|
const attribution = this._attribution(ctx);
|
|
199
249
|
ctx.logger.debug(`inbound_write_attribution: object=${flow.targetObject} op=${operation} ` +
|
|
200
250
|
`suppressed=${attribution.suppressChangeEvents} source=${(_a = attribution.source) !== null && _a !== void 0 ? _a : '(suppressed)'}`);
|
|
201
251
|
const params = Object.assign({ objectName: flow.targetObject, operationName: constants_1.OperationName.PULL(flow.id), records,
|
|
202
252
|
keyField, bulkOperation: true }, attribution);
|
|
203
|
-
|
|
253
|
+
return operation === 'insert'
|
|
204
254
|
? await ctx.graphqlService.insert(params)
|
|
205
255
|
: operation === 'update'
|
|
206
256
|
? await ctx.graphqlService.update(params)
|
|
207
257
|
: await ctx.graphqlService.upsert(params);
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
if (uid === null && operation === 'insert') {
|
|
218
|
-
return {
|
|
219
|
-
status: 'precondition',
|
|
220
|
-
error: 'insert returned no UID — IntegrationIdMapping may not be bootstrapped (run /setup then /on-initial-sync)',
|
|
221
|
-
};
|
|
222
|
-
}
|
|
223
|
-
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,
|
|
224
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
|
+
};
|
|
225
322
|
}
|
|
226
323
|
async delete(ctx, flow, ids) {
|
|
227
324
|
for (const id of ids) {
|
|
@@ -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/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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type { ArtifactClient } from '@skedulo/pulse-solution-services';
|
|
2
|
+
import type { DataFlow } from '../interfaces/data-flow-spec.interface';
|
|
3
|
+
import { ACTIONS } from '../actions/utils/action-names';
|
|
4
|
+
/**
|
|
5
|
+
* Deterministic artifact name used as the idempotency key for the
|
|
6
|
+
* webhook / triggered action provisioned for a DataFlow.
|
|
7
|
+
*
|
|
8
|
+
* Format: `sked-int-${integrationType}-${sourceObject}-to-${targetObject}-flow${id}`
|
|
9
|
+
* Throws if the result exceeds 100 chars (we don't truncate, since collisions
|
|
10
|
+
* on the prefix would cause silent cross-flow overwrites).
|
|
11
|
+
*/
|
|
12
|
+
export declare function buildArtifactName(flow: DataFlow, integrationType: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* Convert `intervalMinutes` to a 5-field cron expression.
|
|
15
|
+
* - n <= 1 → `* * * * *` (every minute)
|
|
16
|
+
* - 1 < n < 60 → `*\/n * * * *`
|
|
17
|
+
* - 60 <= n, multiples of 60 → `0 *\/h * * *` (every h hours)
|
|
18
|
+
* - otherwise → fall back to `*\/n * * * *` (cron itself rejects > 59 in min field;
|
|
19
|
+
* callers should pass a divisor of 60 for n >= 60)
|
|
20
|
+
*/
|
|
21
|
+
export declare function intervalMinutesToCron(intervalMinutes: number): string;
|
|
22
|
+
/**
|
|
23
|
+
* GraphQL selection-set fragment for the triggered action's `action.query`.
|
|
24
|
+
* ES executes this against the Skedulo schema and POSTs the result as the
|
|
25
|
+
* function body, so it MUST include every Skedulo field the mapping reads.
|
|
26
|
+
* `UID` is always included since we use it as the record identifier.
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildSkeduloQuery(flow: DataFlow): string;
|
|
29
|
+
export interface BuildScheduledWebhookOpts {
|
|
30
|
+
name: string;
|
|
31
|
+
url: string;
|
|
32
|
+
cron: string;
|
|
33
|
+
/** Value placed on the dispatcher action header so the function knows which action to run. */
|
|
34
|
+
action: typeof ACTIONS.sync.push | typeof ACTIONS.sync.scheduledPull;
|
|
35
|
+
dataFlowId: number;
|
|
36
|
+
}
|
|
37
|
+
export declare function buildScheduledWebhookArtifact(opts: BuildScheduledWebhookOpts): {
|
|
38
|
+
name: string;
|
|
39
|
+
metadata: {
|
|
40
|
+
type: string;
|
|
41
|
+
};
|
|
42
|
+
webhook: {
|
|
43
|
+
type: string;
|
|
44
|
+
url: string;
|
|
45
|
+
cron: string;
|
|
46
|
+
headers: {
|
|
47
|
+
Authorization: string;
|
|
48
|
+
"sked-integration-action": "sync.push" | "sync.scheduled-pull";
|
|
49
|
+
'sked-data-flow-id': string;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
export interface BuildTriggeredActionOpts {
|
|
54
|
+
name: string;
|
|
55
|
+
url: string;
|
|
56
|
+
/** Skedulo schema name to subscribe to (e.g. `"Jobs"`). */
|
|
57
|
+
schemaName: string;
|
|
58
|
+
/** GraphQL selection-set fragment, e.g. `"{ UID Name JobStatus }"`. */
|
|
59
|
+
query: string;
|
|
60
|
+
dataFlowId: number;
|
|
61
|
+
}
|
|
62
|
+
export declare function buildTriggeredActionArtifact(opts: BuildTriggeredActionOpts): {
|
|
63
|
+
name: string;
|
|
64
|
+
metadata: {
|
|
65
|
+
type: string;
|
|
66
|
+
};
|
|
67
|
+
enabled: boolean;
|
|
68
|
+
trigger: {
|
|
69
|
+
type: string;
|
|
70
|
+
schemaName: string;
|
|
71
|
+
filter: string;
|
|
72
|
+
};
|
|
73
|
+
action: {
|
|
74
|
+
type: string;
|
|
75
|
+
url: string;
|
|
76
|
+
headers: {
|
|
77
|
+
Authorization: string;
|
|
78
|
+
"sked-integration-action": "event.on-skedulo";
|
|
79
|
+
'sked-data-flow-id': string;
|
|
80
|
+
};
|
|
81
|
+
query: string;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Idempotent upsert: try `get` then `update`; on any error (including not-found)
|
|
86
|
+
* fall back to `create`. The PSS artifact API is name-keyed, so this collapses
|
|
87
|
+
* "create" and "replace" into a single safe call.
|
|
88
|
+
*/
|
|
89
|
+
export declare function upsertArtifact(client: ArtifactClient, name: string, artifact: unknown): Promise<void>;
|
|
90
|
+
/**
|
|
91
|
+
* Delete by name, swallowing not-found errors so deactivate is idempotent.
|
|
92
|
+
* The PSS client throws `Error("HTTP error! Status: 404. …")`; match on that.
|
|
93
|
+
*/
|
|
94
|
+
export declare function deleteArtifactIfExists(client: ArtifactClient, name: string): Promise<void>;
|
|
95
|
+
//# sourceMappingURL=artifact-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-builder.d.ts","sourceRoot":"","sources":["../../src/services/artifact-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAiB,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAWvE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAajF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAQrE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAUxD;AAMD,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,MAAM,EAAE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;IACrE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,yBAAyB;;;;;;;;;;;;;;;EAe5E;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;;;;EAqB1E;AAID;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhG"}
|