@waiaas/daemon 2.5.0 → 2.6.0-rc.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 (193) hide show
  1. package/dist/api/middleware/error-handler.d.ts +1 -1
  2. package/dist/api/middleware/error-handler.js +2 -2
  3. package/dist/api/middleware/error-handler.js.map +1 -1
  4. package/dist/api/routes/admin.d.ts.map +1 -1
  5. package/dist/api/routes/admin.js +6 -30
  6. package/dist/api/routes/admin.js.map +1 -1
  7. package/dist/api/routes/connect-info.d.ts.map +1 -1
  8. package/dist/api/routes/connect-info.js +6 -0
  9. package/dist/api/routes/connect-info.js.map +1 -1
  10. package/dist/api/routes/incoming.d.ts +40 -0
  11. package/dist/api/routes/incoming.d.ts.map +1 -0
  12. package/dist/api/routes/incoming.js +281 -0
  13. package/dist/api/routes/incoming.js.map +1 -0
  14. package/dist/api/routes/openapi-schemas.d.ts +337 -24
  15. package/dist/api/routes/openapi-schemas.d.ts.map +1 -1
  16. package/dist/api/routes/openapi-schemas.js +78 -0
  17. package/dist/api/routes/openapi-schemas.js.map +1 -1
  18. package/dist/api/routes/tokens.d.ts.map +1 -1
  19. package/dist/api/routes/tokens.js +1 -0
  20. package/dist/api/routes/tokens.js.map +1 -1
  21. package/dist/api/routes/wallets.d.ts +4 -0
  22. package/dist/api/routes/wallets.d.ts.map +1 -1
  23. package/dist/api/routes/wallets.js +173 -1
  24. package/dist/api/routes/wallets.js.map +1 -1
  25. package/dist/api/routes/x402.js +1 -1
  26. package/dist/api/routes/x402.js.map +1 -1
  27. package/dist/api/server.d.ts +4 -0
  28. package/dist/api/server.d.ts.map +1 -1
  29. package/dist/api/server.js +12 -0
  30. package/dist/api/server.js.map +1 -1
  31. package/dist/infrastructure/config/loader.d.ts +43 -0
  32. package/dist/infrastructure/config/loader.d.ts.map +1 -1
  33. package/dist/infrastructure/config/loader.js +13 -1
  34. package/dist/infrastructure/config/loader.js.map +1 -1
  35. package/dist/infrastructure/database/index.d.ts +1 -1
  36. package/dist/infrastructure/database/index.d.ts.map +1 -1
  37. package/dist/infrastructure/database/index.js +1 -1
  38. package/dist/infrastructure/database/index.js.map +1 -1
  39. package/dist/infrastructure/database/migrate.d.ts +2 -2
  40. package/dist/infrastructure/database/migrate.d.ts.map +1 -1
  41. package/dist/infrastructure/database/migrate.js +123 -6
  42. package/dist/infrastructure/database/migrate.js.map +1 -1
  43. package/dist/infrastructure/database/schema.d.ts +400 -1
  44. package/dist/infrastructure/database/schema.d.ts.map +1 -1
  45. package/dist/infrastructure/database/schema.js +43 -2
  46. package/dist/infrastructure/database/schema.js.map +1 -1
  47. package/dist/infrastructure/oracle/coingecko-oracle.d.ts +9 -1
  48. package/dist/infrastructure/oracle/coingecko-oracle.d.ts.map +1 -1
  49. package/dist/infrastructure/oracle/coingecko-oracle.js +40 -23
  50. package/dist/infrastructure/oracle/coingecko-oracle.js.map +1 -1
  51. package/dist/infrastructure/oracle/coingecko-platform-ids.d.ts +11 -10
  52. package/dist/infrastructure/oracle/coingecko-platform-ids.d.ts.map +1 -1
  53. package/dist/infrastructure/oracle/coingecko-platform-ids.js +20 -12
  54. package/dist/infrastructure/oracle/coingecko-platform-ids.js.map +1 -1
  55. package/dist/infrastructure/oracle/index.d.ts +1 -1
  56. package/dist/infrastructure/oracle/index.d.ts.map +1 -1
  57. package/dist/infrastructure/oracle/index.js +1 -1
  58. package/dist/infrastructure/oracle/index.js.map +1 -1
  59. package/dist/infrastructure/oracle/oracle-chain.d.ts.map +1 -1
  60. package/dist/infrastructure/oracle/oracle-chain.js +7 -4
  61. package/dist/infrastructure/oracle/oracle-chain.js.map +1 -1
  62. package/dist/infrastructure/oracle/price-cache.d.ts +24 -8
  63. package/dist/infrastructure/oracle/price-cache.d.ts.map +1 -1
  64. package/dist/infrastructure/oracle/price-cache.js +32 -11
  65. package/dist/infrastructure/oracle/price-cache.js.map +1 -1
  66. package/dist/infrastructure/oracle/pyth-feed-ids.d.ts +11 -8
  67. package/dist/infrastructure/oracle/pyth-feed-ids.d.ts.map +1 -1
  68. package/dist/infrastructure/oracle/pyth-feed-ids.js +16 -17
  69. package/dist/infrastructure/oracle/pyth-feed-ids.js.map +1 -1
  70. package/dist/infrastructure/oracle/pyth-oracle.d.ts.map +1 -1
  71. package/dist/infrastructure/oracle/pyth-oracle.js +7 -4
  72. package/dist/infrastructure/oracle/pyth-oracle.js.map +1 -1
  73. package/dist/infrastructure/settings/hot-reload.d.ts +9 -0
  74. package/dist/infrastructure/settings/hot-reload.d.ts.map +1 -1
  75. package/dist/infrastructure/settings/hot-reload.js +34 -5
  76. package/dist/infrastructure/settings/hot-reload.js.map +1 -1
  77. package/dist/infrastructure/settings/setting-keys.d.ts +2 -2
  78. package/dist/infrastructure/settings/setting-keys.d.ts.map +1 -1
  79. package/dist/infrastructure/settings/setting-keys.js +12 -3
  80. package/dist/infrastructure/settings/setting-keys.js.map +1 -1
  81. package/dist/infrastructure/token-registry/token-registry-service.d.ts +1 -0
  82. package/dist/infrastructure/token-registry/token-registry-service.d.ts.map +1 -1
  83. package/dist/infrastructure/token-registry/token-registry-service.js +15 -1
  84. package/dist/infrastructure/token-registry/token-registry-service.js.map +1 -1
  85. package/dist/lifecycle/daemon.d.ts +3 -1
  86. package/dist/lifecycle/daemon.d.ts.map +1 -1
  87. package/dist/lifecycle/daemon.js +84 -4
  88. package/dist/lifecycle/daemon.js.map +1 -1
  89. package/dist/notifications/channels/discord.d.ts.map +1 -1
  90. package/dist/notifications/channels/discord.js +21 -8
  91. package/dist/notifications/channels/discord.js.map +1 -1
  92. package/dist/notifications/channels/format-utils.d.ts +11 -0
  93. package/dist/notifications/channels/format-utils.d.ts.map +1 -0
  94. package/dist/notifications/channels/format-utils.js +19 -0
  95. package/dist/notifications/channels/format-utils.js.map +1 -0
  96. package/dist/notifications/channels/ntfy.d.ts.map +1 -1
  97. package/dist/notifications/channels/ntfy.js +18 -2
  98. package/dist/notifications/channels/ntfy.js.map +1 -1
  99. package/dist/notifications/channels/slack.d.ts.map +1 -1
  100. package/dist/notifications/channels/slack.js +20 -7
  101. package/dist/notifications/channels/slack.js.map +1 -1
  102. package/dist/notifications/channels/telegram.d.ts.map +1 -1
  103. package/dist/notifications/channels/telegram.js +21 -5
  104. package/dist/notifications/channels/telegram.js.map +1 -1
  105. package/dist/notifications/notification-service.d.ts +14 -0
  106. package/dist/notifications/notification-service.d.ts.map +1 -1
  107. package/dist/notifications/notification-service.js +89 -2
  108. package/dist/notifications/notification-service.js.map +1 -1
  109. package/dist/pipeline/database-policy-engine.d.ts +9 -5
  110. package/dist/pipeline/database-policy-engine.d.ts.map +1 -1
  111. package/dist/pipeline/database-policy-engine.js +42 -10
  112. package/dist/pipeline/database-policy-engine.js.map +1 -1
  113. package/dist/pipeline/resolve-effective-amount-usd.d.ts +1 -1
  114. package/dist/pipeline/resolve-effective-amount-usd.d.ts.map +1 -1
  115. package/dist/pipeline/resolve-effective-amount-usd.js +5 -3
  116. package/dist/pipeline/resolve-effective-amount-usd.js.map +1 -1
  117. package/dist/pipeline/stages.d.ts.map +1 -1
  118. package/dist/pipeline/stages.js +7 -1
  119. package/dist/pipeline/stages.js.map +1 -1
  120. package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.d.ts +11 -0
  121. package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.d.ts.map +1 -0
  122. package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.js +432 -0
  123. package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.js.map +1 -0
  124. package/dist/services/incoming/__tests__/incoming-tx-queue.test.d.ts +12 -0
  125. package/dist/services/incoming/__tests__/incoming-tx-queue.test.d.ts.map +1 -0
  126. package/dist/services/incoming/__tests__/incoming-tx-queue.test.js +419 -0
  127. package/dist/services/incoming/__tests__/incoming-tx-queue.test.js.map +1 -0
  128. package/dist/services/incoming/__tests__/incoming-tx-workers.test.d.ts +14 -0
  129. package/dist/services/incoming/__tests__/incoming-tx-workers.test.d.ts.map +1 -0
  130. package/dist/services/incoming/__tests__/incoming-tx-workers.test.js +452 -0
  131. package/dist/services/incoming/__tests__/incoming-tx-workers.test.js.map +1 -0
  132. package/dist/services/incoming/__tests__/integration-pitfall.test.d.ts +17 -0
  133. package/dist/services/incoming/__tests__/integration-pitfall.test.d.ts.map +1 -0
  134. package/dist/services/incoming/__tests__/integration-pitfall.test.js +653 -0
  135. package/dist/services/incoming/__tests__/integration-pitfall.test.js.map +1 -0
  136. package/dist/services/incoming/__tests__/integration-resilience.test.d.ts +14 -0
  137. package/dist/services/incoming/__tests__/integration-resilience.test.d.ts.map +1 -0
  138. package/dist/services/incoming/__tests__/integration-resilience.test.js +501 -0
  139. package/dist/services/incoming/__tests__/integration-resilience.test.js.map +1 -0
  140. package/dist/services/incoming/__tests__/integration-wiring.test.d.ts +15 -0
  141. package/dist/services/incoming/__tests__/integration-wiring.test.d.ts.map +1 -0
  142. package/dist/services/incoming/__tests__/integration-wiring.test.js +355 -0
  143. package/dist/services/incoming/__tests__/integration-wiring.test.js.map +1 -0
  144. package/dist/services/incoming/__tests__/safety-rules.test.d.ts +10 -0
  145. package/dist/services/incoming/__tests__/safety-rules.test.d.ts.map +1 -0
  146. package/dist/services/incoming/__tests__/safety-rules.test.js +165 -0
  147. package/dist/services/incoming/__tests__/safety-rules.test.js.map +1 -0
  148. package/dist/services/incoming/__tests__/subscription-multiplexer.test.d.ts +2 -0
  149. package/dist/services/incoming/__tests__/subscription-multiplexer.test.d.ts.map +1 -0
  150. package/dist/services/incoming/__tests__/subscription-multiplexer.test.js +267 -0
  151. package/dist/services/incoming/__tests__/subscription-multiplexer.test.js.map +1 -0
  152. package/dist/services/incoming/incoming-tx-monitor-service.d.ts +98 -0
  153. package/dist/services/incoming/incoming-tx-monitor-service.d.ts.map +1 -0
  154. package/dist/services/incoming/incoming-tx-monitor-service.js +357 -0
  155. package/dist/services/incoming/incoming-tx-monitor-service.js.map +1 -0
  156. package/dist/services/incoming/incoming-tx-queue.d.ts +52 -0
  157. package/dist/services/incoming/incoming-tx-queue.d.ts.map +1 -0
  158. package/dist/services/incoming/incoming-tx-queue.js +109 -0
  159. package/dist/services/incoming/incoming-tx-queue.js.map +1 -0
  160. package/dist/services/incoming/incoming-tx-workers.d.ts +89 -0
  161. package/dist/services/incoming/incoming-tx-workers.d.ts.map +1 -0
  162. package/dist/services/incoming/incoming-tx-workers.js +176 -0
  163. package/dist/services/incoming/incoming-tx-workers.js.map +1 -0
  164. package/dist/services/incoming/index.d.ts +14 -0
  165. package/dist/services/incoming/index.d.ts.map +1 -0
  166. package/dist/services/incoming/index.js +11 -0
  167. package/dist/services/incoming/index.js.map +1 -0
  168. package/dist/services/incoming/safety-rules.d.ts +70 -0
  169. package/dist/services/incoming/safety-rules.d.ts.map +1 -0
  170. package/dist/services/incoming/safety-rules.js +68 -0
  171. package/dist/services/incoming/safety-rules.js.map +1 -0
  172. package/dist/services/incoming/subscription-multiplexer.d.ts +87 -0
  173. package/dist/services/incoming/subscription-multiplexer.d.ts.map +1 -0
  174. package/dist/services/incoming/subscription-multiplexer.js +169 -0
  175. package/dist/services/incoming/subscription-multiplexer.js.map +1 -0
  176. package/dist/services/signing-sdk/approval-channel-router.d.ts +1 -1
  177. package/dist/services/signing-sdk/approval-channel-router.d.ts.map +1 -1
  178. package/dist/services/signing-sdk/approval-channel-router.js +2 -3
  179. package/dist/services/signing-sdk/approval-channel-router.js.map +1 -1
  180. package/dist/services/signing-sdk/channels/wallet-notification-channel.js +1 -1
  181. package/dist/services/signing-sdk/channels/wallet-notification-channel.js.map +1 -1
  182. package/dist/services/wc-session-service.d.ts +0 -2
  183. package/dist/services/wc-session-service.d.ts.map +1 -1
  184. package/dist/services/wc-session-service.js +2 -23
  185. package/dist/services/wc-session-service.js.map +1 -1
  186. package/dist/services/x402/x402-domain-policy.d.ts +6 -1
  187. package/dist/services/x402/x402-domain-policy.d.ts.map +1 -1
  188. package/dist/services/x402/x402-domain-policy.js +6 -2
  189. package/dist/services/x402/x402-domain-policy.js.map +1 -1
  190. package/package.json +4 -4
  191. package/public/admin/assets/index-D06O_cSo.js +1 -0
  192. package/public/admin/index.html +1 -1
  193. package/public/admin/assets/index-BLLOYSZp.js +0 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Schema push + incremental migration runner for daemon SQLite database.
