tapimo 0.11.0 → 0.13.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 +6396 -4575
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +39 -4
- package/dist/App.js.map +1 -1
- package/dist/Assets.d.ts +15 -0
- package/dist/Assets.d.ts.map +1 -1
- package/dist/Assets.js +7 -0
- package/dist/Assets.js.map +1 -1
- package/dist/Scope.d.ts +2 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +17 -0
- package/dist/Scope.js.map +1 -1
- package/dist/admin/App.d.ts +176 -78
- package/dist/admin/App.d.ts.map +1 -1
- package/dist/admin/apps/api-keys.d.ts +84 -4
- package/dist/admin/apps/api-keys.d.ts.map +1 -1
- package/dist/admin/apps/api-keys.js +54 -0
- package/dist/admin/apps/api-keys.js.map +1 -1
- package/dist/admin/apps/earn-vaults.d.ts +123 -9
- package/dist/admin/apps/earn-vaults.d.ts.map +1 -1
- package/dist/admin/apps/earn-vaults.js +60 -7
- package/dist/admin/apps/earn-vaults.js.map +1 -1
- package/dist/admin/apps/organizations.d.ts.map +1 -1
- package/dist/admin/apps/organizations.js +4 -2
- package/dist/admin/apps/organizations.js.map +1 -1
- package/dist/admin/apps/verified-tokens.d.ts +90 -90
- package/dist/admin/ui.generated.d.ts +1 -1
- package/dist/admin/ui.generated.js +71 -71
- package/dist/admin/ui.generated.js.map +1 -1
- package/dist/apps/Zones.d.ts +16 -16
- package/dist/apps/Zones.js +4 -4
- package/dist/apps/data/App.d.ts +1699 -749
- package/dist/apps/data/App.d.ts.map +1 -1
- package/dist/apps/data/App.js +58 -9
- package/dist/apps/data/App.js.map +1 -1
- package/dist/apps/data/ZoneSelection.d.ts +62 -0
- package/dist/apps/data/ZoneSelection.d.ts.map +1 -0
- package/dist/apps/data/ZoneSelection.js +44 -0
- package/dist/apps/data/ZoneSelection.js.map +1 -0
- package/dist/apps/data/routes/activities.d.ts +2417 -50
- package/dist/apps/data/routes/activities.d.ts.map +1 -1
- package/dist/apps/data/routes/activities.js +1896 -1293
- package/dist/apps/data/routes/activities.js.map +1 -1
- package/dist/apps/data/routes/addresses.d.ts +471 -340
- package/dist/apps/data/routes/addresses.d.ts.map +1 -1
- package/dist/apps/data/routes/balances.d.ts +12 -12
- package/dist/apps/data/routes/balances.d.ts.map +1 -1
- package/dist/apps/data/routes/balances.js +44 -17
- package/dist/apps/data/routes/balances.js.map +1 -1
- package/dist/apps/data/routes/blocks.d.ts +42 -42
- package/dist/apps/data/routes/blocks.d.ts.map +1 -1
- package/dist/apps/data/routes/blocks.js +22 -12
- package/dist/apps/data/routes/blocks.js.map +1 -1
- package/dist/apps/data/routes/coingecko.d.ts +179 -179
- package/dist/apps/data/routes/earn.d.ts +144 -19
- package/dist/apps/data/routes/earn.d.ts.map +1 -1
- package/dist/apps/data/routes/earn.js +160 -28
- package/dist/apps/data/routes/earn.js.map +1 -1
- package/dist/apps/data/routes/exchanges.d.ts +719 -13
- package/dist/apps/data/routes/exchanges.d.ts.map +1 -1
- package/dist/apps/data/routes/exchanges.js +16 -13
- package/dist/apps/data/routes/exchanges.js.map +1 -1
- package/dist/apps/data/routes/fee-amm.d.ts +2 -2
- package/dist/apps/data/routes/fee-amm.d.ts.map +1 -1
- package/dist/apps/data/routes/fee-amm.js +9 -11
- package/dist/apps/data/routes/fee-amm.js.map +1 -1
- package/dist/apps/data/routes/indexer.d.ts +34 -34
- package/dist/apps/data/routes/receipts.d.ts +363 -263
- package/dist/apps/data/routes/receipts.d.ts.map +1 -1
- package/dist/apps/data/routes/receipts.js +29 -11
- package/dist/apps/data/routes/receipts.js.map +1 -1
- package/dist/apps/data/routes/rpc.js +24 -10
- package/dist/apps/data/routes/rpc.js.map +1 -1
- package/dist/apps/data/routes/tokenlist.d.ts +13 -13
- package/dist/apps/data/routes/tokenlist.d.ts.map +1 -1
- package/dist/apps/data/routes/tokenlist.js +16 -15
- package/dist/apps/data/routes/tokenlist.js.map +1 -1
- package/dist/apps/data/routes/tokens.d.ts +112 -98
- package/dist/apps/data/routes/tokens.d.ts.map +1 -1
- package/dist/apps/data/routes/tokens.js +85 -35
- package/dist/apps/data/routes/tokens.js.map +1 -1
- package/dist/apps/data/routes/transactions.d.ts +7 -2
- package/dist/apps/data/routes/transactions.d.ts.map +1 -1
- package/dist/apps/data/routes/transactions.js +38 -18
- package/dist/apps/data/routes/transactions.js.map +1 -1
- package/dist/apps/data/routes/transfers.d.ts +1 -1
- package/dist/apps/data/routes/transfers.d.ts.map +1 -1
- package/dist/apps/data/routes/transfers.js +25 -21
- package/dist/apps/data/routes/transfers.js.map +1 -1
- package/dist/apps/data/routes/valuation.d.ts +1 -1
- package/dist/apps/data/routes/valuation.d.ts.map +1 -1
- package/dist/apps/data/routes/valuation.js +12 -7
- package/dist/apps/data/routes/valuation.js.map +1 -1
- package/dist/apps/data/routes/verified-tokens.d.ts +3 -3
- package/dist/apps/data/routes/webhooks.d.ts +15 -15
- package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/data/routes/webhooks.js +2 -2
- package/dist/apps/data/routes/webhooks.js.map +1 -1
- package/dist/apps/data/routes/zones.d.ts +32 -32
- package/dist/apps/data/routes/zones.js +1 -1
- package/dist/apps/funding/App.d.ts +38 -27
- package/dist/apps/funding/App.d.ts.map +1 -1
- package/dist/apps/funding/routes/chains.d.ts.map +1 -1
- package/dist/apps/funding/routes/chains.js +5 -4
- package/dist/apps/funding/routes/chains.js.map +1 -1
- package/dist/apps/funding/routes/deposit-addresses.d.ts +16 -16
- package/dist/apps/funding/routes/deposit-addresses.d.ts.map +1 -1
- package/dist/apps/funding/routes/deposit-addresses.js +24 -19
- package/dist/apps/funding/routes/deposit-addresses.js.map +1 -1
- package/dist/apps/funding/routes/providers.d.ts +13 -13
- package/dist/apps/funding/routes/providers.d.ts.map +1 -1
- package/dist/apps/funding/routes/providers.js +3 -2
- package/dist/apps/funding/routes/providers.js.map +1 -1
- package/dist/apps/funding/routes/quotes.d.ts.map +1 -1
- package/dist/apps/funding/routes/quotes.js +2 -2
- package/dist/apps/funding/routes/quotes.js.map +1 -1
- package/dist/apps/funding/routes/transfers.d.ts +60 -48
- package/dist/apps/funding/routes/transfers.d.ts.map +1 -1
- package/dist/apps/funding/routes/transfers.js +27 -19
- package/dist/apps/funding/routes/transfers.js.map +1 -1
- package/dist/apps/management/App.d.ts +4558 -3700
- package/dist/apps/management/App.d.ts.map +1 -1
- package/dist/apps/management/Billing.d.ts.map +1 -1
- package/dist/apps/management/Billing.js +19 -6
- package/dist/apps/management/Billing.js.map +1 -1
- package/dist/apps/management/routes/api-keys.d.ts +786 -175
- package/dist/apps/management/routes/api-keys.d.ts.map +1 -1
- package/dist/apps/management/routes/api-keys.js +312 -34
- package/dist/apps/management/routes/api-keys.js.map +1 -1
- package/dist/apps/management/routes/billing.d.ts +103 -30
- package/dist/apps/management/routes/billing.d.ts.map +1 -1
- package/dist/apps/management/routes/billing.js +91 -32
- package/dist/apps/management/routes/billing.js.map +1 -1
- package/dist/apps/management/routes/faucet.d.ts +35 -35
- package/dist/apps/management/routes/faucet.d.ts.map +1 -1
- package/dist/apps/management/routes/faucet.js +23 -12
- package/dist/apps/management/routes/faucet.js.map +1 -1
- package/dist/apps/management/routes/invitations.d.ts +46 -13
- package/dist/apps/management/routes/invitations.d.ts.map +1 -1
- package/dist/apps/management/routes/invitations.js +79 -29
- package/dist/apps/management/routes/invitations.js.map +1 -1
- package/dist/apps/management/routes/invite-links.d.ts +120 -75
- package/dist/apps/management/routes/invite-links.d.ts.map +1 -1
- package/dist/apps/management/routes/invite-links.js +100 -41
- package/dist/apps/management/routes/invite-links.js.map +1 -1
- package/dist/apps/management/routes/me.d.ts +5 -5
- package/dist/apps/management/routes/me.d.ts.map +1 -1
- package/dist/apps/management/routes/me.js +14 -10
- package/dist/apps/management/routes/me.js.map +1 -1
- package/dist/apps/management/routes/members.d.ts +99 -78
- package/dist/apps/management/routes/members.d.ts.map +1 -1
- package/dist/apps/management/routes/members.js +37 -18
- package/dist/apps/management/routes/members.js.map +1 -1
- package/dist/apps/management/routes/orgs.d.ts +48 -8
- package/dist/apps/management/routes/orgs.d.ts.map +1 -1
- package/dist/apps/management/routes/orgs.js +48 -19
- package/dist/apps/management/routes/orgs.js.map +1 -1
- package/dist/apps/management/routes/projects.d.ts +108 -46
- package/dist/apps/management/routes/projects.d.ts.map +1 -1
- package/dist/apps/management/routes/projects.js +72 -21
- package/dist/apps/management/routes/projects.js.map +1 -1
- package/dist/apps/management/routes/scopes.d.ts.map +1 -1
- package/dist/apps/management/routes/scopes.js +8 -5
- package/dist/apps/management/routes/scopes.js.map +1 -1
- package/dist/apps/management/routes/usage.d.ts +82 -82
- package/dist/apps/management/routes/usage.d.ts.map +1 -1
- package/dist/apps/management/routes/usage.js +41 -31
- package/dist/apps/management/routes/usage.js.map +1 -1
- package/dist/apps/management/routes/verified-token-requests.d.ts +35 -7
- package/dist/apps/management/routes/verified-token-requests.d.ts.map +1 -1
- package/dist/apps/management/routes/verified-token-requests.js +36 -17
- package/dist/apps/management/routes/verified-token-requests.js.map +1 -1
- package/dist/apps/management/routes/webhooks.d.ts +200 -183
- package/dist/apps/management/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/management/routes/webhooks.js +80 -35
- package/dist/apps/management/routes/webhooks.js.map +1 -1
- package/dist/apps/mpp/internal/Adapter.d.ts +1 -1
- package/dist/apps/mpp/internal/Adapter.d.ts.map +1 -1
- package/dist/apps/mpp/internal/Adapter.js +12 -0
- package/dist/apps/mpp/internal/Adapter.js.map +1 -1
- package/dist/db/Db.d.ts +2 -0
- package/dist/db/Db.d.ts.map +1 -1
- package/dist/db/Db.js +52 -1
- package/dist/db/Db.js.map +1 -1
- package/dist/db/Schema.d.ts +26 -3
- package/dist/db/Schema.d.ts.map +1 -1
- package/dist/db/Schema.js +24 -5
- package/dist/db/Schema.js.map +1 -1
- package/dist/db/tables/earnVaults.d.ts +5 -1
- package/dist/db/tables/earnVaults.d.ts.map +1 -1
- package/dist/db/tables/earnVaults.js +5 -0
- package/dist/db/tables/earnVaults.js.map +1 -1
- package/dist/db/tables/fundingCatalog.d.ts +4 -2
- package/dist/db/tables/fundingCatalog.d.ts.map +1 -1
- package/dist/db/tables/fundingCatalog.js +5 -1
- package/dist/db/tables/fundingCatalog.js.map +1 -1
- package/dist/db/tables/webhookDeliveries.d.ts.map +1 -1
- package/dist/db/tables/webhookDeliveries.js +10 -0
- package/dist/db/tables/webhookDeliveries.js.map +1 -1
- package/dist/db/tables/webhookQueueCompletions.d.ts +15 -0
- package/dist/db/tables/webhookQueueCompletions.d.ts.map +1 -0
- package/dist/db/tables/webhookQueueCompletions.js +32 -0
- package/dist/db/tables/webhookQueueCompletions.js.map +1 -0
- package/dist/db/tables/webhookQueueEvents.d.ts +14 -20
- package/dist/db/tables/webhookQueueEvents.d.ts.map +1 -1
- package/dist/db/tables/webhookQueueEvents.js +68 -47
- package/dist/db/tables/webhookQueueEvents.js.map +1 -1
- package/dist/db/tables/webhookSubscriptions.d.ts +16 -5
- package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -1
- package/dist/db/tables/webhookSubscriptions.js +29 -5
- package/dist/db/tables/webhookSubscriptions.js.map +1 -1
- package/dist/handlers/internal/utils.d.ts.map +1 -1
- package/dist/handlers/internal/utils.js +9 -0
- package/dist/handlers/internal/utils.js.map +1 -1
- package/dist/internal/Auth.d.ts +11 -2
- package/dist/internal/Auth.d.ts.map +1 -1
- package/dist/internal/Auth.js +19 -6
- package/dist/internal/Auth.js.map +1 -1
- package/dist/internal/Cache.d.ts.map +1 -1
- package/dist/internal/Cache.js +11 -7
- package/dist/internal/Cache.js.map +1 -1
- package/dist/internal/EarnVaults.d.ts +43 -4
- package/dist/internal/EarnVaults.d.ts.map +1 -1
- package/dist/internal/EarnVaults.js +167 -0
- package/dist/internal/EarnVaults.js.map +1 -1
- package/dist/internal/Fetch.d.ts +23 -0
- package/dist/internal/Fetch.d.ts.map +1 -0
- package/dist/internal/Fetch.js +26 -0
- package/dist/internal/Fetch.js.map +1 -0
- package/dist/internal/Log.d.ts +3 -1
- package/dist/internal/Log.d.ts.map +1 -1
- package/dist/internal/Log.js +16 -3
- package/dist/internal/Log.js.map +1 -1
- package/dist/internal/OpenApi.d.ts +30 -24
- package/dist/internal/OpenApi.d.ts.map +1 -1
- package/dist/internal/OpenApi.js +140 -41
- package/dist/internal/OpenApi.js.map +1 -1
- package/dist/internal/Response.d.ts +14 -9
- package/dist/internal/Response.d.ts.map +1 -1
- package/dist/internal/Response.js +16 -5
- package/dist/internal/Response.js.map +1 -1
- package/dist/internal/Schema.d.ts +11 -10
- package/dist/internal/Schema.d.ts.map +1 -1
- package/dist/internal/Schema.js +14 -9
- package/dist/internal/Schema.js.map +1 -1
- package/dist/internal/Store.d.ts +28 -6
- package/dist/internal/Store.d.ts.map +1 -1
- package/dist/internal/Store.js +121 -25
- package/dist/internal/Store.js.map +1 -1
- package/dist/internal/Tidx.d.ts +2 -0
- package/dist/internal/Tidx.d.ts.map +1 -1
- package/dist/internal/Tidx.js +23 -6
- package/dist/internal/Tidx.js.map +1 -1
- package/dist/internal/Timeout.d.ts +36 -0
- package/dist/internal/Timeout.d.ts.map +1 -0
- package/dist/internal/Timeout.js +37 -0
- package/dist/internal/Timeout.js.map +1 -0
- package/dist/internal/Timing.d.ts +9 -0
- package/dist/internal/Timing.d.ts.map +1 -1
- package/dist/internal/Timing.js +7 -0
- package/dist/internal/Timing.js.map +1 -1
- package/dist/internal/WebhookDestination.d.ts.map +1 -1
- package/dist/internal/WebhookDestination.js +3 -0
- package/dist/internal/WebhookDestination.js.map +1 -1
- package/dist/internal/Webhooks.d.ts +29 -12
- package/dist/internal/Webhooks.d.ts.map +1 -1
- package/dist/internal/Webhooks.js +37 -20
- package/dist/internal/Webhooks.js.map +1 -1
- package/dist/internal/funding/Action.d.ts +9 -0
- package/dist/internal/funding/Action.d.ts.map +1 -1
- package/dist/internal/funding/Action.js +16 -8
- package/dist/internal/funding/Action.js.map +1 -1
- package/dist/internal/funding/Catalog.d.ts +9 -2
- package/dist/internal/funding/Catalog.d.ts.map +1 -1
- package/dist/internal/funding/Catalog.js +19 -8
- package/dist/internal/funding/Catalog.js.map +1 -1
- package/dist/internal/funding/Deposit.d.ts +2 -2
- package/dist/internal/funding/Deposit.d.ts.map +1 -1
- package/dist/internal/funding/Deposit.js +9 -8
- package/dist/internal/funding/Deposit.js.map +1 -1
- package/dist/internal/funding/DepositAddress.d.ts +4 -4
- package/dist/internal/funding/DepositAddress.d.ts.map +1 -1
- package/dist/internal/funding/DepositAddress.js +9 -8
- package/dist/internal/funding/DepositAddress.js.map +1 -1
- package/dist/internal/funding/Provider.d.ts +68 -13
- package/dist/internal/funding/Provider.d.ts.map +1 -1
- package/dist/internal/funding/Provider.js +42 -20
- package/dist/internal/funding/Provider.js.map +1 -1
- package/dist/internal/funding/Transfer.d.ts +13 -12
- package/dist/internal/funding/Transfer.d.ts.map +1 -1
- package/dist/internal/funding/Transfer.js +23 -21
- package/dist/internal/funding/Transfer.js.map +1 -1
- package/dist/internal/funding/providers/stargate.d.ts +38 -0
- package/dist/internal/funding/providers/stargate.d.ts.map +1 -0
- package/dist/internal/funding/providers/stargate.js +277 -0
- package/dist/internal/funding/providers/stargate.js.map +1 -0
- package/dist/internal/index.d.ts +1 -0
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/index.js +1 -0
- package/dist/internal/index.js.map +1 -1
- package/dist/providers/index.d.ts +7 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +3 -0
- package/dist/providers/index.js.map +1 -1
- package/package.json +3 -3
- package/src/App.test.ts +148 -0
- package/src/App.ts +45 -4
- package/src/Assets.test.ts +18 -0
- package/src/Assets.ts +22 -0
- package/src/Client.test-d.ts +311 -16
- package/src/Scope.test.ts +20 -0
- package/src/Scope.ts +16 -0
- package/src/admin/apps/api-keys.test.ts +75 -0
- package/src/admin/apps/api-keys.ts +64 -0
- package/src/admin/apps/earn-vaults.test.ts +143 -0
- package/src/admin/apps/earn-vaults.ts +84 -7
- package/src/admin/apps/organizations.ts +6 -2
- package/src/admin/ui/src/lib/api-keys.ts +19 -0
- package/src/admin/ui/src/routes/api-keys.tsx +125 -2
- package/src/admin/ui.generated.ts +71 -71
- package/src/apps/Zones.test.ts +4 -4
- package/src/apps/Zones.ts +4 -4
- package/src/apps/composition.test.ts +1 -1
- package/src/apps/data/App.test.ts +72 -0
- package/src/apps/data/App.ts +58 -10
- package/src/apps/data/ZoneSelection.test.ts +196 -0
- package/src/apps/data/ZoneSelection.ts +108 -0
- package/src/apps/data/routes/activities.test.ts +1843 -2
- package/src/apps/data/routes/activities.ts +2211 -1388
- package/src/apps/data/routes/balances.ts +134 -98
- package/src/apps/data/routes/blocks.test.ts +533 -0
- package/src/apps/data/routes/blocks.ts +36 -17
- package/src/apps/data/routes/earn.test.ts +187 -25
- package/src/apps/data/routes/earn.ts +228 -32
- package/src/apps/data/routes/earn.zone-access.test.ts +46 -0
- package/src/apps/data/routes/exchanges.test.ts +31 -1
- package/src/apps/data/routes/exchanges.ts +19 -15
- package/src/apps/data/routes/fee-amm.ts +18 -11
- package/src/apps/data/routes/receipts.ts +48 -17
- package/src/apps/data/routes/rpc.test.ts +75 -0
- package/src/apps/data/routes/rpc.ts +23 -9
- package/src/apps/data/routes/tokenlist.ts +21 -18
- package/src/apps/data/routes/tokens.test.ts +607 -0
- package/src/apps/data/routes/tokens.ts +312 -231
- package/src/apps/data/routes/transactions.ts +69 -30
- package/src/apps/data/routes/transfers.test.ts +424 -3
- package/src/apps/data/routes/transfers.ts +57 -36
- package/src/apps/data/routes/valuation.ts +94 -78
- package/src/apps/data/routes/webhooks.ts +6 -2
- package/src/apps/data/routes/zones.test.ts +21 -15
- package/src/apps/data/routes/zones.ts +1 -1
- package/src/apps/funding/routes/chains.test.ts +211 -7
- package/src/apps/funding/routes/chains.ts +19 -12
- package/src/apps/funding/routes/deposit-addresses.test.ts +416 -0
- package/src/apps/funding/routes/deposit-addresses.ts +101 -84
- package/src/apps/funding/routes/providers.ts +9 -5
- package/src/apps/funding/routes/quotes.test.ts +42 -0
- package/src/apps/funding/routes/quotes.ts +8 -5
- package/src/apps/funding/routes/transfers.test.ts +430 -40
- package/src/apps/funding/routes/transfers.ts +76 -59
- package/src/apps/management/Billing.test.ts +26 -0
- package/src/apps/management/Billing.ts +24 -7
- package/src/apps/management/routes/api-keys.test.ts +398 -0
- package/src/apps/management/routes/api-keys.ts +481 -145
- package/src/apps/management/routes/billing.test.ts +209 -0
- package/src/apps/management/routes/billing.ts +254 -177
- package/src/apps/management/routes/faucet.test.ts +39 -0
- package/src/apps/management/routes/faucet.ts +75 -41
- package/src/apps/management/routes/invitations.test.ts +216 -0
- package/src/apps/management/routes/invitations.ts +186 -109
- package/src/apps/management/routes/invite-links.test.ts +263 -1
- package/src/apps/management/routes/invite-links.ts +295 -214
- package/src/apps/management/routes/me.test.ts +49 -0
- package/src/apps/management/routes/me.ts +42 -32
- package/src/apps/management/routes/members.test.ts +124 -1
- package/src/apps/management/routes/members.ts +81 -51
- package/src/apps/management/routes/orgs.test.ts +176 -0
- package/src/apps/management/routes/orgs.ts +101 -59
- package/src/apps/management/routes/projects.test.ts +183 -0
- package/src/apps/management/routes/projects.ts +124 -60
- package/src/apps/management/routes/scopes.test.ts +44 -0
- package/src/apps/management/routes/scopes.ts +37 -28
- package/src/apps/management/routes/usage.test.ts +92 -0
- package/src/apps/management/routes/usage.ts +186 -151
- package/src/apps/management/routes/verified-token-requests.test.ts +114 -0
- package/src/apps/management/routes/verified-token-requests.ts +166 -133
- package/src/apps/management/routes/webhooks.test.ts +234 -0
- package/src/apps/management/routes/webhooks.ts +191 -78
- package/src/apps/mpp/internal/Adapter.ts +13 -1
- package/src/db/Db.test.ts +41 -0
- package/src/db/Db.ts +75 -1
- package/src/db/Schema.ts +33 -5
- package/src/db/tables/earnVaults.test.ts +22 -0
- package/src/db/tables/earnVaults.ts +11 -1
- package/src/db/tables/fundingCatalog.test.ts +16 -2
- package/src/db/tables/fundingCatalog.ts +9 -3
- package/src/db/tables/webhookDeliveries.ts +13 -0
- package/src/db/tables/webhookQueueCompletions.ts +55 -0
- package/src/db/tables/webhookQueueEvents.ts +95 -61
- package/src/db/tables/webhookSubscriptions.ts +45 -6
- package/src/handlers/internal/utils.test.ts +53 -0
- package/src/handlers/internal/utils.ts +15 -0
- package/src/internal/Auth.ts +35 -9
- package/src/internal/Cache.ts +14 -7
- package/src/internal/EarnVaults.capabilities.test.ts +33 -0
- package/src/internal/EarnVaults.test.ts +79 -0
- package/src/internal/EarnVaults.ts +277 -0
- package/src/internal/Fetch.test.ts +46 -0
- package/src/internal/Fetch.ts +56 -0
- package/src/internal/Log.test.ts +21 -0
- package/src/internal/Log.ts +20 -5
- package/src/internal/OpenApi.ts +177 -51
- package/src/internal/Response.test.ts +95 -0
- package/src/internal/Response.ts +41 -3
- package/src/internal/Schema.test.ts +18 -0
- package/src/internal/Schema.ts +19 -9
- package/src/internal/Store.test.ts +364 -0
- package/src/internal/Store.ts +153 -27
- package/src/internal/Tidx.test.ts +21 -1
- package/src/internal/Tidx.ts +23 -6
- package/src/internal/Timeout.test.ts +35 -0
- package/src/internal/Timeout.ts +73 -0
- package/src/internal/Timing.ts +16 -0
- package/src/internal/WebhookDestination.ts +3 -0
- package/src/internal/Webhooks.test.ts +122 -8
- package/src/internal/Webhooks.ts +59 -29
- package/src/internal/funding/Action.test.ts +41 -1
- package/src/internal/funding/Action.ts +69 -41
- package/src/internal/funding/Catalog.test.ts +34 -0
- package/src/internal/funding/Catalog.ts +28 -11
- package/src/internal/funding/Deposit.ts +71 -64
- package/src/internal/funding/DepositAddress.ts +50 -43
- package/src/internal/funding/Provider.test.ts +73 -0
- package/src/internal/funding/Provider.ts +246 -170
- package/src/internal/funding/Transfer.ts +133 -110
- package/src/internal/funding/providers/index.test.ts +22 -0
- package/src/internal/funding/providers/relay.test.ts +2 -2
- package/src/internal/funding/providers/stargate.test.ts +163 -0
- package/src/internal/funding/providers/stargate.ts +409 -0
- package/src/internal/index.test.ts +1 -0
- package/src/internal/index.ts +1 -0
- package/src/providers/index.test.ts +1 -0
- package/src/providers/index.ts +9 -0
|
@@ -34,6 +34,7 @@ export async function upsert(db, options) {
|
|
|
34
34
|
slug,
|
|
35
35
|
updatedAt: now,
|
|
36
36
|
vaultAddress: normalize(options.vaultAddress),
|
|
37
|
+
zones: JSON.stringify(normalizeZones(options.zones)),
|
|
37
38
|
})
|
|
38
39
|
.onConflict((oc) => oc.columns(['chainId', 'vaultAddress']).doUpdateSet({
|
|
39
40
|
description: options.description,
|
|
@@ -42,6 +43,7 @@ export async function upsert(db, options) {
|
|
|
42
43
|
privateOutputTokens: JSON.stringify(options.privateOutputTokens),
|
|
43
44
|
...(options.slug !== undefined ? { slug } : {}),
|
|
44
45
|
updatedAt: now,
|
|
46
|
+
zones: JSON.stringify(normalizeZones(options.zones)),
|
|
45
47
|
}))
|
|
46
48
|
.returningAll()
|
|
47
49
|
.executeTakeFirstOrThrow();
|
|
@@ -69,4 +71,7 @@ function toRecord(row) {
|
|
|
69
71
|
function normalize(address) {
|
|
70
72
|
return address.toLowerCase();
|
|
71
73
|
}
|
|
74
|
+
function normalizeZones(zones) {
|
|
75
|
+
return zones.map((zone) => ({ ...zone, earnRouter: normalize(zone.earnRouter) }));
|
|
76
|
+
}
|
|
72
77
|
//# sourceMappingURL=earnVaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"earnVaults.js","sourceRoot":"","sources":["../../../src/db/tables/earnVaults.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAMvC,MAAM,UAAU,GAAG,cAAc,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"earnVaults.js","sourceRoot":"","sources":["../../../src/db/tables/earnVaults.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,12 @@ export type TokenTable = db_Schema.FundingToken;
|
|
|
16
16
|
export type ChainTokenTable = db_Schema.FundingChainToken;
|
|
17
17
|
/** Columns of the `funding_routes` table. */
|
|
18
18
|
export type RouteTable = db_Schema.FundingRoute;
|
|
19
|
-
/** A route row whose
|
|
20
|
-
export type RouteRow = Omit<db_Schema.FundingRoute, 'capabilities'> & {
|
|
19
|
+
/** A route row whose optional JSON fields may be absent in validated input. */
|
|
20
|
+
export type RouteRow = Omit<db_Schema.FundingRoute, 'capabilities' | 'configuration'> & {
|
|
21
21
|
/** Executable capability; absent and null both mean indicative-only. */
|
|
22
22
|
capabilities?: db_Schema.FundingRoute['capabilities'] | undefined;
|
|
23
|
+
/** Provider-specific route configuration; absent and null are equivalent. */
|
|
24
|
+
configuration?: db_Schema.FundingRoute['configuration'] | undefined;
|
|
23
25
|
};
|
|
24
26
|
/** Stored funding catalog rows and version metadata. */
|
|
25
27
|
export type Rows = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundingCatalog.d.ts","sourceRoot":"","sources":["../../../src/db/tables/fundingCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAI5C,OAAO,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAA;AAK9C,+CAA+C;AAC/C,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAA;AAEnD,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;IAC7E,kDAAkD;IAClD,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1E,2CAA2C;IAC3C,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3E,CAAA;AAED,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAA;AAE/C,mDAAmD;AACnD,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,iBAAiB,CAAA;AAEzD,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAA;AAE/C
|
|
1
|
+
{"version":3,"file":"fundingCatalog.d.ts","sourceRoot":"","sources":["../../../src/db/tables/fundingCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAI5C,OAAO,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAA;AAK9C,+CAA+C;AAC/C,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAA;AAEnD,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;IAC7E,kDAAkD;IAClD,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1E,2CAA2C;IAC3C,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3E,CAAA;AAED,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAA;AAE/C,mDAAmD;AACnD,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,iBAAiB,CAAA;AAEzD,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAA;AAE/C,+EAA+E;AAC/E,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,GAAG,eAAe,CAAC,GAAG;IACtF,wEAAwE;IACxE,YAAY,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IACjE,6EAA6E;IAC7E,aAAa,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAA;CACpE,CAAA;AAED,wDAAwD;AACxD,MAAM,MAAM,IAAI,GAAG;IACjB,uEAAuE;IACvE,OAAO,EAAE,SAAS,CAAC,cAAc,GAAG,SAAS,CAAA;IAC7C,uCAAuC;IACvC,WAAW,EAAE,SAAS,SAAS,CAAC,iBAAiB,EAAE,CAAA;IACnD,0BAA0B;IAC1B,MAAM,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;IACzC,mCAAmC;IACnC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAA;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;CAC1C,CAAA;AAED,0DAA0D;AAC1D,wBAAsB,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,CAMnF;AAED,sDAAsD;AACtD,wBAAgB,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB7C;AAED,sEAAsE;AACtE,wBAAgB,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAqD1F;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,KAAK,GAAG;QACX,uCAAuC;QACvC,WAAW,EAAE,SAAS,SAAS,CAAC,iBAAiB,EAAE,CAAA;QACnD,0BAA0B;QAC1B,MAAM,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;QACzC,mCAAmC;QACnC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAA;QAC3B,0BAA0B;QAC1B,MAAM,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;KAC1C,CAAA;CACF"}
|
|
@@ -64,7 +64,11 @@ export function publish(db, input) {
|
|
|
64
64
|
if (input.routes.length > 0)
|
|
65
65
|
await tx.kysely
|
|
66
66
|
.insertInto('funding_routes')
|
|
67
|
-
.values(input.routes.map((route) => ({
|
|
67
|
+
.values(input.routes.map((route) => ({
|
|
68
|
+
...route,
|
|
69
|
+
capabilities: route.capabilities ?? null,
|
|
70
|
+
configuration: route.configuration ?? null,
|
|
71
|
+
})))
|
|
68
72
|
.execute();
|
|
69
73
|
await tx.kysely
|
|
70
74
|
.insertInto('funding_catalogs')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundingCatalog.js","sourceRoot":"","sources":["../../../src/db/tables/fundingCatalog.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AAKxB,MAAM,SAAS,GAAG,SAAS,CAAA;AAC3B,MAAM,cAAc,GAAG,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"fundingCatalog.js","sourceRoot":"","sources":["../../../src/db/tables/fundingCatalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookDeliveries.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookDeliveries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,OAAO,KAAK,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAA;AAE9C,wFAAwF;AACxF,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,eAAe,CAAA;AAE7C,qCAAqC;AACrC,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;AAEtC,uEAAuE;AACvE,MAAM,MAAM,mBAAmB,GAAG,IAAI,CACpC,MAAM,EACN,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,IAAI,GAAG,gBAAgB,GAAG,gBAAgB,CAC/E,CAAA;AAED,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAczD;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED;;;;;;;;;GASG;AACH,wBAAsB,IAAI,CACxB,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,IAAI,CAAC,OAAO,GACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAW9B;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,CAAC,OAAO,GACjC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAyBhC;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,gDAAgD;IAChD,KAAK,OAAO,GAAG;QACb,0CAA0C;QAC1C,IAAI,EAAE,MAAM,CAAA;QACZ,kCAAkC;QAClC,KAAK,EAAE,MAAM,CAAA;QACb,oDAAoD;QACpD,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;AAED,gFAAgF;AAChF,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,CAAC,OAAO,GAClC,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC;IAC1C,iDAAiD;IACjD,KAAK,OAAO,GAAG;QACb,0CAA0C;QAC1C,IAAI,EAAE,MAAM,CAAA;QACZ,oDAAoD;QACpD,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,gCAAgC;IAChC,KAAK,OAAO,GAAG;QACb,wEAAwE;QACxE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC3B,oCAAoC;QACpC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC1B,oDAAoD;QACpD,GAAG,EAAE,MAAM,CAAA;QACX,mFAAmF;QACnF,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC5B,CAAA;CACF;AAED;;;;;;;GAOG;AACH,wBAAsB,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ3F;AAED;;;;;;;;GAQG;AACH,wBAAsB,GAAG,CACvB,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,CASnC;
|
|
1
|
+
{"version":3,"file":"webhookDeliveries.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookDeliveries.ts"],"names":[],"mappings":"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"}
|
|
@@ -138,6 +138,9 @@ export async function get(db, subscriptionId, deliveryId, now) {
|
|
|
138
138
|
.executeTakeFirst();
|
|
139
139
|
return row ? toDelivery(row) : null;
|
|
140
140
|
}
|
|
141
|
+
// Per-statement delete bound: prune runs every minute, so a backlog drains in
|
|
142
|
+
// a few ticks instead of one unbounded DELETE churning the origin.
|
|
143
|
+
const pruneBatchLimit = 50_000;
|
|
141
144
|
/**
|
|
142
145
|
* Deletes deliveries past their retention deadline. Called best-effort from
|
|
143
146
|
* the poller tick.
|
|
@@ -149,7 +152,14 @@ export async function get(db, subscriptionId, deliveryId, now) {
|
|
|
149
152
|
export async function pruneExpired(db, now) {
|
|
150
153
|
const result = await db.kysely
|
|
151
154
|
.deleteFrom('webhook_deliveries')
|
|
155
|
+
// Repeated on the outer delete: the row recheck under concurrency re-runs
|
|
156
|
+
// only this predicate, so a row renewed mid-statement survives.
|
|
152
157
|
.where('expiresAt', '<=', now)
|
|
158
|
+
.where('id', 'in', (eb) => eb
|
|
159
|
+
.selectFrom('webhook_deliveries')
|
|
160
|
+
.select('id')
|
|
161
|
+
.where('expiresAt', '<=', now)
|
|
162
|
+
.limit(pruneBatchLimit))
|
|
153
163
|
.executeTakeFirst();
|
|
154
164
|
return Number(result.numDeletedRows);
|
|
155
165
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookDeliveries.js","sourceRoot":"","sources":["../../../src/db/tables/webhookDeliveries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"webhookDeliveries.js","sourceRoot":"","sources":["../../../src/db/tables/webhookDeliveries.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type * as Webhooks from '../../internal/Webhooks.js';
|
|
2
|
+
import type * as Db from '../Db.js';
|
|
3
|
+
import type * as db_Schema from '../Schema.js';
|
|
4
|
+
/** Columns of the `webhook_queue_completions` table, derived from `Schema.WebhookQueueCompletion`. */
|
|
5
|
+
export type Table = db_Schema.WebhookQueueCompletion;
|
|
6
|
+
/** A terminal delivery-obligation outcome. */
|
|
7
|
+
export type TerminalStatus = db_Schema.WebhookQueueCompletion['status'];
|
|
8
|
+
/**
|
|
9
|
+
* Reads the unexpired completion for a reference, if any. Rows are written by
|
|
10
|
+
* the queue-event terminal transition and only ever read for dedupe.
|
|
11
|
+
*/
|
|
12
|
+
export declare function get(db: Db.Db, reference: Webhooks.QueueReference, now: string): Promise<Table | null>;
|
|
13
|
+
/** Deletes expired completions, bounded per call; expiry is filtered at query time, so pruning is space-only. */
|
|
14
|
+
export declare function pruneExpired(db: Db.Db, now: string): Promise<number>;
|
|
15
|
+
//# sourceMappingURL=webhookQueueCompletions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhookQueueCompletions.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueCompletions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAA;AAE9C,sGAAsG;AACtG,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,sBAAsB,CAAA;AAEpD,8CAA8C;AAC9C,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;AAEvE;;;GAGG;AACH,wBAAsB,GAAG,CACvB,EAAE,EAAE,EAAE,CAAC,EAAE,EACT,SAAS,EAAE,QAAQ,CAAC,cAAc,EAClC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAUvB;AAMD,iHAAiH;AACjH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB1E"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reads the unexpired completion for a reference, if any. Rows are written by
|
|
3
|
+
* the queue-event terminal transition and only ever read for dedupe.
|
|
4
|
+
*/
|
|
5
|
+
export async function get(db, reference, now) {
|
|
6
|
+
return ((await db.kysely
|
|
7
|
+
.selectFrom('webhook_queue_completions')
|
|
8
|
+
.selectAll()
|
|
9
|
+
.where('eventId', '=', reference.eventId)
|
|
10
|
+
.where('subscriptionId', '=', reference.subscriptionId)
|
|
11
|
+
.where('expiresAt', '>', now)
|
|
12
|
+
.executeTakeFirst()) ?? null);
|
|
13
|
+
}
|
|
14
|
+
// Per-statement delete bound: prune runs every minute, so a backlog drains in
|
|
15
|
+
// a few ticks instead of one unbounded DELETE churning the origin.
|
|
16
|
+
const pruneBatchLimit = 50_000;
|
|
17
|
+
/** Deletes expired completions, bounded per call; expiry is filtered at query time, so pruning is space-only. */
|
|
18
|
+
export async function pruneExpired(db, now) {
|
|
19
|
+
const result = await db.kysely
|
|
20
|
+
.deleteFrom('webhook_queue_completions')
|
|
21
|
+
// Repeated on the outer delete: the row recheck under concurrency re-runs
|
|
22
|
+
// only this predicate, so a completion renewed mid-statement survives.
|
|
23
|
+
.where('expiresAt', '<=', now)
|
|
24
|
+
.where(({ eb, refTuple, selectFrom }) => eb(refTuple('subscriptionId', 'eventId'), 'in', selectFrom('webhook_queue_completions')
|
|
25
|
+
.select(['subscriptionId', 'eventId'])
|
|
26
|
+
.where('expiresAt', '<=', now)
|
|
27
|
+
.limit(pruneBatchLimit)
|
|
28
|
+
.$asTuple('subscriptionId', 'eventId')))
|
|
29
|
+
.executeTakeFirst();
|
|
30
|
+
return Number(result.numDeletedRows);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=webhookQueueCompletions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhookQueueCompletions.js","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueCompletions.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,GAAG,CACvB,EAAS,EACT,SAAkC,EAClC,GAAW;IAEX,OAAO,CACL,CAAC,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,2BAA2B,CAAC;SACvC,SAAS,EAAE;SACX,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC;SACxC,KAAK,CAAC,gBAAgB,EAAE,GAAG,EAAE,SAAS,CAAC,cAAc,CAAC;SACtD,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC;SAC5B,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAC/B,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,mEAAmE;AACnE,MAAM,eAAe,GAAG,MAAM,CAAA;AAE9B,iHAAiH;AACjH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,EAAS,EAAE,GAAW;IACvD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM;SAC3B,UAAU,CAAC,2BAA2B,CAAC;QACxC,0EAA0E;QAC1E,uEAAuE;SACtE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC;SAC7B,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CACtC,EAAE,CACA,QAAQ,CAAC,gBAAgB,EAAE,SAAS,CAAC,EACrC,IAAI,EACJ,UAAU,CAAC,2BAA2B,CAAC;SACpC,MAAM,CAAC,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;SACrC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC;SAC7B,KAAK,CAAC,eAAe,CAAC;SACtB,QAAQ,CAAC,gBAAgB,EAAE,SAAS,CAAC,CACzC,CACF;SACA,gBAAgB,EAAE,CAAA;IACrB,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;AACtC,CAAC"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { type Generated, type Insertable, type Selectable } from 'kysely';
|
|
2
2
|
import type * as Webhooks from '../../internal/Webhooks.js';
|
|
3
3
|
import type * as Db from '../Db.js';
|
|
4
|
+
import * as WebhookQueueCompletions from './webhookQueueCompletions.js';
|
|
4
5
|
import type * as db_Schema from '../Schema.js';
|
|
5
6
|
/** Columns of the `webhook_queue_events` table, derived from `Schema.WebhookQueueEvent`. */
|
|
6
|
-
export type Table = Omit<db_Schema.WebhookQueueEvent, 'attemptCount' | 'attemptingAt' | 'nextAttemptAt' | 'observedAt' | 'status'> & {
|
|
7
|
+
export type Table = Omit<db_Schema.WebhookQueueEvent, 'attemptCount' | 'attemptingAt' | 'expiresAt' | 'nextAttemptAt' | 'observedAt' | 'status'> & {
|
|
7
8
|
/** Delivery attempts claimed so far; database default 0. */
|
|
8
9
|
attemptCount: Generated<number>;
|
|
9
10
|
/** ISO timestamp of the current claim; database default null. */
|
|
10
11
|
attemptingAt: Generated<string | null>;
|
|
12
|
+
/** Legacy dedupe deadline; unwritten since completions took over. */
|
|
13
|
+
expiresAt: Generated<string | null>;
|
|
11
14
|
/** ISO retry due time; database default null (due immediately). */
|
|
12
15
|
nextAttemptAt: Generated<string | null>;
|
|
13
16
|
/** ISO head-observation stamp; database default null (replays carry none). */
|
|
@@ -17,18 +20,15 @@ export type Table = Omit<db_Schema.WebhookQueueEvent, 'attemptCount' | 'attempti
|
|
|
17
20
|
};
|
|
18
21
|
/** A stored webhook Queue event. */
|
|
19
22
|
export type Record = Selectable<Table>;
|
|
20
|
-
/** A terminal delivery-obligation outcome. */
|
|
21
|
-
export type TerminalStatus = Exclude<db_Schema.WebhookQueueEvent['status'], 'pending'>;
|
|
22
23
|
/**
|
|
23
|
-
* Reads one pending envelope.
|
|
24
|
-
*
|
|
24
|
+
* Reads one pending envelope. The status filter only ever excludes rows
|
|
25
|
+
* completed before the completions split; completions now leave the table.
|
|
25
26
|
*/
|
|
26
27
|
export declare function get(db: Db.Db, reference: Webhooks.QueueReference): Promise<Webhooks.QueueEvent | null>;
|
|
27
28
|
/**
|
|
28
|
-
* Stages envelopes as fresh obligations.
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* dedupe row pruning has not yet reclaimed never blocks a replay.
|
|
29
|
+
* Stages envelopes as fresh obligations. Unexpired completions and any
|
|
30
|
+
* existing row suppress the replay; a replay stages only when neither exists,
|
|
31
|
+
* which a completion past its dedupe window guarantees for completed work.
|
|
32
32
|
*/
|
|
33
33
|
export declare function ensure(db: Db.Db, rows: readonly Insertable<Table>[]): Promise<number>;
|
|
34
34
|
/** Claims one due pending obligation with a single atomic update. */
|
|
@@ -53,13 +53,13 @@ export declare namespace claim {
|
|
|
53
53
|
nextAttemptAt: string | null;
|
|
54
54
|
type: 'scheduled';
|
|
55
55
|
} | {
|
|
56
|
-
status: TerminalStatus;
|
|
56
|
+
status: WebhookQueueCompletions.TerminalStatus;
|
|
57
57
|
type: 'terminal';
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
60
|
/**
|
|
61
|
-
* Marks a claimed obligation terminal
|
|
62
|
-
*
|
|
61
|
+
* Marks a claimed obligation terminal: one atomic statement deletes the queue
|
|
62
|
+
* row and writes the insert-only completion that starts the dedupe window.
|
|
63
63
|
* The `attemptingAt` predicate fences stale claimants.
|
|
64
64
|
*/
|
|
65
65
|
export declare function complete(db: Db.Db, reference: Webhooks.QueueReference, options: complete.Options): Promise<boolean>;
|
|
@@ -68,10 +68,10 @@ export declare namespace complete {
|
|
|
68
68
|
type Options = {
|
|
69
69
|
/** Claim marker returned by {@link claim}; fences stale claimants. */
|
|
70
70
|
claimedAt: string;
|
|
71
|
-
/**
|
|
71
|
+
/** ISO retention deadline for the dedupe completion. */
|
|
72
72
|
expiresAt: string;
|
|
73
73
|
/** Terminal outcome. */
|
|
74
|
-
status: TerminalStatus;
|
|
74
|
+
status: WebhookQueueCompletions.TerminalStatus;
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
77
|
/** Releases a claim and schedules the next attempt; fenced like {@link complete}. */
|
|
@@ -115,10 +115,4 @@ export declare namespace pending {
|
|
|
115
115
|
oldestDueAt: string | null;
|
|
116
116
|
};
|
|
117
117
|
}
|
|
118
|
-
/**
|
|
119
|
-
* Deletes terminal dedupe rows past their retention deadline. Pending rows
|
|
120
|
-
* never expire: owed work drains only through terminal transitions
|
|
121
|
-
* (delivery, permanent failure, or the skip after auto-disable).
|
|
122
|
-
*/
|
|
123
|
-
export declare function pruneExpired(db: Db.Db, now: string): Promise<number>;
|
|
124
118
|
//# sourceMappingURL=webhookQueueEvents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookQueueEvents.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAO,MAAM,QAAQ,CAAA;AAEtG,OAAO,KAAK,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAA;AAE9C,4FAA4F;AAC5F,MAAM,MAAM,KAAK,GAAG,IAAI,CACtB,SAAS,CAAC,iBAAiB,EAC3B,cAAc,GAAG,cAAc,GAAG,eAAe,GAAG,YAAY,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"webhookQueueEvents.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueEvents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { sql } from 'kysely'; // prettier-ignore
|
|
2
|
+
import * as WebhookQueueCompletions from './webhookQueueCompletions.js';
|
|
2
3
|
/**
|
|
3
|
-
* Reads one pending envelope.
|
|
4
|
-
*
|
|
4
|
+
* Reads one pending envelope. The status filter only ever excludes rows
|
|
5
|
+
* completed before the completions split; completions now leave the table.
|
|
5
6
|
*/
|
|
6
7
|
export async function get(db, reference) {
|
|
7
8
|
return ((await db.kysely
|
|
@@ -13,39 +14,44 @@ export async function get(db, reference) {
|
|
|
13
14
|
.executeTakeFirst()) ?? null);
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
|
-
* Stages envelopes as fresh obligations.
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* dedupe row pruning has not yet reclaimed never blocks a replay.
|
|
17
|
+
* Stages envelopes as fresh obligations. Unexpired completions and any
|
|
18
|
+
* existing row suppress the replay; a replay stages only when neither exists,
|
|
19
|
+
* which a completion past its dedupe window guarantees for completed work.
|
|
20
20
|
*/
|
|
21
21
|
export async function ensure(db, rows) {
|
|
22
22
|
if (rows.length === 0)
|
|
23
23
|
return 0;
|
|
24
|
+
const values = sql.join(rows.map((row) => sql `(${row.subscriptionId}::text, ${row.eventId}::text, ${JSON.stringify(row.envelope)}::jsonb, ${row.createdAt}::text, ${row.nextAttemptAt ?? null}::text, ${row.observedAt ?? null}::text)`));
|
|
25
|
+
// The VALUES source is raw because kysely has no table constructor for it,
|
|
26
|
+
// but both real tables stay in the builder so WithSchemaPlugin qualifies
|
|
27
|
+
// them (previews isolate by schema; raw identifiers would escape it). The
|
|
28
|
+
// completion check must ride the insert: a separate read would let a
|
|
29
|
+
// completion commit between the statements and re-stage just-finished work.
|
|
30
|
+
// `column1..6` are Postgres's default VALUES names, in the row order above;
|
|
31
|
+
// the window comparison uses each row's own staging time, not a shared clock.
|
|
32
|
+
// Conflicts only ever hit pending rows (or pre-split terminal rows during
|
|
33
|
+
// the drain), and both suppress the replay; a legitimate post-expiry replay
|
|
34
|
+
// meets no conflict because its completed row was deleted.
|
|
24
35
|
const result = await db.kysely
|
|
25
36
|
.insertInto('webhook_queue_events')
|
|
26
|
-
.
|
|
27
|
-
.
|
|
28
|
-
.
|
|
29
|
-
.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
.
|
|
43
|
-
eb('webhook_queue_events.status', '!=', 'pending'),
|
|
44
|
-
eb('webhook_queue_events.expiresAt', '<=', eb.ref('excluded.createdAt')),
|
|
45
|
-
])))
|
|
37
|
+
.columns(['subscriptionId', 'eventId', 'envelope', 'createdAt', 'nextAttemptAt', 'observedAt'])
|
|
38
|
+
.expression((eb) => eb
|
|
39
|
+
.selectFrom(sql `(VALUES ${values})`.as('v'))
|
|
40
|
+
.select([
|
|
41
|
+
sql `v.column1`.as('subscriptionId'),
|
|
42
|
+
sql `v.column2`.as('eventId'),
|
|
43
|
+
sql `v.column3`.as('envelope'),
|
|
44
|
+
sql `v.column4`.as('createdAt'),
|
|
45
|
+
sql `v.column5`.as('nextAttemptAt'),
|
|
46
|
+
sql `v.column6`.as('observedAt'),
|
|
47
|
+
])
|
|
48
|
+
.where(({ exists, not, selectFrom }) => not(exists(selectFrom('webhook_queue_completions')
|
|
49
|
+
.select('eventId')
|
|
50
|
+
.where('subscriptionId', '=', sql `v.column1`)
|
|
51
|
+
.where('eventId', '=', sql `v.column2`)
|
|
52
|
+
.where('expiresAt', '>', sql `v.column4`)))))
|
|
53
|
+
.onConflict((oc) => oc.columns(['subscriptionId', 'eventId']).doNothing())
|
|
46
54
|
.executeTakeFirst();
|
|
47
|
-
// The command tag counts inserted rows plus replaced expired rows; live
|
|
48
|
-
// conflicts fall out of the conditional update and are not counted.
|
|
49
55
|
return Number(result.numInsertedOrUpdatedRows ?? 0n);
|
|
50
56
|
}
|
|
51
57
|
/** Due, unclaimed pending work: shared by {@link claim} and {@link due}. */
|
|
@@ -68,14 +74,24 @@ export async function claim(db, reference, options) {
|
|
|
68
74
|
.executeTakeFirst();
|
|
69
75
|
if (claimed)
|
|
70
76
|
return { record: claimed, type: 'claimed' };
|
|
77
|
+
// Queue first, completions second: a complete() landing between the reads
|
|
78
|
+
// then still surfaces its completion, so a finished obligation never reads
|
|
79
|
+
// as missing, the one claim outcome alerts treat as a fault.
|
|
71
80
|
const existing = await db.kysely
|
|
72
81
|
.selectFrom('webhook_queue_events')
|
|
73
82
|
.select(['attemptingAt', 'nextAttemptAt', 'status'])
|
|
74
83
|
.where('subscriptionId', '=', reference.subscriptionId)
|
|
75
84
|
.where('eventId', '=', reference.eventId)
|
|
76
85
|
.executeTakeFirst();
|
|
77
|
-
if (!existing)
|
|
86
|
+
if (!existing) {
|
|
87
|
+
// An unexpired completion reads as terminal so claim-outcome metrics keep
|
|
88
|
+
// their meaning; an expired one reads as missing, like a pruned row.
|
|
89
|
+
const completed = await WebhookQueueCompletions.get(db, reference, options.now);
|
|
90
|
+
if (completed)
|
|
91
|
+
return { status: completed.status, type: 'terminal' };
|
|
78
92
|
return { type: 'missing' };
|
|
93
|
+
}
|
|
94
|
+
// Reachable only for rows completed before the completions split.
|
|
79
95
|
if (existing.status !== 'pending')
|
|
80
96
|
return { status: existing.status, type: 'terminal' };
|
|
81
97
|
if (existing.attemptingAt !== null && existing.attemptingAt > options.staleBefore)
|
|
@@ -83,20 +99,38 @@ export async function claim(db, reference, options) {
|
|
|
83
99
|
return { nextAttemptAt: existing.nextAttemptAt, type: 'scheduled' };
|
|
84
100
|
}
|
|
85
101
|
/**
|
|
86
|
-
* Marks a claimed obligation terminal
|
|
87
|
-
*
|
|
102
|
+
* Marks a claimed obligation terminal: one atomic statement deletes the queue
|
|
103
|
+
* row and writes the insert-only completion that starts the dedupe window.
|
|
88
104
|
* The `attemptingAt` predicate fences stale claimants.
|
|
89
105
|
*/
|
|
90
106
|
export async function complete(db, reference, options) {
|
|
91
107
|
const result = await db.kysely
|
|
92
|
-
.
|
|
93
|
-
.
|
|
108
|
+
.with('done', (qb) => qb
|
|
109
|
+
.deleteFrom('webhook_queue_events')
|
|
94
110
|
.where('subscriptionId', '=', reference.subscriptionId)
|
|
95
111
|
.where('eventId', '=', reference.eventId)
|
|
96
112
|
.where('status', '=', 'pending')
|
|
97
113
|
.where('attemptingAt', '=', options.claimedAt)
|
|
114
|
+
.returning(['subscriptionId', 'eventId']))
|
|
115
|
+
.insertInto('webhook_queue_completions')
|
|
116
|
+
.columns(['subscriptionId', 'eventId', 'status', 'expiresAt'])
|
|
117
|
+
.expression((eb) => eb
|
|
118
|
+
.selectFrom('done')
|
|
119
|
+
.select((s) => [
|
|
120
|
+
'subscriptionId',
|
|
121
|
+
'eventId',
|
|
122
|
+
s.val(options.status).as('status'),
|
|
123
|
+
s.val(options.expiresAt).as('expiresAt'),
|
|
124
|
+
]))
|
|
125
|
+
// Re-completing a replayed obligation: the latest delivery outcome wins
|
|
126
|
+
// and retention restarts, matching pre-split replay semantics; doNothing
|
|
127
|
+
// would also report zero rows and fail a fence that won.
|
|
128
|
+
.onConflict((oc) => oc.columns(['subscriptionId', 'eventId']).doUpdateSet((eb) => ({
|
|
129
|
+
expiresAt: eb.ref('excluded.expiresAt'),
|
|
130
|
+
status: eb.ref('excluded.status'),
|
|
131
|
+
})))
|
|
98
132
|
.executeTakeFirst();
|
|
99
|
-
return result.
|
|
133
|
+
return result.numInsertedOrUpdatedRows === 1n;
|
|
100
134
|
}
|
|
101
135
|
/** Releases a claim and schedules the next attempt; fenced like {@link complete}. */
|
|
102
136
|
export async function schedule(db, reference, options) {
|
|
@@ -148,17 +182,4 @@ export async function pending(db, options) {
|
|
|
148
182
|
oldestDueAt: row.oldestDueAt,
|
|
149
183
|
};
|
|
150
184
|
}
|
|
151
|
-
/**
|
|
152
|
-
* Deletes terminal dedupe rows past their retention deadline. Pending rows
|
|
153
|
-
* never expire: owed work drains only through terminal transitions
|
|
154
|
-
* (delivery, permanent failure, or the skip after auto-disable).
|
|
155
|
-
*/
|
|
156
|
-
export async function pruneExpired(db, now) {
|
|
157
|
-
const result = await db.kysely
|
|
158
|
-
.deleteFrom('webhook_queue_events')
|
|
159
|
-
.where('expiresAt', '<=', now)
|
|
160
|
-
.where('status', '!=', 'pending')
|
|
161
|
-
.executeTakeFirst();
|
|
162
|
-
return Number(result.numDeletedRows);
|
|
163
|
-
}
|
|
164
185
|
//# sourceMappingURL=webhookQueueEvents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookQueueEvents.js","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4E,GAAG,EAAE,MAAM,QAAQ,CAAA,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"webhookQueueEvents.js","sourceRoot":"","sources":["../../../src/db/tables/webhookQueueEvents.ts"],"names":[],"mappings":"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"}
|
|
@@ -189,24 +189,35 @@ export declare namespace listActiveForFundingDeposit {
|
|
|
189
189
|
export declare function getCursor(db: Db.Db, id: string): Promise<string | null>;
|
|
190
190
|
/**
|
|
191
191
|
* Records a successful delivery: resets the consecutive-failure counter and
|
|
192
|
-
* stamps `lastDeliveryAt`.
|
|
192
|
+
* stamps `lastDeliveryAt`. Skipped when neither field would move, so
|
|
193
|
+
* deliveries stop contending on the row's lock.
|
|
193
194
|
*
|
|
194
195
|
* @param db - The database.
|
|
195
196
|
* @param id - The subscription id (`wh_…`).
|
|
196
|
-
* @param
|
|
197
|
-
* @returns The updated subscription, or `undefined` when
|
|
197
|
+
* @param options - Delivery timestamp and stamp-staleness bound.
|
|
198
|
+
* @returns The updated subscription, or `undefined` when nothing was written.
|
|
198
199
|
*/
|
|
199
|
-
export declare function recordSuccess(db: Db.Db, id: string,
|
|
200
|
+
export declare function recordSuccess(db: Db.Db, id: string, options: recordSuccess.Options): Promise<Webhooks.Subscription | undefined>;
|
|
201
|
+
export declare namespace recordSuccess {
|
|
202
|
+
/** Clock bounds for one success record. */
|
|
203
|
+
type Options = {
|
|
204
|
+
/** Delivery timestamp (ISO). */
|
|
205
|
+
now: string;
|
|
206
|
+
/** Rewrite the stamp only when it predates this (ISO). */
|
|
207
|
+
staleBefore: string;
|
|
208
|
+
};
|
|
209
|
+
}
|
|
200
210
|
/**
|
|
201
211
|
* Records a failed delivery: atomically increments the consecutive-failure
|
|
202
212
|
* counter and disables the subscription once it reaches `maxFailures` (raw
|
|
203
213
|
* fragments use storage column names — they bypass the camelCase mapping).
|
|
214
|
+
* Skipped once disabled at the cap, when nothing would move.
|
|
204
215
|
*
|
|
205
216
|
* @param db - The database.
|
|
206
217
|
* @param id - The subscription id (`wh_…`).
|
|
207
218
|
* @param maxFailures - Consecutive failures before auto-disabling.
|
|
208
219
|
* @param now - Failure timestamp (ISO).
|
|
209
|
-
* @returns The updated subscription, or `undefined` when
|
|
220
|
+
* @returns The updated subscription, or `undefined` when nothing was written.
|
|
210
221
|
*/
|
|
211
222
|
export declare function recordFailure(db: Db.Db, id: string, maxFailures: number, now: string): Promise<Webhooks.Subscription | undefined>;
|
|
212
223
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookSubscriptions.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookSubscriptions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"webhookSubscriptions.d.ts","sourceRoot":"","sources":["../../../src/db/tables/webhookSubscriptions.ts"],"names":[],"mappings":"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"}
|