tapimo 0.15.0 → 0.15.1

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.
Files changed (91) hide show
  1. package/dist/App.d.ts +26 -26
  2. package/dist/admin/App.d.ts +3 -0
  3. package/dist/admin/App.d.ts.map +1 -1
  4. package/dist/admin/apps/api-keys.d.ts +41 -41
  5. package/dist/admin/apps/routes.d.ts +64 -64
  6. package/dist/admin/apps/verified-tokens.d.ts +161 -155
  7. package/dist/admin/apps/verified-tokens.d.ts.map +1 -1
  8. package/dist/admin/apps/verified-tokens.js +24 -4
  9. package/dist/admin/apps/verified-tokens.js.map +1 -1
  10. package/dist/admin/ui.generated.d.ts +1 -1
  11. package/dist/admin/ui.generated.d.ts.map +1 -1
  12. package/dist/admin/ui.generated.js +201 -209
  13. package/dist/admin/ui.generated.js.map +1 -1
  14. package/dist/apps/data/routes/activities.d.ts +357 -357
  15. package/dist/apps/data/routes/blocks.d.ts +125 -125
  16. package/dist/apps/data/routes/fee-amm.d.ts +108 -108
  17. package/dist/apps/data/routes/fee-amm.d.ts.map +1 -1
  18. package/dist/apps/data/routes/fee-amm.js +10 -2
  19. package/dist/apps/data/routes/fee-amm.js.map +1 -1
  20. package/dist/apps/data/routes/indexer.d.ts +43 -43
  21. package/dist/apps/data/routes/receipts.d.ts +235 -235
  22. package/dist/apps/data/routes/rpc.js +45 -11
  23. package/dist/apps/data/routes/rpc.js.map +1 -1
  24. package/dist/apps/data/routes/transfers.d.ts +81 -81
  25. package/dist/apps/data/routes/valuation.d.ts +32 -32
  26. package/dist/apps/data/routes/verified-tokens.d.ts +86 -86
  27. package/dist/apps/data/routes/webhooks.d.ts +1 -1
  28. package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
  29. package/dist/apps/data/routes/webhooks.js +17 -10
  30. package/dist/apps/data/routes/webhooks.js.map +1 -1
  31. package/dist/apps/data/routes/zones.d.ts +31 -31
  32. package/dist/apps/management/App.d.ts +26 -26
  33. package/dist/apps/management/routes/api-keys.d.ts +246 -246
  34. package/dist/apps/management/routes/invitations.d.ts +138 -138
  35. package/dist/apps/management/routes/invite-links.d.ts +168 -168
  36. package/dist/apps/management/routes/orgs.d.ts +98 -98
  37. package/dist/apps/management/routes/projects.d.ts +125 -125
  38. package/dist/apps/management/routes/verified-token-requests.d.ts +95 -95
  39. package/dist/apps/management/routes/verified-token-requests.d.ts.map +1 -1
  40. package/dist/apps/management/routes/verified-token-requests.js +7 -9
  41. package/dist/apps/management/routes/verified-token-requests.js.map +1 -1
  42. package/dist/apps/management/routes/webhooks.d.ts +423 -423
  43. package/dist/apps/mcp.d.ts.map +1 -1
  44. package/dist/apps/mcp.js +16 -3
  45. package/dist/apps/mcp.js.map +1 -1
  46. package/dist/apps/mpp/App.d.ts +44 -44
  47. package/dist/apps/routes/routes/chains.d.ts +25 -25
  48. package/dist/apps/routes/routes/quotes.d.ts +87 -87
  49. package/dist/apps/routes/routes/transfers.d.ts +438 -438
  50. package/dist/db/Db.d.ts.map +1 -1
  51. package/dist/db/Db.js +5 -0
  52. package/dist/db/Db.js.map +1 -1
  53. package/dist/db/tables/verifiedTokenRequests.d.ts +21 -4
  54. package/dist/db/tables/verifiedTokenRequests.d.ts.map +1 -1
  55. package/dist/db/tables/verifiedTokenRequests.js +65 -44
  56. package/dist/db/tables/verifiedTokenRequests.js.map +1 -1
  57. package/dist/internal/Auth.d.ts +16 -0
  58. package/dist/internal/Auth.d.ts.map +1 -1
  59. package/dist/internal/Auth.js +31 -8
  60. package/dist/internal/Auth.js.map +1 -1
  61. package/dist/internal/routes/providers/relay.d.ts +1 -1
  62. package/dist/internal/routes/providers/relay.js +1 -1
  63. package/dist/internal/routes/providers/relay.js.map +1 -1
  64. package/package.json +1 -1
  65. package/src/admin/apps/verified-tokens.test.ts +32 -0
  66. package/src/admin/apps/verified-tokens.ts +30 -4
  67. package/src/admin/ui/src/lib/verified-tokens.ts +24 -9
  68. package/src/admin/ui/src/routes/__root.tsx +1 -1
  69. package/src/admin/ui/src/routes/organizations.tsx +34 -4
  70. package/src/admin/ui/src/routes/verified-tokens.tsx +64 -20
  71. package/src/admin/ui.generated.ts +202 -263
  72. package/src/apps/data/App.test.ts +26 -0
  73. package/src/apps/data/routes/fee-amm.test.ts +19 -0
  74. package/src/apps/data/routes/fee-amm.ts +10 -2
  75. package/src/apps/data/routes/rpc.test.ts +32 -0
  76. package/src/apps/data/routes/rpc.ts +47 -10
  77. package/src/apps/data/routes/webhooks.scan.test.ts +29 -0
  78. package/src/apps/data/routes/webhooks.test.ts +6 -0
  79. package/src/apps/data/routes/webhooks.ts +25 -12
  80. package/src/apps/management/routes/verified-token-requests.test.ts +16 -2
  81. package/src/apps/management/routes/verified-token-requests.ts +7 -10
  82. package/src/apps/mcp.test.ts +108 -25
  83. package/src/apps/mcp.ts +15 -3
  84. package/src/db/Db.ts +9 -0
  85. package/src/db/tables/routesDeposits.test.ts +72 -0
  86. package/src/db/tables/verifiedTokenRequests.test.ts +39 -20
  87. package/src/db/tables/verifiedTokenRequests.ts +80 -44
  88. package/src/internal/Auth.test.ts +92 -0
  89. package/src/internal/Auth.ts +51 -9
  90. package/src/internal/routes/providers/relay.test.ts +59 -0
  91. package/src/internal/routes/providers/relay.ts +1 -1