3
3
  *
4
- * Creates all 16 tables with indexes, foreign keys, and CHECK constraints
4
+ * Creates all 18 tables with indexes, foreign keys, and CHECK constraints
5
5
  * using CREATE TABLE IF NOT EXISTS statements. After initial schema creation,
6
6
  * runs incremental migrations via runMigrations() for ALTER TABLE changes.
7
7
  *
@@ -22,20 +22,20 @@
22
22
  * @see docs/69-db-migration-v6-design.md
23
23
  * @see docs/71-policy-engine-network-extension-design.md
24
24
  */
25
- import { WALLET_STATUSES, CHAIN_TYPES, NETWORK_TYPES, ENVIRONMENT_TYPES, TRANSACTION_STATUSES, TRANSACTION_TYPES, POLICY_TYPES, POLICY_TIERS, NOTIFICATION_LOG_STATUSES, } from '@waiaas/core';
25
+ import { WALLET_STATUSES, CHAIN_TYPES, NETWORK_TYPES, ENVIRONMENT_TYPES, TRANSACTION_STATUSES, TRANSACTION_TYPES, POLICY_TYPES, POLICY_TIERS, NOTIFICATION_LOG_STATUSES, INCOMING_TX_STATUSES, NETWORK_TO_CAIP2, tokenAssetId, } from '@waiaas/core';
26
26
  // ---------------------------------------------------------------------------
