tapimo 0.10.2 → 0.11.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/dist/App.d.ts +3412 -1968
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js.map +1 -1
- package/dist/Webhooks.d.ts +0 -75
- package/dist/Webhooks.d.ts.map +1 -1
- package/dist/Webhooks.js +1 -143
- package/dist/Webhooks.js.map +1 -1
- package/dist/admin/App.d.ts +74 -74
- package/dist/admin/apps/api-keys.d.ts +4 -4
- package/dist/admin/apps/earn-vaults.d.ts +1 -1
- package/dist/admin/apps/organizations.d.ts +3 -3
- package/dist/admin/apps/verified-tokens.d.ts +74 -74
- package/dist/apps/data/App.d.ts +3618 -2954
- package/dist/apps/data/App.d.ts.map +1 -1
- package/dist/apps/data/App.js +5 -2
- package/dist/apps/data/App.js.map +1 -1
- package/dist/apps/data/routes/activities.d.ts +1 -1
- package/dist/apps/data/routes/activities.d.ts.map +1 -1
- package/dist/apps/data/routes/activities.js +55 -27
- package/dist/apps/data/routes/activities.js.map +1 -1
- package/dist/apps/data/routes/addresses.d.ts +343 -343
- package/dist/apps/data/routes/balances.d.ts +11 -11
- package/dist/apps/data/routes/blocks.d.ts +5 -5
- package/dist/apps/data/routes/coingecko.d.ts +176 -176
- package/dist/apps/data/routes/earn.d.ts +4 -4
- package/dist/apps/data/routes/exchanges.d.ts +4 -4
- package/dist/apps/data/routes/fee-amm.d.ts +26 -26
- package/dist/apps/data/routes/indexer.d.ts +34 -34
- package/dist/apps/data/routes/receipts.d.ts +236 -236
- package/dist/apps/data/routes/tokenlist.d.ts +12 -12
- package/dist/apps/data/routes/tokens.d.ts +3 -3
- package/dist/apps/data/routes/transactions.d.ts +1 -1
- package/dist/apps/data/routes/transfers.d.ts +13 -13
- package/dist/apps/data/routes/valuation.d.ts +21 -21
- package/dist/apps/data/routes/verified-tokens.d.ts +5 -5
- package/dist/apps/data/routes/webhooks.d.ts +1011 -151
- package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/data/routes/webhooks.js +124 -737
- package/dist/apps/data/routes/webhooks.js.map +1 -1
- package/dist/apps/data/routes/zones.d.ts +31 -31
- package/dist/apps/funding/routes/deposit-addresses.d.ts +2 -2
- package/dist/apps/funding/routes/providers.d.ts +13 -13
- package/dist/apps/funding/routes/transfers.d.ts +33 -33
- package/dist/apps/management/App.d.ts +793 -16
- package/dist/apps/management/App.d.ts.map +1 -1
- package/dist/apps/management/routes/api-keys.d.ts +50 -50
- package/dist/apps/management/routes/faucet.d.ts +31 -31
- package/dist/apps/management/routes/invite-links.d.ts +42 -42
- package/dist/apps/management/routes/members.d.ts +79 -79
- package/dist/apps/management/routes/projects.d.ts +40 -40
- package/dist/apps/management/routes/usage.d.ts +80 -80
- package/dist/apps/management/routes/webhooks.d.ts +1031 -59
- package/dist/apps/management/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/management/routes/webhooks.js +27 -4
- package/dist/apps/management/routes/webhooks.js.map +1 -1
- package/dist/db/Db.d.ts.map +1 -1
- package/dist/db/Db.js +21 -0
- package/dist/db/Db.js.map +1 -1
- package/dist/db/Schema.d.ts +7 -1
- package/dist/db/Schema.d.ts.map +1 -1
- package/dist/db/Schema.js +9 -0
- package/dist/db/Schema.js.map +1 -1
- package/dist/db/tables/webhookQueueEvents.d.ts +3 -1
- package/dist/db/tables/webhookQueueEvents.d.ts.map +1 -1
- package/dist/db/tables/webhookQueueEvents.js +4 -0
- package/dist/db/tables/webhookQueueEvents.js.map +1 -1
- package/dist/db/tables/webhookSubscriptions.d.ts +33 -69
- package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -1
- package/dist/db/tables/webhookSubscriptions.js +63 -100
- package/dist/db/tables/webhookSubscriptions.js.map +1 -1
- package/dist/internal/MetricSink.d.ts +35 -125
- package/dist/internal/MetricSink.d.ts.map +1 -1
- package/dist/internal/MetricSink.js +50 -121
- package/dist/internal/MetricSink.js.map +1 -1
- package/dist/internal/Schema.d.ts +3 -1
- package/dist/internal/Schema.d.ts.map +1 -1
- package/dist/internal/Schema.js +4 -2
- package/dist/internal/Schema.js.map +1 -1
- package/dist/internal/WebhookTransfer.d.ts +1 -55
- package/dist/internal/WebhookTransfer.d.ts.map +1 -1
- package/dist/internal/WebhookTransfer.js +1 -239
- package/dist/internal/WebhookTransfer.js.map +1 -1
- package/dist/internal/Webhooks.d.ts +83 -44
- package/dist/internal/Webhooks.d.ts.map +1 -1
- package/dist/internal/Webhooks.js +87 -73
- package/dist/internal/Webhooks.js.map +1 -1
- package/dist/internal/funding/DepositWebhook.d.ts +25 -0
- package/dist/internal/funding/DepositWebhook.d.ts.map +1 -0
- package/dist/internal/funding/DepositWebhook.js +74 -0
- package/dist/internal/funding/DepositWebhook.js.map +1 -0
- package/dist/internal/funding/Reconciliation.d.ts +6 -0
- package/dist/internal/funding/Reconciliation.d.ts.map +1 -1
- package/dist/internal/funding/Reconciliation.js +42 -10
- package/dist/internal/funding/Reconciliation.js.map +1 -1
- package/dist/internal/funding/index.d.ts +1 -0
- package/dist/internal/funding/index.d.ts.map +1 -1
- package/dist/internal/funding/index.js +1 -0
- package/dist/internal/funding/index.js.map +1 -1
- package/dist/internal/webhookDestinations/slack.d.ts.map +1 -1
- package/dist/internal/webhookDestinations/slack.js +16 -0
- package/dist/internal/webhookDestinations/slack.js.map +1 -1
- package/package.json +1 -1
- package/src/App.ts +3 -0
- package/src/Client.test-d.ts +22 -1
- package/src/Webhooks.ts +1 -220
- package/src/apps/data/App.ts +8 -2
- package/src/apps/data/routes/activities.test.ts +107 -11
- package/src/apps/data/routes/activities.ts +64 -32
- package/src/apps/data/routes/webhooks.test.ts +179 -1497
- package/src/apps/data/routes/webhooks.ts +150 -974
- package/src/apps/management/routes/webhooks.test.ts +79 -1
- package/src/apps/management/routes/webhooks.ts +40 -4
- package/src/db/Db.test.ts +1 -5
- package/src/db/Db.ts +23 -0
- package/src/db/Schema.ts +13 -0
- package/src/db/tables/organizations.test.ts +5 -2
- package/src/db/tables/webhookQueueEvents.ts +7 -1
- package/src/db/tables/webhookSubscriptions.ts +89 -138
- package/src/internal/MetricSink.test.ts +41 -373
- package/src/internal/MetricSink.ts +92 -273
- package/src/internal/Schema.test.ts +18 -0
- package/src/internal/Schema.ts +13 -2
- package/src/internal/WebhookTransfer.ts +1 -351
- package/src/internal/Webhooks.test.ts +102 -139
- package/src/internal/Webhooks.ts +175 -106
- package/src/internal/funding/DepositWebhook.test.ts +131 -0
- package/src/internal/funding/DepositWebhook.ts +101 -0
- package/src/internal/funding/Reconciliation.test.ts +14 -0
- package/src/internal/funding/Reconciliation.ts +161 -86
- package/src/internal/funding/index.test.ts +1 -0
- package/src/internal/funding/index.ts +1 -0
- package/src/internal/webhookDestinations/slack.ts +15 -0
- package/src/Webhooks.bench.ts +0 -714
- package/src/Webhooks.memory.bench.ts +0 -250
- package/src/Webhooks.test.ts +0 -146
|
@@ -20,18 +20,20 @@ export async function createSubscription(db, input, options = {}) {
|
|
|
20
20
|
const now = (options.now ?? (() => new Date()))();
|
|
21
21
|
const iso = now.toISOString();
|
|
22
22
|
// A one-field checkpoint records the live creation head without claiming it
|
|
23
|
-
// was scanned
|
|
23
|
+
// was scanned; it anchors the fanout boundary for the new subscription.
|
|
24
24
|
const pollerCursor = options.startBlockNumber === undefined ? undefined : Cursor.encode([options.startBlockNumber]);
|
|
25
25
|
const subscription = {
|
|
26
26
|
chainId: input.chainId,
|
|
27
27
|
...(input.context === undefined ? {} : { context: input.context }),
|
|
28
28
|
createdAt: iso,
|
|
29
29
|
destination: input.destination,
|
|
30
|
+
...(input.environment === undefined ? {} : { environment: input.environment }),
|
|
30
31
|
eventType: input.eventType,
|
|
31
32
|
failureCount: 0,
|
|
32
33
|
filters: input.filters ?? {},
|
|
33
34
|
id: generateId(now),
|
|
34
35
|
owner: input.owner,
|
|
36
|
+
...(input.projectId === undefined ? {} : { projectId: input.projectId }),
|
|
35
37
|
secret: generateSecret(),
|
|
36
38
|
status: 'active',
|
|
37
39
|
updatedAt: iso,
|
|
@@ -53,8 +55,8 @@ export async function createSubscription(db, input, options = {}) {
|
|
|
53
55
|
return subscription;
|
|
54
56
|
}
|
|
55
57
|
/** Reads a single subscription scoped to its owner. Returns null when absent. */
|
|
56
|
-
export async function getSubscription(db, owner, id) {
|
|
57
|
-
return WebhookSubscriptions.get(db, owner, id, new Date().toISOString());
|
|
58
|
+
export async function getSubscription(db, owner, id, options = {}) {
|
|
59
|
+
return WebhookSubscriptions.get(db, owner, id, new Date().toISOString(), options.access);
|
|
58
60
|
}
|
|
59
61
|
/**
|
|
60
62
|
* Lists an owner's subscriptions, newest first, with optional keyset paging.
|
|
@@ -68,16 +70,16 @@ export async function listSubscriptions(db, owner, options = {}) {
|
|
|
68
70
|
* since the per-owner set is bounded by `maxPerOwner`. Feeds the opt-in
|
|
69
71
|
* `meta.totalCount` on `GET /webhooks`.
|
|
70
72
|
*/
|
|
71
|
-
export async function countSubscriptions(db, owner) {
|
|
72
|
-
return WebhookSubscriptions.count(db, owner, new Date().toISOString());
|
|
73
|
+
export async function countSubscriptions(db, owner, options = {}) {
|
|
74
|
+
return WebhookSubscriptions.count(db, owner, new Date().toISOString(), options.access);
|
|
73
75
|
}
|
|
74
76
|
/**
|
|
75
77
|
* Patches an owner's subscription, re-validating the URL when changed.
|
|
76
|
-
* Returns null when absent. The status column drives the
|
|
78
|
+
* Returns null when absent. The status column drives the partial active
|
|
77
79
|
* index, so no secondary-index maintenance is needed.
|
|
78
80
|
*/
|
|
79
81
|
export async function updateSubscription(db, owner, id, patch, options = {}) {
|
|
80
|
-
const current = await getSubscription(db, owner, id);
|
|
82
|
+
const current = await getSubscription(db, owner, id, options.access === undefined ? {} : { access: options.access });
|
|
81
83
|
if (!current)
|
|
82
84
|
return null;
|
|
83
85
|
if (current.destination.type !== 'url' && patch.destination?.type === 'url')
|
|
@@ -96,26 +98,10 @@ export async function updateSubscription(db, owner, id, patch, options = {}) {
|
|
|
96
98
|
return next ?? null;
|
|
97
99
|
}
|
|
98
100
|
/** Deletes an owner's subscription; its delivery rows cascade via the FK. */
|
|
99
|
-
export async function deleteSubscription(db, owner, id) {
|
|
100
|
-
return WebhookSubscriptions.remove(db, owner, id, new Date().toISOString());
|
|
101
|
+
export async function deleteSubscription(db, owner, id, options = {}) {
|
|
102
|
+
return WebhookSubscriptions.remove(db, owner, id, new Date().toISOString(), options.access);
|
|
101
103
|
}
|
|
102
|
-
/**
|
|
103
|
-
* Lists active subscriptions for a `(chainId, eventType)` stream. Used by the
|
|
104
|
-
* poller; one indexed query (the partial status index replaces the old
|
|
105
|
-
* secondary key space).
|
|
106
|
-
*/
|
|
107
|
-
export async function listActive(db, chainId, eventType) {
|
|
108
|
-
const pairs = await listActiveWithCursors(db, chainId, eventType);
|
|
109
|
-
return pairs.map((pair) => pair.subscription);
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Lists a stream's live active subscriptions paired with their poller cursors,
|
|
113
|
-
* from one query. The poller's per-tick lookup.
|
|
114
|
-
*/
|
|
115
|
-
export async function listActiveWithCursors(db, chainId, eventType) {
|
|
116
|
-
return WebhookSubscriptions.listActive(db, chainId, eventType, new Date().toISOString());
|
|
117
|
-
}
|
|
118
|
-
/** Reads every live active subscription on a chain in one poller query. */
|
|
104
|
+
/** Reads every live active subscription on a chain in one query. */
|
|
119
105
|
export async function listActiveForChain(db, options) {
|
|
120
106
|
return WebhookSubscriptions.listActiveForChain(db, {
|
|
121
107
|
chainId: options.chainId,
|
|
@@ -123,21 +109,6 @@ export async function listActiveForChain(db, options) {
|
|
|
123
109
|
now: new Date().toISOString(),
|
|
124
110
|
});
|
|
125
111
|
}
|
|
126
|
-
/**
|
|
127
|
-
* Reads the freshest cursor block across a chain's active subscriptions, or
|
|
128
|
-
* null when none carry a cursor. Creation checkpoints count at their recorded
|
|
129
|
-
* head, so a brand-new subscription reads as fresh.
|
|
130
|
-
*/
|
|
131
|
-
export async function maxCursorBlock(db, chainId) {
|
|
132
|
-
const cursors = await WebhookSubscriptions.listActiveCursors(db, chainId, new Date().toISOString());
|
|
133
|
-
let max = null;
|
|
134
|
-
for (const cursor of cursors) {
|
|
135
|
-
const block = cursorBlock(cursor);
|
|
136
|
-
if (block !== undefined && (max === null || block > max))
|
|
137
|
-
max = block;
|
|
138
|
-
}
|
|
139
|
-
return max;
|
|
140
|
-
}
|
|
141
112
|
/** Decodes the block component of a subscription cursor, if any. */
|
|
142
113
|
export function cursorBlock(cursor) {
|
|
143
114
|
if (cursor === null)
|
|
@@ -150,22 +121,10 @@ export function cursorBlock(cursor) {
|
|
|
150
121
|
export async function getCursor(db, subscriptionId) {
|
|
151
122
|
return WebhookSubscriptions.getCursor(db, subscriptionId);
|
|
152
123
|
}
|
|
153
|
-
/** Writes a cursor only when its stored value matches the expected cursor. */
|
|
154
|
-
export async function compareAndSetCursor(db, options) {
|
|
155
|
-
return WebhookSubscriptions.compareAndSetCursor(db, options);
|
|
156
|
-
}
|
|
157
|
-
/** Writes cursors whose stored values match their expected cursors. */
|
|
158
|
-
export async function compareAndSetCursors(db, options) {
|
|
159
|
-
return WebhookSubscriptions.compareAndSetCursors(db, options);
|
|
160
|
-
}
|
|
161
|
-
/** Writes a subscription's keyset cursor. */
|
|
162
|
-
export async function setCursor(db, subscriptionId, cursor) {
|
|
163
|
-
await WebhookSubscriptions.setCursor(db, subscriptionId, cursor);
|
|
164
|
-
}
|
|
165
124
|
/**
|
|
166
125
|
* Deletes expired MPP-owned subscriptions (delivery rows cascade) and
|
|
167
|
-
* deliveries past retention. Reads already filter expiry at query time
|
|
168
|
-
* is the janitor reclaiming space,
|
|
126
|
+
* deliveries past retention. Reads already filter expiry at query time; this
|
|
127
|
+
* is the janitor reclaiming space, run best-effort on a schedule.
|
|
169
128
|
*/
|
|
170
129
|
export async function pruneExpired(db, options = {}) {
|
|
171
130
|
const iso = (options.now ?? (() => new Date()))().toISOString();
|
|
@@ -195,6 +154,9 @@ export function retryDelayMs(attemptCount) {
|
|
|
195
154
|
export async function ensureQueueEvents(db, dispatchables, options = {}) {
|
|
196
155
|
const now = (options.now ?? (() => new Date()))();
|
|
197
156
|
const expiresAt = new Date(now.getTime() + (options.ttl ?? deliveryRetentionMs)).toISOString();
|
|
157
|
+
// Carried so the delivery worker can measure observation-to-attempt without
|
|
158
|
+
// re-reading the block; replays have no observation and stay null.
|
|
159
|
+
const observedAt = options.observedAt === undefined ? null : new Date(options.observedAt).toISOString();
|
|
198
160
|
const events = dispatchables.map(({ envelope, subscription }) => ({
|
|
199
161
|
createdAt: now.toISOString(),
|
|
200
162
|
envelope,
|
|
@@ -204,6 +166,7 @@ export async function ensureQueueEvents(db, dispatchables, options = {}) {
|
|
|
204
166
|
expiresAt,
|
|
205
167
|
// Due immediately; the value orders the sweep so it is never null here.
|
|
206
168
|
nextAttemptAt: now.toISOString(),
|
|
169
|
+
observedAt,
|
|
207
170
|
subscriptionId: subscription.id,
|
|
208
171
|
}));
|
|
209
172
|
return {
|
|
@@ -279,10 +242,13 @@ export async function deliverClaimedAndRecord(db, claimed, options = {}) {
|
|
|
279
242
|
const subscription = await WebhookSubscriptions.getById(db, claimed.subscriptionId, new Date().toISOString());
|
|
280
243
|
if (!subscription || subscription.status !== 'active')
|
|
281
244
|
return { status: 'skipped' };
|
|
245
|
+
// A staged row predating the observation column, or a replay, reads null.
|
|
246
|
+
const observedAt = claimed.observedAt ? Date.parse(claimed.observedAt) : Number.NaN;
|
|
282
247
|
return {
|
|
283
248
|
result: await deliverAndRecord(db, subscription, claimed.envelope, {
|
|
284
249
|
...options,
|
|
285
250
|
dequeuedAt,
|
|
251
|
+
...(Number.isNaN(observedAt) ? {} : { observedAt }),
|
|
286
252
|
subscriptionReadMs: Date.now() - subscriptionReadStartedAt,
|
|
287
253
|
}),
|
|
288
254
|
status: 'delivered',
|
|
@@ -292,7 +258,7 @@ export async function deliverClaimedAndRecord(db, claimed, options = {}) {
|
|
|
292
258
|
export async function recordDelivery(db, delivery, options = {}) {
|
|
293
259
|
const ttl = options.ttl ?? deliveryRetentionMs;
|
|
294
260
|
// The retention deadline replaces the old store TTL: reads filter on it at
|
|
295
|
-
// query time and
|
|
261
|
+
// query time and pruning reclaims past it. Anchored to write time (not the
|
|
296
262
|
// row's `createdAt`, which tests pin) — exactly like the old `put` TTL.
|
|
297
263
|
const expiresAt = new Date(Date.now() + ttl).toISOString();
|
|
298
264
|
await WebhookDeliveries.insert(db, delivery, expiresAt);
|
|
@@ -318,7 +284,7 @@ export async function getDelivery(db, subscriptionId, deliveryId) {
|
|
|
318
284
|
}
|
|
319
285
|
/**
|
|
320
286
|
* Default number of consecutive delivery failures after which a subscription
|
|
321
|
-
* auto-disables (and is dropped from the
|
|
287
|
+
* auto-disables (and is dropped from the partial active index).
|
|
322
288
|
*/
|
|
323
289
|
export const maxFailures = 10;
|
|
324
290
|
/**
|
|
@@ -337,7 +303,7 @@ export async function recordSuccess(db, subscription, options = {}) {
|
|
|
337
303
|
/**
|
|
338
304
|
* Records a failed delivery: atomically increments the consecutive-failure
|
|
339
305
|
* counter and, once it reaches `maxFailures`, sets `status: 'disabled'` so the
|
|
340
|
-
* subscription drops out of the
|
|
306
|
+
* subscription drops out of the partial active index (surfaced via the API).
|
|
341
307
|
* Returns the updated subscription.
|
|
342
308
|
*/
|
|
343
309
|
export async function recordFailure(db, subscription, options = {}) {
|
|
@@ -382,21 +348,31 @@ export async function deliverAndRecord(db, subscription, envelope, options = {})
|
|
|
382
348
|
return { error: 'delivery failed before request', ok: false };
|
|
383
349
|
}
|
|
384
350
|
})();
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
await recordFailure(db, subscription, options);
|
|
390
|
-
const stateWriteMs = Date.now() - stateWriteStartedAt;
|
|
351
|
+
// Overlapped: the two writes touch different rows and the log carries the
|
|
352
|
+
// immutable pre-attempt subscription, so it never reads the state write's
|
|
353
|
+
// result. Sequentially they cost two Postgres round trips per delivery.
|
|
354
|
+
const writeStartedAt = Date.now();
|
|
391
355
|
// Append a delivery-log row. Best-effort: a logging failure must never change
|
|
392
356
|
// the delivery outcome the caller (Queue consumer / inline path) acts on.
|
|
393
|
-
const
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
357
|
+
const deliveryLog = (async () => {
|
|
358
|
+
try {
|
|
359
|
+
await recordDelivery(db, buildDelivery({ attempt, envelope, result, subscription }, options), options.deliveryRetentionMs === undefined ? {} : { ttl: options.deliveryRetentionMs });
|
|
360
|
+
}
|
|
361
|
+
catch {
|
|
362
|
+
// delivery logging is best-effort
|
|
363
|
+
}
|
|
364
|
+
return Date.now() - writeStartedAt;
|
|
365
|
+
})();
|
|
366
|
+
const stateWrite = (async () => {
|
|
367
|
+
if (result.ok)
|
|
368
|
+
await recordSuccess(db, subscription, options);
|
|
369
|
+
else
|
|
370
|
+
await recordFailure(db, subscription, options);
|
|
371
|
+
return Date.now() - writeStartedAt;
|
|
372
|
+
})();
|
|
373
|
+
// A state-write rejection still propagates to the caller's retry path; the
|
|
374
|
+
// log promise never rejects, so it cannot mask it or go unhandled.
|
|
375
|
+
const [stateWriteMs, deliveryLogMs] = await Promise.all([stateWrite, deliveryLog]);
|
|
400
376
|
const completedAt = Date.now();
|
|
401
377
|
// Emit after all delivery work so the timings cover every stage. The
|
|
402
378
|
// subscription is immutable, preserving the pre-attempt failure count.
|
|
@@ -412,16 +388,29 @@ export async function deliverAndRecord(db, subscription, envelope, options = {})
|
|
|
412
388
|
subscription,
|
|
413
389
|
attempt,
|
|
414
390
|
timings: {
|
|
415
|
-
deliveryLogMs
|
|
391
|
+
deliveryLogMs,
|
|
416
392
|
envelopeToQueueMs: options.queuedAt === undefined || Number.isNaN(envelopeAt)
|
|
417
393
|
? undefined
|
|
418
394
|
: Math.max(0, options.queuedAt - envelopeAt),
|
|
419
395
|
endToEndMs: eventAt === undefined ? undefined : Math.max(0, completedAt - eventAt),
|
|
396
|
+
// The attempt leaving, not bookkeeping finishing: everything after
|
|
397
|
+
// `startedAt` is either the subscriber's time or our own recording,
|
|
398
|
+
// neither of which delays the event reaching them. Gated on a request
|
|
399
|
+
// actually being made, so a failure before send (formatting, invalid
|
|
400
|
+
// destination) does not report an attempt that never left.
|
|
401
|
+
eventToAttemptMs: eventAt === undefined || result.durationMs === undefined
|
|
402
|
+
? undefined
|
|
403
|
+
: Math.max(0, startedAt - eventAt),
|
|
420
404
|
eventToEnvelopeMs: eventAt === undefined || Number.isNaN(envelopeAt)
|
|
421
405
|
? undefined
|
|
422
406
|
: Math.max(0, envelopeAt - eventAt),
|
|
407
|
+
observedToAttemptMs: options.observedAt === undefined || result.durationMs === undefined
|
|
408
|
+
? undefined
|
|
409
|
+
: Math.max(0, startedAt - options.observedAt),
|
|
410
|
+
preflightMs: Math.max(0, startedAt - dequeuedAt),
|
|
423
411
|
processingMs: Math.max(0, completedAt - dequeuedAt),
|
|
424
412
|
queueWaitMs: options.queuedAt === undefined ? undefined : Math.max(0, dequeuedAt - options.queuedAt),
|
|
413
|
+
settleMs: Math.max(0, completedAt - writeStartedAt),
|
|
425
414
|
stateWriteMs,
|
|
426
415
|
subscriptionReadMs: options.subscriptionReadMs,
|
|
427
416
|
},
|
|
@@ -485,7 +474,15 @@ function buildDelivery(input, options = {}) {
|
|
|
485
474
|
* re-deliveries are dedupable by the receiver.
|
|
486
475
|
*/
|
|
487
476
|
export function eventId(options) {
|
|
488
|
-
|
|
477
|
+
return eventIdFromKey({
|
|
478
|
+
chainId: options.chainId,
|
|
479
|
+
eventType: options.eventType,
|
|
480
|
+
key: `${options.blockNumber}:${options.logIndex}`,
|
|
481
|
+
});
|
|
482
|
+
}
|
|
483
|
+
/** Computes a stable event id from an event-type-specific identity key. */
|
|
484
|
+
export function eventIdFromKey(options) {
|
|
485
|
+
const input = `${options.chainId}:${options.eventType}:${options.key}`;
|
|
489
486
|
return `evt_${Hash.sha256(Hex.fromString(input)).slice(2)}`;
|
|
490
487
|
}
|
|
491
488
|
/** Builds a delivery envelope for an event matched against a subscription. */
|
|
@@ -506,6 +503,23 @@ export function buildEnvelope(options) {
|
|
|
506
503
|
type: subscription.eventType,
|
|
507
504
|
};
|
|
508
505
|
}
|
|
506
|
+
/** Builds a delivery envelope from a stable application-event identity. */
|
|
507
|
+
export function buildKeyedEnvelope(options) {
|
|
508
|
+
const { subscription } = options;
|
|
509
|
+
return {
|
|
510
|
+
chainId: subscription.chainId,
|
|
511
|
+
...(subscription.context === undefined ? {} : { context: subscription.context }),
|
|
512
|
+
createdAt: (options.createdAt ?? new Date()).toISOString(),
|
|
513
|
+
data: options.data,
|
|
514
|
+
id: eventIdFromKey({
|
|
515
|
+
chainId: subscription.chainId,
|
|
516
|
+
eventType: subscription.eventType,
|
|
517
|
+
key: options.key,
|
|
518
|
+
}),
|
|
519
|
+
subscriptionId: subscription.id,
|
|
520
|
+
type: subscription.eventType,
|
|
521
|
+
};
|
|
522
|
+
}
|
|
509
523
|
/**
|
|
510
524
|
* Builds a synthetic `ping` envelope so an owner can test a subscription's
|
|
511
525
|
* endpoint (connectivity, TLS, signature verification) without waiting for a real
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Webhooks.js","sourceRoot":"","sources":["../../src/internal/Webhooks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Webhooks.js","sourceRoot":"","sources":["../../src/internal/Webhooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type * as Db from '../../db/Db.js';
|
|
2
|
+
import * as FundingDeposits from '../../db/tables/fundingDeposits.js';
|
|
3
|
+
import * as Webhooks from '../Webhooks.js';
|
|
4
|
+
import * as Deposit from './Deposit.js';
|
|
5
|
+
/** Applies a deposit transition and stages every matching webhook obligation atomically. */
|
|
6
|
+
export declare function transition(db: Db.Db, options: Deposit.transition.Options): Promise<transition.Result>;
|
|
7
|
+
export declare namespace transition {
|
|
8
|
+
/** Transition result plus compact references for atomically staged obligations. */
|
|
9
|
+
type Result = {
|
|
10
|
+
/** Queue references staged with the applied transition. */
|
|
11
|
+
references: Webhooks.QueueReference[];
|
|
12
|
+
/** Version-guarded deposit transition outcome. */
|
|
13
|
+
result: Deposit.transition.Result;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/** Stages durable webhook obligations for committed funding deposit versions. */
|
|
17
|
+
export declare function stage(db: Db.Db, options: stage.Options): Promise<Webhooks.ensureQueueEvents.Result>;
|
|
18
|
+
export declare namespace stage {
|
|
19
|
+
/** Committed deposit changes eligible for customer webhook delivery. */
|
|
20
|
+
type Options = {
|
|
21
|
+
/** Latest committed funding deposit records. */
|
|
22
|
+
records: readonly FundingDeposits.Record[];
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=DepositWebhook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DepositWebhook.d.ts","sourceRoot":"","sources":["../../../src/internal/funding/DepositWebhook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,eAAe,MAAM,oCAAoC,CAAA;AAErE,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,4FAA4F;AAC5F,wBAAsB,UAAU,CAC9B,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,GAClC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAO5B;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,mFAAmF;IACnF,KAAK,MAAM,GAAG;QACZ,2DAA2D;QAC3D,UAAU,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAA;QACrC,kDAAkD;QAClD,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAA;KAClC,CAAA;CACF;AAED,iFAAiF;AACjF,wBAAsB,KAAK,CACzB,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,KAAK,CAAC,OAAO,GACrB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CA4B5C;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,wEAAwE;IACxE,KAAK,OAAO,GAAG;QACb,gDAAgD;QAChD,OAAO,EAAE,SAAS,eAAe,CAAC,MAAM,EAAE,CAAA;KAC3C,CAAA;CACF"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import * as FundingDeposits from '../../db/tables/fundingDeposits.js';
|
|
2
|
+
import * as WebhookSubscriptions from '../../db/tables/webhookSubscriptions.js';
|
|
3
|
+
import * as Webhooks from '../Webhooks.js';
|
|
4
|
+
import * as Deposit from './Deposit.js';
|
|
5
|
+
/** Applies a deposit transition and stages every matching webhook obligation atomically. */
|
|
6
|
+
export async function transition(db, options) {
|
|
7
|
+
return db.transaction(async (tx) => {
|
|
8
|
+
const result = await Deposit.transition(tx, options);
|
|
9
|
+
if (result.type !== 'applied')
|
|
10
|
+
return { references: [], result };
|
|
11
|
+
const staged = await stage(tx, { records: [result.record] });
|
|
12
|
+
return { references: staged.references, result };
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
/** Stages durable webhook obligations for committed funding deposit versions. */
|
|
16
|
+
export async function stage(db, options) {
|
|
17
|
+
const dispatchables = [];
|
|
18
|
+
const now = new Date().toISOString();
|
|
19
|
+
for (const record of unique(options.records)) {
|
|
20
|
+
const chainId = destinationChainId(record);
|
|
21
|
+
if (chainId === undefined)
|
|
22
|
+
continue;
|
|
23
|
+
const subscriptions = await WebhookSubscriptions.listActiveForFundingDeposit(db, {
|
|
24
|
+
chainId,
|
|
25
|
+
environment: record.environment,
|
|
26
|
+
now,
|
|
27
|
+
orgId: record.orgId,
|
|
28
|
+
...(record.projectId === null ? {} : { projectId: record.projectId }),
|
|
29
|
+
});
|
|
30
|
+
const data = Deposit.toPublic(record);
|
|
31
|
+
for (const subscription of subscriptions) {
|
|
32
|
+
if (!matches(subscription.filters, data))
|
|
33
|
+
continue;
|
|
34
|
+
dispatchables.push({
|
|
35
|
+
envelope: Webhooks.buildKeyedEnvelope({
|
|
36
|
+
createdAt: new Date(record.updatedAt),
|
|
37
|
+
data,
|
|
38
|
+
key: `${record.id}:${record.version}`,
|
|
39
|
+
subscription,
|
|
40
|
+
}),
|
|
41
|
+
subscription,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return Webhooks.ensureQueueEvents(db, dispatchables);
|
|
46
|
+
}
|
|
47
|
+
function destinationChainId(record) {
|
|
48
|
+
const match = /^eip155:(\d+)$/.exec(record.snapshot.destinationChain.id);
|
|
49
|
+
if (!match)
|
|
50
|
+
return undefined;
|
|
51
|
+
const chainId = Number(match[1]);
|
|
52
|
+
return Number.isSafeInteger(chainId) && chainId > 0 ? chainId : undefined;
|
|
53
|
+
}
|
|
54
|
+
function matches(filters, deposit) {
|
|
55
|
+
if (typeof filters['depositAddressId'] === 'string' &&
|
|
56
|
+
filters['depositAddressId'] !== deposit.depositAddressId)
|
|
57
|
+
return false;
|
|
58
|
+
if (typeof filters['recipient'] === 'string' &&
|
|
59
|
+
filters['recipient'].toLowerCase() !== deposit.recipient.toLowerCase())
|
|
60
|
+
return false;
|
|
61
|
+
if (typeof filters['status'] === 'string' && filters['status'] !== deposit.status)
|
|
62
|
+
return false;
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
function unique(records) {
|
|
66
|
+
const byId = new Map();
|
|
67
|
+
for (const record of records) {
|
|
68
|
+
const current = byId.get(record.id);
|
|
69
|
+
if (!current || current.version < record.version)
|
|
70
|
+
byId.set(record.id, record);
|
|
71
|
+
}
|
|
72
|
+
return [...byId.values()];
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=DepositWebhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DepositWebhook.js","sourceRoot":"","sources":["../../../src/internal/funding/DepositWebhook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as Db from '../../db/Db.js';
|
|
2
2
|
import * as FundingDepositAddresses from '../../db/tables/fundingDepositAddresses.js';
|
|
3
|
+
import * as FundingDeposits from '../../db/tables/fundingDeposits.js';
|
|
3
4
|
import type * as Metrics from '../../Metrics.js';
|
|
5
|
+
import type * as Webhooks from '../Webhooks.js';
|
|
4
6
|
import * as Deposit from './Deposit.js';
|
|
5
7
|
import * as Provider from './Provider.js';
|
|
6
8
|
import * as Subsidy from './Subsidy.js';
|
|
@@ -41,6 +43,8 @@ export declare namespace createTracker {
|
|
|
41
43
|
db: Db.Source;
|
|
42
44
|
/** Durable reconciliation queue transport. */
|
|
43
45
|
dispatch: (message: Provider.Webhook.receive.Dispatchable, options?: createTracker.DispatchOptions) => Promise<void>;
|
|
46
|
+
/** Stages and dispatches committed funding deposit webhook updates. */
|
|
47
|
+
dispatchDepositUpdates?: ((references: readonly Webhooks.QueueReference[]) => Promise<number>) | undefined;
|
|
44
48
|
/** Duration of one reconciliation lease. */
|
|
45
49
|
leaseMs?: number | undefined;
|
|
46
50
|
/** Optional bounded operational metrics sink. */
|
|
@@ -91,6 +95,8 @@ export declare namespace reconcileRequest {
|
|
|
91
95
|
address: FundingDepositAddresses.Record;
|
|
92
96
|
/** Optional bounded operational metrics sink. */
|
|
93
97
|
metrics?: Metrics.Metrics | undefined;
|
|
98
|
+
/** Observes the latest committed form of each verified deposit. */
|
|
99
|
+
onDeposit?: ((deposit: FundingDeposits.Record, references: readonly Webhooks.QueueReference[]) => void) | undefined;
|
|
94
100
|
/** Provider integration that discovered the request. */
|
|
95
101
|
provider?: Provider.Provider | undefined;
|
|
96
102
|
/** Provider request containing discovered chain transactions. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Reconciliation.d.ts","sourceRoot":"","sources":["../../../src/internal/funding/Reconciliation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,KAAK,uBAAuB,MAAM,4CAA4C,CAAA;
|
|
1
|
+
{"version":3,"file":"Reconciliation.d.ts","sourceRoot":"","sources":["../../../src/internal/funding/Reconciliation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,KAAK,uBAAuB,MAAM,4CAA4C,CAAA;AAErF,OAAO,KAAK,eAAe,MAAM,oCAAoC,CAAA;AACrE,OAAO,KAAK,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAEhD,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAgBvC,yEAAyE;AACzE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,sCAAsC;IACtC,eAAe,EAAE,MAAM,CAAA;IACvB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,CAC5B,UAAU,EAAE,eAAe,CAAC,UAAU,KACnC,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAA;AAEzC,mEAAmE;AACnE,MAAM,CAAC,OAAO,WAAW,eAAe,CAAC;IACvC,KAAK,UAAU,GAAG;QAChB,oDAAoD;QACpD,SAAS,EAAE,MAAM,CAAA;QACjB,wCAAwC;QACxC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAA;QACxB,sCAAsC;QACtC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAA;QACxB,2DAA2D;QAC3D,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;CACF;AAED,yDAAyD;AACzD,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAgQnF;AAED,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC,0DAA0D;IAC1D,KAAK,OAAO,GAAG;QACb,uDAAuD;QACvD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC9B,iEAAiE;QACjE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAA;QACb,8CAA8C;QAC9C,QAAQ,EAAE,CACR,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAC9C,OAAO,CAAC,EAAE,aAAa,CAAC,eAAe,KACpC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClB,uEAAuE;QACvE,sBAAsB,CAAC,EACnB,CAAC,CAAC,UAAU,EAAE,SAAS,QAAQ,CAAC,cAAc,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GACrE,SAAS,CAAA;QACb,4CAA4C;QAC5C,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,iDAAiD;QACjD,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACrC,2CAA2C;QAC3C,GAAG,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;QAC9B,sEAAsE;QACtE,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACnC,gDAAgD;QAChD,SAAS,EAAE,SAAS,QAAQ,CAAC,QAAQ,EAAE,CAAA;QACvC,uDAAuD;QACvD,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;QAChC,+CAA+C;QAC/C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACvC,wDAAwD;QACxD,eAAe,EAAE,eAAe,CAAA;KACjC,CAAA;IAED,6DAA6D;IAC7D,KAAK,eAAe,GAAG;QACrB,0DAA0D;QAC1D,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IAED,+CAA+C;IAC/C,KAAK,eAAe,GAChB;QAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,OAAO,CAAA;KAAE,GACnD;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAE3D,2DAA2D;IAC3D,KAAK,OAAO,GAAG;QACb,kFAAkF;QAClF,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;QAC7E,uEAAuE;QACvE,IAAI,IAAI,OAAO,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KACrD,CAAA;CACF;AAmXD,uEAAuE;AACvE,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,gBAAgB,CAAC,OAAO,GAChC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CA+LtC;AAED,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,8DAA8D;IAC9D,KAAK,OAAO,GAAG;QACb,2DAA2D;QAC3D,OAAO,EAAE,uBAAuB,CAAC,MAAM,CAAA;QACvC,iDAAiD;QACjD,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACrC,mEAAmE;QACnE,SAAS,CAAC,EACN,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,QAAQ,CAAC,cAAc,EAAE,KAAK,IAAI,CAAC,GAC3F,SAAS,CAAA;QACb,wDAAwD;QACxD,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;QACxC,iEAAiE;QACjE,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;QAC3E,+DAA+D;QAC/D,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;QAChC,+CAA+C;QAC/C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACvC,+CAA+C;QAC/C,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAA;QAC9C,8DAA8D;QAC9D,eAAe,EAAE,eAAe,CAAA;KACjC,CAAA;IAED,yDAAyD;IACzD,KAAK,UAAU,GAAG;QAChB,iDAAiD;QACjD,OAAO,EAAE,MAAM,CAAA;QACf,mDAAmD;QACnD,QAAQ,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAAA;QAChD,wEAAwE;QACxE,QAAQ,EAAE,OAAO,CAAA;QACjB,6DAA6D;QAC7D,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAyhBD,qEAAqE;AACrE,qBAAa,oBAAqB,SAAQ,KAAK;IACpC,IAAI,SAAgD;CAC9D;AAED,8DAA8D;AAC9D,qBAAa,eAAgB,SAAQ,KAAK;IAC/B,IAAI,SAA2C;CACzD"}
|