@@ -1,41 +1,56 @@
1
1
  import { sql } from 'kysely';
2
2
  import * as Id from '../../internal/Id.js';
3
+ /** Maximum pending verification requests retained for one requester. */
4
+ export const maxPendingPerRequester = 10;
3
5
  /**
4
6
  * Inserts a pending request; `undefined` when a pending request for
5
- * (chainId, address) already exists.
7
+ * (chainId, address) already exists. Throws `PendingLimitError` when the
8
+ * requester already has the maximum retained pending requests.
6
9
  */
7
10
  export function create(db, input) {
8
11
  const now = new Date().toISOString();
9
- return db.kysely
10
- .insertInto('verified_token_requests')
11
- .values({
12
- address: input.address,
13
- chainId: input.chainId,
14
- createdAt: now,
15
- currency: input.currency,
16
- decimals: input.decimals,
17
- id: Id.generate('vtr'),
18
- logo: input.logo ?? null,
19
- logoUri: input.logoUri ?? null,
20
- name: input.name,
21
- note: input.note ?? null,
22
- orgId: input.orgId,
23
- requestedBy: input.requestedBy,
24
- reviewNote: null,
25
- reviewedAt: null,
26
- reviewedBy: null,
27
- status: 'pending',
28
- symbol: input.symbol,
29
- updatedAt: now,
30
- })
31
- .onConflict((oc) => oc
32
- .columns(['chainId', 'address'])
33
- // `sql.lit` keeps the predicate literal; a bound parameter would
34
- // defeat partial-index inference for the conflict target.
35
- .where('status', '=', sql.lit('pending'))
36
- .doNothing())
37
- .returningAll()
38
- .executeTakeFirst();
12
+ return db.transaction(async (tx) => {
13
+ // Serialize admission per requester so parallel organizations cannot exceed the retained queue cap.
14
+ await sql `SELECT pg_advisory_xact_lock(hashtextextended(${`verified-token-requests:${input.requestedBy}`}, 0))`.execute(tx.kysely);
15
+ const pending = await tx.kysely
16
+ .selectFrom('verified_token_requests')
17
+ .select(({ fn }) => fn.countAll().as('count'))
18
+ .where('requestedBy', '=', input.requestedBy)
19
+ .where('status', '=', 'pending')
20
+ .executeTakeFirstOrThrow();
21
+ if (Number(pending.count) >= maxPendingPerRequester)
22
+ throw new PendingLimitError();
23
+ return tx.kysely
24
+ .insertInto('verified_token_requests')
25
+ .values({
26
+ address: input.address,
27
+ chainId: input.chainId,
28
+ createdAt: now,
29
+ currency: input.currency,
30
+ decimals: input.decimals,
31
+ id: Id.generate('vtr'),
32
+ logo: input.logo ?? null,
33
+ logoUri: input.logoUri ?? null,
34
+ name: input.name,
35
+ note: input.note ?? null,
36
+ orgId: input.orgId,
37
+ requestedBy: input.requestedBy,
38
+ reviewNote: null,
39
+ reviewedAt: null,
40
+ reviewedBy: null,
41
+ status: 'pending',
42
+ symbol: input.symbol,
43
+ updatedAt: now,
44
+ })
45
+ .onConflict((oc) => oc
46
+ .columns(['chainId', 'address'])
47
+ // `sql.lit` keeps the predicate literal; a bound parameter would
48
+ // defeat partial-index inference for the conflict target.
49
+ .where('status', '=', sql.lit('pending'))
50
+ .doNothing())
51
+ .returningAll()
52
+ .executeTakeFirst();
53
+ });
39
54
  }