27
27
  // Utility: build CHECK IN clause from SSoT arrays
28
28
  // ---------------------------------------------------------------------------
29
29
  const inList = (values) => values.map((v) => `'${v}'`).join(', ');
30
30
  // ---------------------------------------------------------------------------
31
- // DDL statements for all 16 tables (latest schema: wallets + wallet_id + session_wallets + token_registry + settings + api_keys + telegram_users + wc_sessions + wc_store)
31
+ // DDL statements for all 18 tables (latest schema: wallets + wallet_id + session_wallets + token_registry + settings + api_keys + telegram_users + wc_sessions + wc_store + incoming_transactions + incoming_tx_cursors)
32
32
  // ---------------------------------------------------------------------------
33
33
  /**
34
34
  * The latest schema version that getCreateTableStatements() represents.
35
35
  * pushSchema() records this version for fresh databases so migrations are skipped.
36
36
  * Increment this whenever DDL statements are updated to match a new migration.
37
37
  */
38
- export const LATEST_SCHEMA_VERSION = 20;
38
+ export const LATEST_SCHEMA_VERSION = 22;
39
39
  function getCreateTableStatements() {
40
40
  return [
41
41
  // Table 1: wallets (renamed from agents in v3, environment model in v6b, owner_approval_method in v18)
@@ -53,6 +53,7 @@ function getCreateTableStatements() {
53
53
  updated_at INTEGER NOT NULL,
54
54
  suspended_at INTEGER,
55
55
  suspension_reason TEXT,
56
+ monitor_incoming INTEGER NOT NULL DEFAULT 0,
56
57
  owner_approval_method TEXT CHECK (owner_approval_method IS NULL OR owner_approval_method IN ('sdk_ntfy', 'sdk_telegram', 'walletconnect', 'telegram_bot', 'rest'))
57
58
  )`,
58
59
  // Table 2: sessions (v26.4: wallet_id removed, v26.5: token_issued_count added)
@@ -162,7 +163,7 @@ function getCreateTableStatements() {
162
163
  message TEXT,
163
164
  created_at INTEGER NOT NULL
164
165
  )`,
165
- // Table 9: token_registry
166
+ // Table 9: token_registry (asset_id added in v22)
166
167
  `CREATE TABLE IF NOT EXISTS token_registry (
167
168
  id TEXT PRIMARY KEY,
168
169
  network TEXT NOT NULL,
@@ -171,6 +172,7 @@ function getCreateTableStatements() {
171
172
  name TEXT NOT NULL,
172
173
  decimals INTEGER NOT NULL,
173
174
  source TEXT NOT NULL DEFAULT 'custom' CHECK (source IN ('builtin', 'custom')),
175
+ asset_id TEXT,
174
176
  created_at INTEGER NOT NULL
175
177
  )`,
176
178
  // Table 10: settings
@@ -217,6 +219,32 @@ function getCreateTableStatements() {
217
219
  `CREATE TABLE IF NOT EXISTS wc_store (
218
220
  key TEXT PRIMARY KEY,
219
221
  value TEXT NOT NULL
222
+ )`,
223
+ // Table 16: incoming_transactions (detected incoming transfers to monitored wallets, v27.1)
224
+ `CREATE TABLE IF NOT EXISTS incoming_transactions (
225
+ id TEXT PRIMARY KEY,
226
+ tx_hash TEXT NOT NULL,
227
+ wallet_id TEXT NOT NULL REFERENCES wallets(id) ON DELETE CASCADE,
228
+ from_address TEXT NOT NULL,
229
+ amount TEXT NOT NULL,
230
+ token_address TEXT,
231
+ chain TEXT NOT NULL CHECK (chain IN (${inList(CHAIN_TYPES)})),
232
+ network TEXT NOT NULL,
233
+ status TEXT NOT NULL DEFAULT 'DETECTED' CHECK (status IN (${inList(INCOMING_TX_STATUSES)})),
234
+ block_number INTEGER,
235
+ detected_at INTEGER NOT NULL,
236
+ confirmed_at INTEGER,
237
+ is_suspicious INTEGER NOT NULL DEFAULT 0,
238
+ UNIQUE(tx_hash, wallet_id)
239
+ )`,
240
+ // Table 17: incoming_tx_cursors (per-wallet cursor for gap recovery, v27.1)
241
+ `CREATE TABLE IF NOT EXISTS incoming_tx_cursors (
242
+ wallet_id TEXT PRIMARY KEY REFERENCES wallets(id) ON DELETE CASCADE,
243
+ chain TEXT NOT NULL,
244
+ network TEXT NOT NULL,
245
+ last_signature TEXT,
246
+ last_block_number INTEGER,
247
+ updated_at INTEGER NOT NULL
220
248
  )`,
221
249
  ];
222
250
  }
@@ -272,6 +300,11 @@ function getCreateIndexStatements() {
272
300
  'CREATE INDEX IF NOT EXISTS idx_telegram_users_role ON telegram_users(role)',
273
301
  // wc_sessions indexes
274
302
  'CREATE INDEX IF NOT EXISTS idx_wc_sessions_topic ON wc_sessions(topic)',
303
+ // incoming_transactions indexes
304
+ 'CREATE INDEX IF NOT EXISTS idx_incoming_tx_wallet_detected ON incoming_transactions(wallet_id, detected_at DESC)',
305
+ 'CREATE INDEX IF NOT EXISTS idx_incoming_tx_detected_at ON incoming_transactions(detected_at)',
306
+ 'CREATE INDEX IF NOT EXISTS idx_incoming_tx_chain_network ON incoming_transactions(chain, network)',
307
+ "CREATE INDEX IF NOT EXISTS idx_incoming_tx_status ON incoming_transactions(status) WHERE status = 'DETECTED'",
275
308
  ];
276
309
  }
