@waiaas/daemon 2.10.0-rc.8 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/api/routes/actions.d.ts.map +1 -1
- package/dist/api/routes/actions.js +69 -3
- package/dist/api/routes/actions.js.map +1 -1
- package/dist/api/routes/admin-actions.d.ts +46 -0
- package/dist/api/routes/admin-actions.d.ts.map +1 -0
- package/dist/api/routes/admin-actions.js +325 -0
- package/dist/api/routes/admin-actions.js.map +1 -0
- package/dist/api/routes/admin.d.ts.map +1 -1
- package/dist/api/routes/admin.js +21 -5
- package/dist/api/routes/admin.js.map +1 -1
- package/dist/api/routes/connect-info.d.ts +1 -0
- package/dist/api/routes/connect-info.d.ts.map +1 -1
- package/dist/api/routes/connect-info.js +66 -0
- package/dist/api/routes/connect-info.js.map +1 -1
- package/dist/api/routes/hyperliquid.d.ts +18 -0
- package/dist/api/routes/hyperliquid.d.ts.map +1 -0
- package/dist/api/routes/hyperliquid.js +131 -0
- package/dist/api/routes/hyperliquid.js.map +1 -0
- package/dist/api/routes/index.d.ts +2 -0
- package/dist/api/routes/index.d.ts.map +1 -1
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/index.js.map +1 -1
- package/dist/api/routes/openapi-schemas.d.ts +172 -33
- package/dist/api/routes/openapi-schemas.d.ts.map +1 -1
- package/dist/api/routes/openapi-schemas.js +9 -0
- package/dist/api/routes/openapi-schemas.js.map +1 -1
- package/dist/api/routes/polymarket.d.ts +34 -0
- package/dist/api/routes/polymarket.d.ts.map +1 -0
- package/dist/api/routes/polymarket.js +158 -0
- package/dist/api/routes/polymarket.js.map +1 -0
- package/dist/api/routes/staking.d.ts.map +1 -1
- package/dist/api/routes/staking.js +14 -2
- package/dist/api/routes/staking.js.map +1 -1
- package/dist/api/routes/userop.d.ts.map +1 -1
- package/dist/api/routes/userop.js +19 -17
- package/dist/api/routes/userop.js.map +1 -1
- package/dist/api/routes/wallet.d.ts.map +1 -1
- package/dist/api/routes/wallet.js +18 -0
- package/dist/api/routes/wallet.js.map +1 -1
- package/dist/api/routes/wallets.d.ts.map +1 -1
- package/dist/api/routes/wallets.js +106 -4
- package/dist/api/routes/wallets.js.map +1 -1
- package/dist/api/server.d.ts +6 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +61 -1
- package/dist/api/server.js.map +1 -1
- package/dist/infrastructure/action/action-provider-registry.d.ts +6 -4
- package/dist/infrastructure/action/action-provider-registry.d.ts.map +1 -1
- package/dist/infrastructure/action/action-provider-registry.js +11 -5
- package/dist/infrastructure/action/action-provider-registry.js.map +1 -1
- package/dist/infrastructure/config/loader.d.ts +10 -0
- package/dist/infrastructure/config/loader.d.ts.map +1 -1
- package/dist/infrastructure/config/loader.js +3 -0
- package/dist/infrastructure/config/loader.js.map +1 -1
- package/dist/infrastructure/database/migrate.d.ts +1 -1
- package/dist/infrastructure/database/migrate.d.ts.map +1 -1
- package/dist/infrastructure/database/migrate.js +362 -4
- package/dist/infrastructure/database/migrate.js.map +1 -1
- package/dist/infrastructure/database/schema.d.ts +1532 -36
- package/dist/infrastructure/database/schema.d.ts.map +1 -1
- package/dist/infrastructure/database/schema.js +149 -1
- package/dist/infrastructure/database/schema.js.map +1 -1
- package/dist/infrastructure/settings/hot-reload.d.ts.map +1 -1
- package/dist/infrastructure/settings/hot-reload.js +4 -0
- package/dist/infrastructure/settings/hot-reload.js.map +1 -1
- package/dist/infrastructure/settings/setting-keys.d.ts.map +1 -1
- package/dist/infrastructure/settings/setting-keys.js +44 -2
- package/dist/infrastructure/settings/setting-keys.js.map +1 -1
- package/dist/infrastructure/smart-account/index.d.ts +2 -2
- package/dist/infrastructure/smart-account/index.d.ts.map +1 -1
- package/dist/infrastructure/smart-account/index.js +2 -2
- package/dist/infrastructure/smart-account/index.js.map +1 -1
- package/dist/infrastructure/smart-account/smart-account-clients.d.ts +10 -2
- package/dist/infrastructure/smart-account/smart-account-clients.d.ts.map +1 -1
- package/dist/infrastructure/smart-account/smart-account-clients.js +36 -9
- package/dist/infrastructure/smart-account/smart-account-clients.js.map +1 -1
- package/dist/infrastructure/smart-account/smart-account-service.d.ts +36 -0
- package/dist/infrastructure/smart-account/smart-account-service.d.ts.map +1 -1
- package/dist/infrastructure/smart-account/smart-account-service.js +83 -4
- package/dist/infrastructure/smart-account/smart-account-service.js.map +1 -1
- package/dist/infrastructure/telegram/telegram-bot-service.js +1 -1
- package/dist/infrastructure/telegram/telegram-bot-service.js.map +1 -1
- package/dist/infrastructure/token-registry/builtin-tokens.d.ts.map +1 -1
- package/dist/infrastructure/token-registry/builtin-tokens.js +3 -0
- package/dist/infrastructure/token-registry/builtin-tokens.js.map +1 -1
- package/dist/lifecycle/daemon.d.ts +2 -0
- package/dist/lifecycle/daemon.d.ts.map +1 -1
- package/dist/lifecycle/daemon.js +188 -4
- package/dist/lifecycle/daemon.js.map +1 -1
- package/dist/pipeline/stages.d.ts +2 -0
- package/dist/pipeline/stages.d.ts.map +1 -1
- package/dist/pipeline/stages.js +75 -2
- package/dist/pipeline/stages.js.map +1 -1
- package/dist/services/admin-stats-service.js +1 -1
- package/dist/services/admin-stats-service.js.map +1 -1
- package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.js +3 -2
- package/dist/services/incoming/__tests__/incoming-tx-monitor-service.test.js.map +1 -1
- package/dist/services/incoming/__tests__/integration-wiring.test.js +2 -2
- package/dist/services/incoming/__tests__/integration-wiring.test.js.map +1 -1
- package/package.json +6 -5
- package/public/admin/assets/index--wQVT9Dz.js +3 -0
- package/public/admin/index.html +1 -1
- package/public/admin/assets/index-BmC6eyj4.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-tokens.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/token-registry/builtin-tokens.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"builtin-tokens.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/token-registry/builtin-tokens.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAoHvD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,CAE9D"}
|
|
@@ -84,6 +84,7 @@ export const BUILTIN_TOKENS = {
|
|
|
84
84
|
{ address: '0x88541670E55cC00bEEFD87eB59EDd1b7C511AC9a', symbol: 'AAVE', name: 'Aave Token', decimals: 18 },
|
|
85
85
|
{ address: '0xc4bF5CbDaBE595361438F8c6a187bDc330539c60', symbol: 'GHO', name: 'Gho Token', decimals: 18 },
|
|
86
86
|
{ address: '0x6d906e526a4e2Ca02097BA9d0caA3c382F52278E', symbol: 'EURS', name: 'EURS Stablecoin', decimals: 2 },
|
|
87
|
+
{ address: '0xFc3e86566895FB007c6A0D3809eB2827dF94f751', symbol: 'PIM', name: 'Pimlico Test Token', decimals: 6 },
|
|
87
88
|
],
|
|
88
89
|
// ---------------------------------------------------------------------------
|
|
89
90
|
// Polygon Amoy (7 tokens)
|
|
@@ -104,6 +105,7 @@ export const BUILTIN_TOKENS = {
|
|
|
104
105
|
{ address: '0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d', symbol: 'USDC', name: 'USD Coin', decimals: 6 },
|
|
105
106
|
{ address: '0x980B62Da83eFf3D4576C647993b0c1D7faf17c73', symbol: 'WETH', name: 'Wrapped Ether', decimals: 18 },
|
|
106
107
|
{ address: '0xb1D4538B4571d411F07960EF2838Ce337FE1E80E', symbol: 'LINK', name: 'Chainlink', decimals: 18 },
|
|
108
|
+
{ address: '0xFc3e86566895FB007c6A0D3809eB2827dF94f751', symbol: 'PIM', name: 'Pimlico Test Token', decimals: 6 },
|
|
107
109
|
],
|
|
108
110
|
// ---------------------------------------------------------------------------
|
|
109
111
|
// Optimism Sepolia (3 tokens)
|
|
@@ -123,6 +125,7 @@ export const BUILTIN_TOKENS = {
|
|
|
123
125
|
{ address: '0x54114591963CF60EF3aA63bEfD6eC263D98145a4', symbol: 'WBTC', name: 'Wrapped Bitcoin', decimals: 8 },
|
|
124
126
|
{ address: '0xE4aB69C077896252FAFBD49EFD26B5D171A32410', symbol: 'LINK', name: 'Chainlink', decimals: 18 },
|
|
125
127
|
{ address: '0xD171b9694f7A2597Ed006D41f7509aaD4B485c4B', symbol: 'cbETH', name: 'Coinbase Wrapped Staked ETH', decimals: 18 },
|
|
128
|
+
{ address: '0xFc3e86566895FB007c6A0D3809eB2827dF94f751', symbol: 'PIM', name: 'Pimlico Test Token', decimals: 6 },
|
|
126
129
|
],
|
|
127
130
|
};
|
|
128
131
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-tokens.js","sourceRoot":"","sources":["../../../src/infrastructure/token-registry/builtin-tokens.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"builtin-tokens.js","sourceRoot":"","sources":["../../../src/infrastructure/token-registry/builtin-tokens.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,8 @@ export declare class DaemonLifecycle {
|
|
|
85
85
|
private webhookService;
|
|
86
86
|
private metricsCounter;
|
|
87
87
|
private adminStatsService;
|
|
88
|
+
private hyperliquidMarketData;
|
|
89
|
+
private polymarketInfra;
|
|
88
90
|
private daemonStartTime;
|
|
89
91
|
/** Whether shutdown has been initiated. */
|
|
90
92
|
get isShuttingDown(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lifecycle/daemon.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lifecycle/daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/lifecycle/daemon.js
CHANGED
|
@@ -133,6 +133,8 @@ export class DaemonLifecycle {
|
|
|
133
133
|
webhookService = null;
|
|
134
134
|
metricsCounter = null;
|
|
135
135
|
adminStatsService = null;
|
|
136
|
+
hyperliquidMarketData = null;
|
|
137
|
+
polymarketInfra = null;
|
|
136
138
|
daemonStartTime = Math.floor(Date.now() / 1000);
|
|
137
139
|
/** Whether shutdown has been initiated. */
|
|
138
140
|
get isShuttingDown() {
|
|
@@ -1043,6 +1045,66 @@ export class DaemonLifecycle {
|
|
|
1043
1045
|
// Register built-in action providers from @waiaas/actions (reads from SettingsService)
|
|
1044
1046
|
const { registerBuiltInProviders } = await import('@waiaas/actions');
|
|
1045
1047
|
const builtIn = registerBuiltInProviders(this.actionProviderRegistry, this._settingsService, { rpcCaller });
|
|
1048
|
+
// Capture HyperliquidMarketData for HTTP routes (Phase 349)
|
|
1049
|
+
if (builtIn.hyperliquidMarketData) {
|
|
1050
|
+
this.hyperliquidMarketData = builtIn.hyperliquidMarketData;
|
|
1051
|
+
}
|
|
1052
|
+
// Register Polymarket providers when enabled (Phase 373)
|
|
1053
|
+
if (this._settingsService.get('actions.polymarket_enabled') === 'true') {
|
|
1054
|
+
try {
|
|
1055
|
+
const { createPolymarketInfrastructure } = await import('@waiaas/actions');
|
|
1056
|
+
const { encryptSettingValue, decryptSettingValue } = await import('../infrastructure/settings/settings-crypto.js');
|
|
1057
|
+
const { polymarketOrders: pmOrdersTable, polymarketPositions: pmPositionsTable, polymarketApiKeys: pmApiKeysTable, } = await import('../infrastructure/database/schema.js');
|
|
1058
|
+
const { eq: drizzleEq } = await import('drizzle-orm');
|
|
1059
|
+
const { uuidv7 } = await import('uuidv7');
|
|
1060
|
+
const mpHash = this.masterPassword || '';
|
|
1061
|
+
const db = this.db;
|
|
1062
|
+
const now = () => Math.floor(Date.now() / 1000);
|
|
1063
|
+
// Thin DB adapters wrapping Drizzle ORM for Polymarket interfaces (snake_case mapping)
|
|
1064
|
+
const apiKeyDbAdapter = {
|
|
1065
|
+
getApiKeyByWalletId: (walletId) => {
|
|
1066
|
+
const row = db.select().from(pmApiKeysTable).where(drizzleEq(pmApiKeysTable.walletId, walletId)).get();
|
|
1067
|
+
if (!row)
|
|
1068
|
+
return null;
|
|
1069
|
+
return { id: row.id, wallet_id: row.walletId, api_key: row.apiKey, api_secret_encrypted: row.apiSecretEncrypted, api_passphrase_encrypted: row.apiPassphraseEncrypted, signature_type: row.signatureType, proxy_address: row.proxyAddress, created_at: row.createdAt };
|
|
1070
|
+
},
|
|
1071
|
+
insertApiKey: (row) => db.insert(pmApiKeysTable).values({ id: uuidv7(), walletId: row.wallet_id, apiKey: row.api_key, apiSecretEncrypted: row.api_secret_encrypted, apiPassphraseEncrypted: row.api_passphrase_encrypted, signatureType: row.signature_type ?? 0, proxyAddress: row.proxy_address ?? null, createdAt: now() }).run(),
|
|
1072
|
+
deleteApiKeyByWalletId: (walletId) => db.delete(pmApiKeysTable).where(drizzleEq(pmApiKeysTable.walletId, walletId)).run(),
|
|
1073
|
+
};
|
|
1074
|
+
const orderDbAdapter = {
|
|
1075
|
+
insertOrder: (row) => db.insert(pmOrdersTable).values(row).run(),
|
|
1076
|
+
updateOrderStatus: (id, status, updatedAt) => db.update(pmOrdersTable).set({ status, updatedAt }).where(drizzleEq(pmOrdersTable.id, id)).run(),
|
|
1077
|
+
updateOrderStatusByOrderId: (orderId, status, updatedAt) => db.update(pmOrdersTable).set({ status, updatedAt }).where(drizzleEq(pmOrdersTable.orderId, orderId)).run(),
|
|
1078
|
+
};
|
|
1079
|
+
// PositionDb adapter matching the PositionDb interface
|
|
1080
|
+
const positionDbAdapter = {
|
|
1081
|
+
getPositions: (walletId) => {
|
|
1082
|
+
const rows = db.select().from(pmPositionsTable).where(drizzleEq(pmPositionsTable.walletId, walletId)).all();
|
|
1083
|
+
return rows.map(r => ({ id: r.id, wallet_id: r.walletId, condition_id: r.conditionId, token_id: r.tokenId, market_slug: r.marketSlug, outcome: r.outcome, size: r.size, avg_price: r.avgPrice, realized_pnl: r.realizedPnl, market_resolved: r.marketResolved, winning_outcome: r.winningOutcome, is_neg_risk: r.isNegRisk, created_at: r.createdAt, updated_at: r.updatedAt }));
|
|
1084
|
+
},
|
|
1085
|
+
getPosition: (walletId, tokenId) => {
|
|
1086
|
+
const rows = db.select().from(pmPositionsTable).where(drizzleEq(pmPositionsTable.walletId, walletId)).all();
|
|
1087
|
+
const row = rows.find(r => r.tokenId === tokenId);
|
|
1088
|
+
if (!row)
|
|
1089
|
+
return null;
|
|
1090
|
+
return { id: row.id, wallet_id: row.walletId, condition_id: row.conditionId, token_id: row.tokenId, market_slug: row.marketSlug, outcome: row.outcome, size: row.size, avg_price: row.avgPrice, realized_pnl: row.realizedPnl, market_resolved: row.marketResolved, winning_outcome: row.winningOutcome, is_neg_risk: row.isNegRisk, created_at: row.createdAt, updated_at: row.updatedAt };
|
|
1091
|
+
},
|
|
1092
|
+
upsert: (row) => db.insert(pmPositionsTable).values(row)
|
|
1093
|
+
.onConflictDoUpdate({ target: [pmPositionsTable.walletId, pmPositionsTable.tokenId], set: row }).run(),
|
|
1094
|
+
updateResolution: (conditionId, winningOutcome) => db.update(pmPositionsTable).set({ marketResolved: 1, winningOutcome, updatedAt: now() }).where(drizzleEq(pmPositionsTable.conditionId, conditionId)).run(),
|
|
1095
|
+
};
|
|
1096
|
+
const encryptFn = (plaintext) => encryptSettingValue(plaintext, mpHash);
|
|
1097
|
+
const decryptFn = (ciphertext) => decryptSettingValue(ciphertext, mpHash);
|
|
1098
|
+
const pmInfra = createPolymarketInfrastructure({}, { apiKeys: apiKeyDbAdapter, orders: orderDbAdapter, positions: positionDbAdapter }, encryptFn, decryptFn);
|
|
1099
|
+
this.actionProviderRegistry.register(pmInfra.orderProvider);
|
|
1100
|
+
this.actionProviderRegistry.register(pmInfra.ctfProvider);
|
|
1101
|
+
this.polymarketInfra = pmInfra;
|
|
1102
|
+
console.debug('Step 4f-pm: Polymarket providers registered (order + ctf)');
|
|
1103
|
+
}
|
|
1104
|
+
catch (err) {
|
|
1105
|
+
console.warn('Step 4f-pm (fail-soft): Polymarket registration failed:', err);
|
|
1106
|
+
}
|
|
1107
|
+
}
|
|
1046
1108
|
// Load plugins from ~/.waiaas/actions/ (if exists)
|
|
1047
1109
|
const actionsDir = join(dataDir, 'actions');
|
|
1048
1110
|
if (existsSync(actionsDir)) {
|
|
@@ -1079,6 +1141,29 @@ export class DaemonLifecycle {
|
|
|
1079
1141
|
}
|
|
1080
1142
|
}
|
|
1081
1143
|
// ------------------------------------------------------------------
|
|
1144
|
+
// Step 4f-2a: Register Across bridge status trackers when across_bridge is enabled
|
|
1145
|
+
// ------------------------------------------------------------------
|
|
1146
|
+
if (this._asyncPollingService && this._settingsService?.get('actions.across_bridge_enabled') === 'true') {
|
|
1147
|
+
try {
|
|
1148
|
+
const { AcrossBridgeStatusTracker, AcrossBridgeMonitoringTracker } = await import('@waiaas/actions');
|
|
1149
|
+
const acrossConfig = {
|
|
1150
|
+
enabled: true,
|
|
1151
|
+
apiBaseUrl: this._settingsService.get('actions.across_bridge_api_base_url') || 'https://app.across.to/api',
|
|
1152
|
+
integratorId: this._settingsService.get('actions.across_bridge_integrator_id') || '',
|
|
1153
|
+
fillDeadlineBufferSec: Number(this._settingsService.get('actions.across_bridge_fill_deadline_buffer_sec')) || 21600,
|
|
1154
|
+
defaultSlippagePct: Number(this._settingsService.get('actions.across_bridge_default_slippage_pct')) || 0.01,
|
|
1155
|
+
maxSlippagePct: Number(this._settingsService.get('actions.across_bridge_max_slippage_pct')) || 0.03,
|
|
1156
|
+
requestTimeoutMs: 10_000,
|
|
1157
|
+
};
|
|
1158
|
+
this._asyncPollingService.registerTracker(new AcrossBridgeStatusTracker(acrossConfig));
|
|
1159
|
+
this._asyncPollingService.registerTracker(new AcrossBridgeMonitoringTracker(acrossConfig));
|
|
1160
|
+
console.debug('Step 4f-2a: Across bridge status trackers registered (across-bridge + across-bridge-monitoring)');
|
|
1161
|
+
}
|
|
1162
|
+
catch (err) {
|
|
1163
|
+
console.warn('Step 4f-2a (fail-soft): Across bridge tracker registration failed:', err);
|
|
1164
|
+
}
|
|
1165
|
+
}
|
|
1166
|
+
// ------------------------------------------------------------------
|
|
1082
1167
|
// Step 4f-3: Register staking status trackers when lido/jito is enabled
|
|
1083
1168
|
// ------------------------------------------------------------------
|
|
1084
1169
|
if (this._asyncPollingService) {
|
|
@@ -1118,7 +1203,7 @@ export class DaemonLifecycle {
|
|
|
1118
1203
|
}
|
|
1119
1204
|
}
|
|
1120
1205
|
// ------------------------------------------------------------------
|
|
1121
|
-
// Step 4f-
|
|
1206
|
+
// Step 4f-6: Register IPositionProvider implementations with PositionTracker
|
|
1122
1207
|
// ------------------------------------------------------------------
|
|
1123
1208
|
if (this.positionTracker && this.actionProviderRegistry) {
|
|
1124
1209
|
try {
|
|
@@ -1206,6 +1291,9 @@ export class DaemonLifecycle {
|
|
|
1206
1291
|
// [Phase 320] Create ReputationCacheService for REPUTATION_THRESHOLD policy evaluation
|
|
1207
1292
|
const { ReputationCacheService } = await import('../services/erc8004/index.js');
|
|
1208
1293
|
const reputationCacheService = new ReputationCacheService(this._db, this._settingsService ?? undefined);
|
|
1294
|
+
// [#272] Create SmartAccountService for ERC-4337 CREATE2 address prediction
|
|
1295
|
+
const { SmartAccountService } = await import('../infrastructure/smart-account/smart-account-service.js');
|
|
1296
|
+
const smartAccountService = new SmartAccountService();
|
|
1209
1297
|
const app = createApp({
|
|
1210
1298
|
db: this._db,
|
|
1211
1299
|
sqlite: this.sqlite ?? undefined,
|
|
@@ -1224,6 +1312,7 @@ export class DaemonLifecycle {
|
|
|
1224
1312
|
settingsService: this._settingsService ?? undefined,
|
|
1225
1313
|
priceOracle: this.priceOracle,
|
|
1226
1314
|
actionProviderRegistry: this.actionProviderRegistry ?? undefined,
|
|
1315
|
+
smartAccountService,
|
|
1227
1316
|
// apiKeyStore removed in v29.5 -- API keys via SettingsService
|
|
1228
1317
|
onSettingsChanged: (changedKeys) => {
|
|
1229
1318
|
void hotReloader.handleChangedKeys(changedKeys);
|
|
@@ -1240,6 +1329,8 @@ export class DaemonLifecycle {
|
|
|
1240
1329
|
adminStatsService: this.adminStatsService ?? undefined,
|
|
1241
1330
|
autoStopService: this.autoStopService ?? undefined,
|
|
1242
1331
|
metricsCounter: this.metricsCounter ?? undefined,
|
|
1332
|
+
hyperliquidMarketData: this.hyperliquidMarketData ?? undefined,
|
|
1333
|
+
polymarketInfra: this.polymarketInfra ?? undefined,
|
|
1243
1334
|
});
|
|
1244
1335
|
const hostname = this._config.daemon.hostname;
|
|
1245
1336
|
const port = this._config.daemon.port;
|
|
@@ -1312,6 +1403,8 @@ export class DaemonLifecycle {
|
|
|
1312
1403
|
},
|
|
1313
1404
|
});
|
|
1314
1405
|
// Register delay-expired worker (every 5s: check for expired DELAY transactions)
|
|
1406
|
+
// #327: Process expired items sequentially with concurrency limit to prevent
|
|
1407
|
+
// resource exhaustion from concurrent RPC calls when many items expire at once.
|
|
1315
1408
|
if (this.delayQueue) {
|
|
1316
1409
|
this.workers.register('delay-expired', {
|
|
1317
1410
|
interval: 5_000,
|
|
@@ -1320,9 +1413,21 @@ export class DaemonLifecycle {
|
|
|
1320
1413
|
return;
|
|
1321
1414
|
const now = Math.floor(Date.now() / 1000);
|
|
1322
1415
|
const expired = this.delayQueue.processExpired(now);
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1416
|
+
if (expired.length === 0)
|
|
1417
|
+
return;
|
|
1418
|
+
// Process sequentially (one at a time) to avoid concurrent RPC/memory pressure
|
|
1419
|
+
void (async () => {
|
|
1420
|
+
for (const tx of expired) {
|
|
1421
|
+
if (this._isShuttingDown)
|
|
1422
|
+
break;
|
|
1423
|
+
try {
|
|
1424
|
+
await this.executeFromStage5(tx.txId, tx.walletId);
|
|
1425
|
+
}
|
|
1426
|
+
catch (err) {
|
|
1427
|
+
console.error(`[delay-expired] executeFromStage5(${tx.txId}) error:`, err);
|
|
1428
|
+
}
|
|
1429
|
+
}
|
|
1430
|
+
})();
|
|
1326
1431
|
},
|
|
1327
1432
|
});
|
|
1328
1433
|
}
|
|
@@ -1338,6 +1443,85 @@ export class DaemonLifecycle {
|
|
|
1338
1443
|
},
|
|
1339
1444
|
});
|
|
1340
1445
|
}
|
|
1446
|
+
// #329: Register submitted-tx-confirm worker (every 60s)
|
|
1447
|
+
// Retries confirmation for transactions stuck in SUBMITTED state after Stage 6 timeout.
|
|
1448
|
+
// Prevents STO-03 regression where on-chain success is not reflected in DB status.
|
|
1449
|
+
this.workers.register('submitted-tx-confirm', {
|
|
1450
|
+
interval: 60_000,
|
|
1451
|
+
handler: async () => {
|
|
1452
|
+
if (this._isShuttingDown || !this._db || !this.adapterPool || !this.sqlite)
|
|
1453
|
+
return;
|
|
1454
|
+
try {
|
|
1455
|
+
const { transactions } = await import('../infrastructure/database/schema.js');
|
|
1456
|
+
const { eq, and, isNotNull } = await import('drizzle-orm');
|
|
1457
|
+
const { insertAuditLog } = await import('../infrastructure/database/audit-helper.js');
|
|
1458
|
+
// Find SUBMITTED transactions with txHash that are older than 60s
|
|
1459
|
+
const cutoff = Math.floor(Date.now() / 1000) - 60;
|
|
1460
|
+
const stuckTxs = this._db
|
|
1461
|
+
.select({
|
|
1462
|
+
id: transactions.id,
|
|
1463
|
+
txHash: transactions.txHash,
|
|
1464
|
+
walletId: transactions.walletId,
|
|
1465
|
+
chain: transactions.chain,
|
|
1466
|
+
network: transactions.network,
|
|
1467
|
+
})
|
|
1468
|
+
.from(transactions)
|
|
1469
|
+
.where(and(eq(transactions.status, 'SUBMITTED'), isNotNull(transactions.txHash)))
|
|
1470
|
+
.all()
|
|
1471
|
+
.filter((tx) => {
|
|
1472
|
+
// Only retry if created before cutoff (avoid racing with Stage 6)
|
|
1473
|
+
const meta = this.sqlite.prepare('SELECT created_at FROM transactions WHERE id = ?').get(tx.id);
|
|
1474
|
+
return !meta?.created_at || meta.created_at < cutoff;
|
|
1475
|
+
});
|
|
1476
|
+
for (const tx of stuckTxs) {
|
|
1477
|
+
if (this._isShuttingDown || !tx.txHash || !tx.network)
|
|
1478
|
+
continue;
|
|
1479
|
+
try {
|
|
1480
|
+
const rpcUrl = resolveRpcUrl(this._config.rpc, tx.chain, tx.network);
|
|
1481
|
+
const adapter = await this.adapterPool.resolve(tx.chain, tx.network, rpcUrl);
|
|
1482
|
+
const result = await adapter.waitForConfirmation(tx.txHash, 10_000);
|
|
1483
|
+
if (result.status === 'confirmed' || result.status === 'finalized') {
|
|
1484
|
+
const executedAt = new Date(Math.floor(Date.now() / 1000) * 1000);
|
|
1485
|
+
this._db
|
|
1486
|
+
.update(transactions)
|
|
1487
|
+
.set({ status: 'CONFIRMED', executedAt })
|
|
1488
|
+
.where(eq(transactions.id, tx.id))
|
|
1489
|
+
.run();
|
|
1490
|
+
insertAuditLog(this.sqlite, {
|
|
1491
|
+
eventType: 'TX_CONFIRMED',
|
|
1492
|
+
actor: 'system',
|
|
1493
|
+
walletId: tx.walletId,
|
|
1494
|
+
txId: tx.id,
|
|
1495
|
+
details: { txHash: tx.txHash, source: 'submitted-tx-confirm-worker', network: tx.network },
|
|
1496
|
+
severity: 'info',
|
|
1497
|
+
});
|
|
1498
|
+
void this.notificationService?.notify('TX_CONFIRMED', tx.walletId, {
|
|
1499
|
+
txId: tx.id,
|
|
1500
|
+
txHash: tx.txHash,
|
|
1501
|
+
network: tx.network,
|
|
1502
|
+
}, { txId: tx.id });
|
|
1503
|
+
console.info(`[submitted-tx-confirm] ${tx.id} confirmed via background retry`);
|
|
1504
|
+
}
|
|
1505
|
+
else if (result.status === 'failed') {
|
|
1506
|
+
this._db
|
|
1507
|
+
.update(transactions)
|
|
1508
|
+
.set({ status: 'FAILED', error: 'Transaction reverted on-chain (background check)' })
|
|
1509
|
+
.where(eq(transactions.id, tx.id))
|
|
1510
|
+
.run();
|
|
1511
|
+
console.warn(`[submitted-tx-confirm] ${tx.id} failed on-chain`);
|
|
1512
|
+
}
|
|
1513
|
+
// status === 'submitted': still pending, retry on next interval
|
|
1514
|
+
}
|
|
1515
|
+
catch (_err) {
|
|
1516
|
+
// Swallow individual tx errors (RPC timeout, rate limit) — will retry next interval
|
|
1517
|
+
}
|
|
1518
|
+
}
|
|
1519
|
+
}
|
|
1520
|
+
catch (err) {
|
|
1521
|
+
console.error('[submitted-tx-confirm] worker error:', err);
|
|
1522
|
+
}
|
|
1523
|
+
},
|
|
1524
|
+
});
|
|
1341
1525
|
// Register userop-build-cleanup worker (5 min = 300s)
|
|
1342
1526
|
// Deletes expired build records from userop_builds table (10-min TTL)
|
|
1343
1527
|
this.workers.register('userop-build-cleanup', {
|