40
55
  /** Lists an organization's requests, newest first. */
41
56
  export function list(db, orgId) {
@@ -50,14 +65,26 @@ export function list(db, orgId) {
50
65
  * Lists requests in one status globally, oldest first (review-queue order),
51
66
  * with the requesting organization's current name when it still exists.
52
67
  */
53
- export function listByStatus(db, status) {
54
- return db.kysely
68
+ export function listByStatus(db, status, options) {
69
+ const { cursor } = options;
70
+ let query = db.kysely
55
71
  .selectFrom('verified_token_requests')
56
72
  .leftJoin('organizations', 'organizations.id', 'verified_token_requests.orgId')
57
73
  .selectAll('verified_token_requests')
58
74
  .select('organizations.name as orgName')
59
- .where('status', '=', status)
75
+ .where('status', '=', status);
76
+ if (cursor)
77
+ query = query.where((eb) => eb.or([
78
+ eb('verified_token_requests.createdAt', '>', cursor.createdAt),
79
+ eb.and([
80
+ eb('verified_token_requests.createdAt', '=', cursor.createdAt),
81
+ eb('verified_token_requests.id', '>', cursor.id),
82
+ ]),
83
+ ]));
84
+ return query
60
85
  .orderBy('verified_token_requests.createdAt', 'asc')
86
+ .orderBy('verified_token_requests.id', 'asc')
87
+ .limit(options.limit)
61
88
  .execute();
62
89
  }
63
90
  /** Gets a request by id. */
@@ -68,16 +95,6 @@ export function get(db, id) {
68
95
  .where('id', '=', id)
69
96
  .executeTakeFirst();
70
97
  }
71
- /** Counts an organization's pending requests. */
72
- export async function countPending(db, orgId) {
73
- const row = await db.kysely
74
- .selectFrom('verified_token_requests')
75
- .select(({ fn }) => fn.countAll().as('count'))
76
- .where('orgId', '=', orgId)
77
- .where('status', '=', 'pending')
78
- .executeTakeFirstOrThrow();
79
- return Number(row.count);
80
- }
81
98
  /** Hard-deletes an org-scoped request while pending; `undefined` otherwise. */
82
99
  export function remove(db, orgId, id) {
83
100
  return db.kysely
@@ -117,4 +134,8 @@ export function toRequest(record) {
117
134
  ...(logoUri === null ? {} : { logoUri }),
118
135
  };
119
136
  }
137
+ /** The requester already has the maximum retained pending requests. */
138
+ export class PendingLimitError extends Error {
139
+ name = 'VerifiedTokenRequests.PendingLimitError';
140
+ }
120
141
  //# sourceMappingURL=verifiedTokenRequests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifiedTokenRequests.js","sourceRoot":"","sources":["../../../src/db/tables/verifiedTokenRequests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifiedTokenRequests.js","sourceRoot":"","sources":["../../../src/db/tables/verifiedTokenRequests.ts"],"names":[],"mappings":"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"}
@@ -108,6 +108,8 @@ type MppHandler = {
108
108
  export type PolicyOverride = {
109
109
  /** API-key lane: pass quota/scopes overrides, or a boolean to enable/disable. */
110
110
  apiKey?: {
111
+ /** Optional counter bucket that isolates this route's quota. */
112
+ bucket?: string | undefined;
111
113
  /** API-key quota override for this route (a protective per-route cap). */
112
114
  rateLimit?: RateLimit.Limit | undefined;
113
115
  /** Required API-key scopes override for this route. */
@@ -115,6 +117,8 @@ export type PolicyOverride = {
115
117
  } | boolean | undefined;
116
118
  /** MPP paid lane: object to override the Session request, or boolean to enable/disable. */
117
119
  mpp?: {
120
+ /** Optional counter bucket that isolates this route's quota. */
121
+ bucket?: string | undefined;
118
122
  /** Paid-request quota override for this route (a protective per-route cap). */
119
123
  rateLimit?: RateLimit.Limit | undefined;
120
124
  /** Tempo Session request override for this route. */
@@ -122,6 +126,8 @@ export type PolicyOverride = {
122
126
  } | boolean | undefined;
123
127
  /** Public lane: object to override the quota, or boolean to enable/disable. */
124
128
  public?: {
129
+ /** Optional counter bucket that isolates this route's quota. */
130
+ bucket?: string | undefined;
125
131
  /** Anonymous public quota override for this route. */
126
132
  rateLimit?: RateLimit.Limit | undefined;
127
133
  } | boolean | undefined;
@@ -194,6 +200,10 @@ export type Variables = {
194
200
  export declare function getPrincipal<environment extends Environment>(c: hono_Context<environment>): NonNullable<(import("hono/utils/types").IsAny<environment> extends true ? {
195
201
  Variables: import("hono").ContextVariableMap & Record<string, any>;
196
202
  } : environment)["Variables"]["principal"]> | null;
203
+ /** Resolves the caller IP from configured trusted metadata. */
204
+ export declare function getTrustedClientIp<environment extends Environment>(c: hono_Context<environment>): string | undefined;
205
+ /** Marks a synthesized in-process request with its trusted caller IP address. */
206
+ export declare function trustClientIp(request: Request, address: string): void;
197
207
  /**
198
208
  * Guards `:orgId` routes and resolves the organization. Sessions require membership, API keys require ownership, and the super admin bypasses ownership.
199
209
  */
@@ -548,6 +558,8 @@ export declare namespace require {
548
558
  type Policy = {
549
559
  /** API-key access policy. */
550
560
  apiKey?: {
561
+ /** Optional counter bucket that isolates this route's quota. */
562
+ bucket?: string | undefined;
551
563
  /** API-key quota override for this route (a protective per-route cap). */
552
564
  rateLimit?: RateLimit.Limit | undefined;
553
565
  /**
@@ -559,6 +571,8 @@ export declare namespace require {
559
571
  } | undefined;
560
572
  /** MPP payment access policy. */
561
573
  mpp?: {
574
+ /** Optional counter bucket that isolates this route's quota. */
575
+ bucket?: string | undefined;
562
576
  /** Paid-request quota override for this route (a protective per-route cap). */
563
577
  rateLimit?: RateLimit.Limit | undefined;
564
578
  /** Tempo Session request policy. */
@@ -566,6 +580,8 @@ export declare namespace require {
566
580
  } | undefined;
567
581
  /** Public access policy. */
568
582
  public?: {
583
+ /** Optional counter bucket that isolates this route's quota. */
584
+ bucket?: string | undefined;
569
585
  /** Anonymous public quota for this route. */
570
586
  rateLimit: RateLimit.Limit;
571
587
  } | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Auth.d.ts","sourceRoot":"","sources":["../../src/internal/Auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Auth.d.ts","sourceRoot":"","sources":["../../src/internal/Auth.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ import * as Timing from './Timing.js';
35
35
  import * as Users from '../db/tables/users.js';
36
36
  const policySymbol = Symbol('tempo-api.auth.policy');
37
37
  const mppManagementSymbol = Symbol('tempo-api.auth.mpp-management');
38
+ const trustedClientIps = new WeakMap();
38
39
  const defaultApiKeyRateLimit = { limit: 10_000, period: 'minute' };
39
40
  const defaultIdentitySessionTtl = 24 * 60 * 60;
40
41
  const defaultMppRateLimit = { limit: 100, period: 'minute' };
@@ -56,6 +57,15 @@ function isIdentityTokenError(error) {
56
57
  export function getPrincipal(c) {
57
58
  return c.get('principal') ?? null;
58
59
  }
60
+ /** Resolves the caller IP from configured trusted metadata. */
61
+ export function getTrustedClientIp(c) {
62
+ const auth = c.get('auth');
63
+ return auth ? trustedClientIp(c, auth) : resolveTrustedClientIp(c.req.raw, undefined);
64
+ }
65
+ /** Marks a synthesized in-process request with its trusted caller IP address. */
66
+ export function trustClientIp(request, address) {
67
+ trustedClientIps.set(request, address);
68
+ }
59
69
  /**
60
70
  * Guards `:orgId` routes and resolves the organization. Sessions require membership, API keys require ownership, and the super admin bypasses ownership.
61
71
  */
@@ -386,7 +396,9 @@ function resolveRequestPolicy(c, options) {
386
396
  const inheritedKey = `${inheritedMethod.toUpperCase()} ${key.slice(key.indexOf(' ') + 1)}`;
387
397
  return overrides?.[inheritedKey];
388
398
  })();
389
- const routeOverride = management && configuredOverride ? { mpp: configuredOverride.mpp } : configuredOverride;
399
+ // Generated management routes already materialize the GET's MPP contract.
400
+ // Reapplying its override would also copy GET-only quota controls.
401
+ const routeOverride = management ? undefined : configuredOverride;
390
402
  return {
391
403
  management,
392
404
  policy: bindMppScope(resolvePolicy(options.base, options.defaults, [...routePolicies, routeOverride], description), scope),
@@ -1026,7 +1038,9 @@ export function installMppManagementRoutes(app, options = {}) {
1026
1038
  continue;
1027
1039
  if (postPaths.has(target.path))
1028
1040
  throw new Error(`MPP management POST conflicts with an existing route: ${target.path}`);
1029
- const management = policy({ mpp });
1041
+ const management = policy({
1042
+ mpp: { session: mpp.session },
1043
+ });
1030
1044
  management[mppManagementSymbol] = { description: target.description };
1031
1045
  app.post(stripBasePath(target.path, options.basePath), management, OpenApi.describeRoute({ hide: true }));
1032
1046
  }
@@ -1101,6 +1115,7 @@ function resolveApiKeyLane(current, override, default_) {
1101
1115
  return current ?? default_;
1102
1116
  const base = current ?? default_;
1103
1117
  return {
1118
+ bucket: override.bucket ?? base.bucket,
1104
1119
  rateLimit: override.rateLimit ?? base.rateLimit,
1105
1120
  scopes: override.scopes ?? base.scopes,
1106
1121
  };
@@ -1114,6 +1129,7 @@ function resolveMppLane(current, override, default_) {
1114
1129
  return current ?? default_;
1115
1130
  const base = current ?? default_;
1116
1131
  return {
1132
+ bucket: override.bucket ?? base.bucket,
1117
1133
  rateLimit: override.rateLimit ?? base.rateLimit,
1118
1134
  session: { ...base.session, ...override.session },
1119
1135
  };
@@ -1126,7 +1142,10 @@ function resolvePublicLane(current, override, default_) {
1126
1142
  if (override === true)
1127
1143
  return current ?? default_;
1128
1144
  const base = current ?? default_;
1129
- return { rateLimit: override.rateLimit ?? base.rateLimit };
1145
+ return {
1146
+ bucket: override.bucket ?? base.bucket,
1147
+ rateLimit: override.rateLimit ?? base.rateLimit,
1148
+ };
1130
1149
  }
1131
1150
  function resolveSessionLane(current, override, default_) {
1132
1151
  if (override === undefined)
@@ -1363,7 +1382,7 @@ export function require(policy) {
1363
1382
  const result = paid
1364
1383
  ? null
1365
1384
  : await consumeRateLimit(auth, {
1366
- key: `api_key:${apiKey.id}:scope:${scope}`,
1385
+ key: rateLimitKey(`api_key:${apiKey.id}:scope:${scope}`, policy.apiKey.bucket),
1367
1386
  limit,
1368
1387
  });
1369
1388
  if (result) {
@@ -1446,7 +1465,7 @@ export function require(policy) {
1446
1465
  const limit = policy.public?.rateLimit;
1447
1466
  if (limit) {
1448
1467
  const result = await consumeRateLimit(auth, {
1449
- key: `public:${publicPrincipal.id}`,
1468
+ key: rateLimitKey(`public:${publicPrincipal.id}`, policy.public?.bucket),
1450
1469
  limit,
1451
1470
  });
1452
1471
  if (result)
@@ -1573,10 +1592,11 @@ function getApiKeyCredential(c) {
1573
1592
  return null;
1574
1593
  }
1575
1594
  function clientIp(c, auth) {
1576
- return auth.publicClientIp ? auth.publicClientIp(c.req.raw) : c.req.header('cf-connecting-ip');
1595
+ return (trustedClientIps.get(c.req.raw) ??
1596
+ (auth.publicClientIp ? auth.publicClientIp(c.req.raw) : c.req.header('cf-connecting-ip')));
1577
1597
  }
1578
1598
  function trustedClientIp(c, auth) {
1579
- return resolveTrustedClientIp(c.req.raw, auth.publicClientIp);
1599
+ return trustedClientIps.get(c.req.raw) ?? resolveTrustedClientIp(c.req.raw, auth.publicClientIp);
1580
1600
  }
1581
1601
  function resolveTrustedClientIp(request, resolve) {
1582
1602
  if (resolve)
@@ -1698,7 +1718,7 @@ function principalFromPublic(c, auth) {
1698
1718
  async function requirePayment(c, next, options) {
1699
1719
  if (hasPaymentCredential(c)) {
1700
1720
  const result = await consumeRateLimit(options.auth, {
1701
- key: `mpp:${options.principal.type}:${options.principal.id}`,
1721
+ key: rateLimitKey(`mpp:${options.principal.type}:${options.principal.id}`, options.policy.mpp?.bucket),
1702
1722
  limit: options.policy.mpp?.rateLimit ?? options.auth.mpp?.rateLimit ?? defaultMppRateLimit,
1703
1723
  });
1704
1724
  if (result) {
@@ -1748,6 +1768,9 @@ function requirePaymentOrRateLimit(c, next, options) {
1748
1768
  return requirePayment(c, next, options);
1749
1769
  return rateLimitExceeded(c, options.rateLimit);
1750
1770
  }
1771
+ function rateLimitKey(key, bucket) {
1772
+ return bucket === undefined ? key : `${key}:bucket:${bucket}`;
1773
+ }
1751
1774
  /** Emits a `429` with a `Retry-After` derived from the window reset. */
1752
1775
  function rateLimitExceeded(c, result) {
1753
1776
  c.header('Retry-After', String(Math.max(result.reset - Math.ceil(Date.now() / 1_000), 1)));