277
310
  /**
@@ -1224,6 +1257,90 @@ MIGRATIONS.push({
1224
1257
  sqlite.exec('ALTER TABLE sessions ADD COLUMN token_issued_count INTEGER NOT NULL DEFAULT 1');
1225
1258
  },
1226
1259
  });
1260
+ // ---------------------------------------------------------------------------
1261
+ // Migration v21: Add incoming transaction monitoring tables and wallet opt-in column
1262
+ // ---------------------------------------------------------------------------
1263
+ // Creates incoming_transactions (13 columns + UNIQUE constraint), incoming_tx_cursors (6 columns),
1264
+ // and adds wallets.monitor_incoming opt-in column.
1265
+ // Simple ALTER TABLE + CREATE TABLE -- no CHECK constraint changes on existing tables,
1266
+ // no table recreation needed.
1267
+ MIGRATIONS.push({
1268
+ version: 21,
1269
+ description: 'Add incoming transaction monitoring tables and wallet opt-in column',
1270
+ up: (sqlite) => {
1271
+ // 1. wallets.monitor_incoming opt-in column
1272
+ sqlite.exec('ALTER TABLE wallets ADD COLUMN monitor_incoming INTEGER NOT NULL DEFAULT 0');
1273
+ // 2. incoming_transactions table (13 columns + UNIQUE constraint)
1274
+ sqlite.exec(`CREATE TABLE IF NOT EXISTS incoming_transactions (
1275
+ id TEXT PRIMARY KEY,
1276
+ tx_hash TEXT NOT NULL,
1277
+ wallet_id TEXT NOT NULL REFERENCES wallets(id) ON DELETE CASCADE,
1278
+ from_address TEXT NOT NULL,
1279
+ amount TEXT NOT NULL,
1280
+ token_address TEXT,
1281
+ chain TEXT NOT NULL CHECK (chain IN (${inList(CHAIN_TYPES)})),
1282
+ network TEXT NOT NULL,
1283
+ status TEXT NOT NULL DEFAULT 'DETECTED' CHECK (status IN (${inList(INCOMING_TX_STATUSES)})),
1284
+ block_number INTEGER,
1285
+ detected_at INTEGER NOT NULL,
1286
+ confirmed_at INTEGER,
1287
+ is_suspicious INTEGER NOT NULL DEFAULT 0,
1288
+ UNIQUE(tx_hash, wallet_id)
1289
+ )`);
1290
+ // 3. incoming_tx_cursors table (6 columns)
1291
+ sqlite.exec(`CREATE TABLE IF NOT EXISTS incoming_tx_cursors (
1292
+ wallet_id TEXT PRIMARY KEY REFERENCES wallets(id) ON DELETE CASCADE,
1293
+ chain TEXT NOT NULL,
1294
+ network TEXT NOT NULL,
1295
+ last_signature TEXT,
1296
+ last_block_number INTEGER,
1297
+ updated_at INTEGER NOT NULL
1298
+ )`);
1299
+ // 4. Indexes on incoming_transactions
1300
+ sqlite.exec('CREATE INDEX IF NOT EXISTS idx_incoming_tx_wallet_detected ON incoming_transactions(wallet_id, detected_at DESC)');
1301
+ sqlite.exec('CREATE INDEX IF NOT EXISTS idx_incoming_tx_detected_at ON incoming_transactions(detected_at)');
1302
+ sqlite.exec('CREATE INDEX IF NOT EXISTS idx_incoming_tx_chain_network ON incoming_transactions(chain, network)');
1303
+ sqlite.exec("CREATE INDEX IF NOT EXISTS idx_incoming_tx_status ON incoming_transactions(status) WHERE status = 'DETECTED'");
1304
+ },
1305
+ });
1306
+ // ---------------------------------------------------------------------------
1307
+ // Migration v22: Add asset_id column to token_registry with CAIP-19 backfill
1308
+ // ---------------------------------------------------------------------------
1309
+ // Simple ALTER TABLE ADD COLUMN + application-level backfill.
1310
+ // Generates CAIP-19 asset_id for each known-network token using tokenAssetId().
1311
+ // Unknown networks are skipped (asset_id remains NULL).
1312
+ MIGRATIONS.push({
1313
+ version: 22,
1314
+ description: 'Add asset_id column to token_registry with CAIP-19 backfill',
1315
+ managesOwnTransaction: false,
1316
+ up: (sqlite) => {
1317
+ // Step 1: Add nullable column (skip if already exists from fresh DDL)
1318
+ const columns = sqlite
1319
+ .prepare("PRAGMA table_info('token_registry')")
1320
+ .all();
1321
+ const hasAssetId = columns.some((c) => c.name === 'asset_id');
1322
+ if (!hasAssetId) {
1323
+ sqlite.exec('ALTER TABLE token_registry ADD COLUMN asset_id TEXT');
1324
+ }
1325
+ // Step 2: Application-level backfill using tokenAssetId()
1326
+ const rows = sqlite
1327
+ .prepare('SELECT id, network, address FROM token_registry')
1328
+ .all();
1329
+ const updateStmt = sqlite.prepare('UPDATE token_registry SET asset_id = ? WHERE id = ?');
1330
+ for (const row of rows) {
1331
+ // Guard: only backfill for known networks (Pitfall 4)
1332
+ if (!(row.network in NETWORK_TO_CAIP2))
1333
+ continue;
1334
+ try {
1335
+ const assetId = tokenAssetId(row.network, row.address);
1336
+ updateStmt.run(assetId, row.id);
1337
+ }
1338
+ catch {
1339
+ // Skip on error -- rows with unknown networks get asset_id = NULL
1340
+ }
1341
+ }
1342
+ },
1343
+ });
1227
1344
  /**
1228
1345
  * Run incremental migrations against the database.
1229
1346
  *
@@ -1357,7 +1474,7 @@ export function pushSchema(sqlite) {
1357
1474
  const ts = Math.floor(Date.now() / 1000);
1358
1475
  sqlite
1359
1476
  .prepare('INSERT INTO schema_version (version, applied_at, description) VALUES (?, ?, ?)')
1360
- .run(1, ts, 'Initial schema (16 tables)');
1477
+ .run(1, ts, 'Initial schema (18 tables)');
1361
1478
  // Record all migration versions as already applied (DDL is up-to-date)
1362
1479
  for (const migration of MIGRATIONS) {
1363
1480
  sqlite
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/infrastructure/database/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/infrastructure/database/migrate.ts"],"names":[],"mappings":"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"}