@humanode-hyperlane/rebalancer 27.2.2 → 1029.1.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 (295) hide show
  1. package/dist/bridges/LiFiBridge.d.ts +3 -3
  2. package/dist/bridges/LiFiBridge.d.ts.map +1 -1
  3. package/dist/bridges/LiFiBridge.js +66 -55
  4. package/dist/bridges/LiFiBridge.js.map +1 -1
  5. package/dist/bridges/LiFiBridge.test.js +213 -0
  6. package/dist/bridges/LiFiBridge.test.js.map +1 -1
  7. package/dist/config/RebalancerConfig.d.ts +4 -3
  8. package/dist/config/RebalancerConfig.d.ts.map +1 -1
  9. package/dist/config/RebalancerConfig.js +7 -5
  10. package/dist/config/RebalancerConfig.js.map +1 -1
  11. package/dist/config/RebalancerConfig.test.js +278 -2
  12. package/dist/config/RebalancerConfig.test.js.map +1 -1
  13. package/dist/config/types.d.ts +707 -2664
  14. package/dist/config/types.d.ts.map +1 -1
  15. package/dist/config/types.js +62 -7
  16. package/dist/config/types.js.map +1 -1
  17. package/dist/core/InventoryRebalancer.d.ts +13 -19
  18. package/dist/core/InventoryRebalancer.d.ts.map +1 -1
  19. package/dist/core/InventoryRebalancer.js +404 -276
  20. package/dist/core/InventoryRebalancer.js.map +1 -1
  21. package/dist/core/InventoryRebalancer.test.js +814 -25
  22. package/dist/core/InventoryRebalancer.test.js.map +1 -1
  23. package/dist/core/Rebalancer.d.ts.map +1 -1
  24. package/dist/core/Rebalancer.js +12 -6
  25. package/dist/core/Rebalancer.js.map +1 -1
  26. package/dist/core/Rebalancer.test.js +51 -0
  27. package/dist/core/Rebalancer.test.js.map +1 -1
  28. package/dist/core/RebalancerOrchestrator.d.ts.map +1 -1
  29. package/dist/core/RebalancerOrchestrator.test.js +0 -1
  30. package/dist/core/RebalancerOrchestrator.test.js.map +1 -1
  31. package/dist/core/RebalancerService.d.ts.map +1 -1
  32. package/dist/core/RebalancerService.js +3 -2
  33. package/dist/core/RebalancerService.js.map +1 -1
  34. package/dist/core/RebalancerService.test.js +24 -0
  35. package/dist/core/RebalancerService.test.js.map +1 -1
  36. package/dist/e2e/fixtures/routes.d.ts +3 -3
  37. package/dist/e2e/fixtures/routes.d.ts.map +1 -1
  38. package/dist/e2e/harness/BaseLocalDeploymentManager.d.ts.map +1 -1
  39. package/dist/e2e/harness/BaseLocalDeploymentManager.js +3 -2
  40. package/dist/e2e/harness/BaseLocalDeploymentManager.js.map +1 -1
  41. package/dist/e2e/harness/Erc20InventoryLocalDeploymentManager.d.ts.map +1 -1
  42. package/dist/e2e/harness/Erc20InventoryLocalDeploymentManager.js.map +1 -1
  43. package/dist/e2e/harness/Erc20LocalDeploymentManager.d.ts.map +1 -1
  44. package/dist/e2e/harness/ForkIndexer.d.ts.map +1 -1
  45. package/dist/e2e/harness/ForkIndexer.js.map +1 -1
  46. package/dist/e2e/harness/LocalProvider.d.ts +3 -0
  47. package/dist/e2e/harness/LocalProvider.d.ts.map +1 -0
  48. package/dist/e2e/harness/LocalProvider.js +9 -0
  49. package/dist/e2e/harness/LocalProvider.js.map +1 -0
  50. package/dist/e2e/harness/LocalProvider.test.d.ts +2 -0
  51. package/dist/e2e/harness/LocalProvider.test.d.ts.map +1 -0
  52. package/dist/e2e/harness/LocalProvider.test.js +14 -0
  53. package/dist/e2e/harness/LocalProvider.test.js.map +1 -0
  54. package/dist/e2e/harness/MixedLocalDeploymentManager.d.ts.map +1 -1
  55. package/dist/e2e/harness/MixedLocalDeploymentManager.js.map +1 -1
  56. package/dist/e2e/harness/MockExplorerClient.d.ts.map +1 -1
  57. package/dist/e2e/harness/MockExplorerClient.js.map +1 -1
  58. package/dist/e2e/harness/MockExternalBridge.d.ts.map +1 -1
  59. package/dist/e2e/harness/MockExternalBridge.js.map +1 -1
  60. package/dist/e2e/harness/NativeLocalDeploymentManager.d.ts.map +1 -1
  61. package/dist/e2e/harness/NativeLocalDeploymentManager.js +2 -1
  62. package/dist/e2e/harness/NativeLocalDeploymentManager.js.map +1 -1
  63. package/dist/e2e/harness/SnapshotHelper.d.ts.map +1 -1
  64. package/dist/e2e/harness/SnapshotHelper.js +3 -5
  65. package/dist/e2e/harness/SnapshotHelper.js.map +1 -1
  66. package/dist/e2e/harness/TestHelpers.js +1 -2
  67. package/dist/e2e/harness/TestHelpers.js.map +1 -1
  68. package/dist/e2e/harness/TestRebalancer.d.ts +5 -1
  69. package/dist/e2e/harness/TestRebalancer.d.ts.map +1 -1
  70. package/dist/e2e/harness/TestRebalancer.js +14 -4
  71. package/dist/e2e/harness/TestRebalancer.js.map +1 -1
  72. package/dist/e2e/relayer-denylist.e2e-test.d.ts +2 -0
  73. package/dist/e2e/relayer-denylist.e2e-test.d.ts.map +1 -0
  74. package/dist/e2e/relayer-denylist.e2e-test.js +388 -0
  75. package/dist/e2e/relayer-denylist.e2e-test.js.map +1 -0
  76. package/dist/factories/RebalancerContextFactory.d.ts.map +1 -1
  77. package/dist/factories/RebalancerContextFactory.js +61 -31
  78. package/dist/factories/RebalancerContextFactory.js.map +1 -1
  79. package/dist/factories/RebalancerContextFactory.test.js +336 -5
  80. package/dist/factories/RebalancerContextFactory.test.js.map +1 -1
  81. package/dist/index.d.ts +2 -2
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js +1 -1
  84. package/dist/index.js.map +1 -1
  85. package/dist/interfaces/IRebalancer.d.ts +4 -2
  86. package/dist/interfaces/IRebalancer.d.ts.map +1 -1
  87. package/dist/metrics/Metrics.d.ts.map +1 -1
  88. package/dist/metrics/Metrics.js +1 -1
  89. package/dist/metrics/Metrics.js.map +1 -1
  90. package/dist/metrics/PriceGetter.d.ts +1 -0
  91. package/dist/metrics/PriceGetter.d.ts.map +1 -1
  92. package/dist/metrics/PriceGetter.js +14 -4
  93. package/dist/metrics/PriceGetter.js.map +1 -1
  94. package/dist/metrics/PriceGetter.test.d.ts +2 -0
  95. package/dist/metrics/PriceGetter.test.d.ts.map +1 -0
  96. package/dist/metrics/PriceGetter.test.js +84 -0
  97. package/dist/metrics/PriceGetter.test.js.map +1 -0
  98. package/dist/metrics/scripts/metrics.d.ts +4 -4
  99. package/dist/monitor/Monitor.d.ts +1 -0
  100. package/dist/monitor/Monitor.d.ts.map +1 -1
  101. package/dist/monitor/Monitor.js +55 -46
  102. package/dist/monitor/Monitor.js.map +1 -1
  103. package/dist/monitor/Monitor.test.d.ts +2 -0
  104. package/dist/monitor/Monitor.test.d.ts.map +1 -0
  105. package/dist/monitor/Monitor.test.js +346 -0
  106. package/dist/monitor/Monitor.test.js.map +1 -0
  107. package/dist/service.d.ts +1 -1
  108. package/dist/service.d.ts.map +1 -1
  109. package/dist/service.js +9 -5
  110. package/dist/service.js.map +1 -1
  111. package/dist/strategy/BaseStrategy.d.ts.map +1 -1
  112. package/dist/strategy/BaseStrategy.js +13 -11
  113. package/dist/strategy/BaseStrategy.js.map +1 -1
  114. package/dist/strategy/CollateralDeficitStrategy.d.ts.map +1 -1
  115. package/dist/strategy/CollateralDeficitStrategy.js +2 -2
  116. package/dist/strategy/CollateralDeficitStrategy.js.map +1 -1
  117. package/dist/strategy/CompositeStrategy.d.ts.map +1 -1
  118. package/dist/strategy/CompositeStrategy.js.map +1 -1
  119. package/dist/strategy/CompositeStrategy.test.js.map +1 -1
  120. package/dist/strategy/MinAmountStrategy.d.ts +1 -0
  121. package/dist/strategy/MinAmountStrategy.d.ts.map +1 -1
  122. package/dist/strategy/MinAmountStrategy.js +12 -8
  123. package/dist/strategy/MinAmountStrategy.js.map +1 -1
  124. package/dist/strategy/MinAmountStrategy.test.js +189 -2
  125. package/dist/strategy/MinAmountStrategy.test.js.map +1 -1
  126. package/dist/strategy/StrategyFactory.d.ts.map +1 -1
  127. package/dist/strategy/StrategyFactory.js.map +1 -1
  128. package/dist/strategy/WeightedStrategy.d.ts.map +1 -1
  129. package/dist/test/helpers.d.ts +11 -3
  130. package/dist/test/helpers.d.ts.map +1 -1
  131. package/dist/test/helpers.js +9 -11
  132. package/dist/test/helpers.js.map +1 -1
  133. package/dist/test/lifiMocks.d.ts +6 -6
  134. package/dist/test/lifiMocks.d.ts.map +1 -1
  135. package/dist/test/lifiMocks.js +5 -2
  136. package/dist/test/lifiMocks.js.map +1 -1
  137. package/dist/test/pendingTransferMiddlewareMocks.d.ts +17 -0
  138. package/dist/test/pendingTransferMiddlewareMocks.d.ts.map +1 -0
  139. package/dist/test/pendingTransferMiddlewareMocks.js +43 -0
  140. package/dist/test/pendingTransferMiddlewareMocks.js.map +1 -0
  141. package/dist/tracking/ActionTracker.d.ts +4 -0
  142. package/dist/tracking/ActionTracker.d.ts.map +1 -1
  143. package/dist/tracking/ActionTracker.js +76 -9
  144. package/dist/tracking/ActionTracker.js.map +1 -1
  145. package/dist/tracking/ActionTracker.test.js +418 -1
  146. package/dist/tracking/ActionTracker.test.js.map +1 -1
  147. package/dist/tracking/IActionTracker.d.ts +4 -2
  148. package/dist/tracking/IActionTracker.d.ts.map +1 -1
  149. package/dist/tracking/InflightContextAdapter.d.ts.map +1 -1
  150. package/dist/tracking/InflightContextAdapter.js.map +1 -1
  151. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.d.ts +64 -0
  152. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.d.ts.map +1 -0
  153. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.js +474 -0
  154. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.js.map +1 -0
  155. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.test.d.ts +2 -0
  156. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.test.d.ts.map +1 -0
  157. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.test.js +1168 -0
  158. package/dist/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.test.js.map +1 -0
  159. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.d.ts +61 -0
  160. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.d.ts.map +1 -0
  161. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.js +160 -0
  162. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.js.map +1 -0
  163. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.test.d.ts +2 -0
  164. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.test.d.ts.map +1 -0
  165. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.test.js +369 -0
  166. package/dist/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.test.js.map +1 -0
  167. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.d.ts +60 -0
  168. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.d.ts.map +1 -0
  169. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.js +288 -0
  170. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.js.map +1 -0
  171. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.test.d.ts +2 -0
  172. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.test.d.ts.map +1 -0
  173. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.test.js +606 -0
  174. package/dist/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.test.js.map +1 -0
  175. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.d.ts +25 -0
  176. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.d.ts.map +1 -0
  177. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.js +41 -0
  178. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.js.map +1 -0
  179. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.test.d.ts +2 -0
  180. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.test.d.ts.map +1 -0
  181. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.test.js +141 -0
  182. package/dist/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.test.js.map +1 -0
  183. package/dist/tracking/pendingTransferMiddlewares/matchBody.d.ts +12 -0
  184. package/dist/tracking/pendingTransferMiddlewares/matchBody.d.ts.map +1 -0
  185. package/dist/tracking/pendingTransferMiddlewares/matchBody.js +29 -0
  186. package/dist/tracking/pendingTransferMiddlewares/matchBody.js.map +1 -0
  187. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.d.ts +59 -0
  188. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.d.ts.map +1 -0
  189. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.js +661 -0
  190. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.js.map +1 -0
  191. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.test.d.ts +2 -0
  192. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.test.d.ts.map +1 -0
  193. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.test.js +1093 -0
  194. package/dist/tracking/pendingTransferMiddlewares/relayerDenylistRules.test.js.map +1 -0
  195. package/dist/tracking/pendingTransferMiddlewares/types.d.ts +2 -0
  196. package/dist/tracking/pendingTransferMiddlewares/types.d.ts.map +1 -0
  197. package/dist/tracking/pendingTransferMiddlewares/types.js +4 -0
  198. package/dist/tracking/pendingTransferMiddlewares/types.js.map +1 -0
  199. package/dist/tracking/store/InMemoryStore.d.ts.map +1 -1
  200. package/dist/utils/ExplorerClient.d.ts +1 -0
  201. package/dist/utils/ExplorerClient.d.ts.map +1 -1
  202. package/dist/utils/ExplorerClient.js +8 -3
  203. package/dist/utils/ExplorerClient.js.map +1 -1
  204. package/dist/utils/ExplorerClient.test.js +25 -0
  205. package/dist/utils/ExplorerClient.test.js.map +1 -1
  206. package/dist/utils/balanceUtils.d.ts +7 -1
  207. package/dist/utils/balanceUtils.d.ts.map +1 -1
  208. package/dist/utils/balanceUtils.js +39 -1
  209. package/dist/utils/balanceUtils.js.map +1 -1
  210. package/dist/utils/balanceUtils.test.js +55 -1
  211. package/dist/utils/balanceUtils.test.js.map +1 -1
  212. package/dist/utils/blockTag.d.ts +5 -4
  213. package/dist/utils/blockTag.d.ts.map +1 -1
  214. package/dist/utils/blockTag.js +26 -10
  215. package/dist/utils/blockTag.js.map +1 -1
  216. package/dist/utils/blockTag.test.d.ts +2 -0
  217. package/dist/utils/blockTag.test.d.ts.map +1 -0
  218. package/dist/utils/blockTag.test.js +132 -0
  219. package/dist/utils/blockTag.test.js.map +1 -0
  220. package/dist/utils/bridgeUtils.js.map +1 -1
  221. package/dist/utils/errors.d.ts.map +1 -1
  222. package/dist/utils/gasEstimation.d.ts +2 -1
  223. package/dist/utils/gasEstimation.d.ts.map +1 -1
  224. package/dist/utils/gasEstimation.js +16 -13
  225. package/dist/utils/gasEstimation.js.map +1 -1
  226. package/dist/utils/gasEstimation.test.d.ts +2 -0
  227. package/dist/utils/gasEstimation.test.d.ts.map +1 -0
  228. package/dist/utils/gasEstimation.test.js +104 -0
  229. package/dist/utils/gasEstimation.test.js.map +1 -0
  230. package/dist/utils/tokenUtils.d.ts.map +1 -1
  231. package/dist/utils/tokenUtils.js +5 -2
  232. package/dist/utils/tokenUtils.js.map +1 -1
  233. package/package.json +23 -22
  234. package/src/bridges/LiFiBridge.test.ts +270 -0
  235. package/src/bridges/LiFiBridge.ts +90 -71
  236. package/src/config/RebalancerConfig.test.ts +315 -1
  237. package/src/config/RebalancerConfig.ts +6 -3
  238. package/src/config/types.ts +98 -8
  239. package/src/core/InventoryRebalancer.test.ts +1092 -38
  240. package/src/core/InventoryRebalancer.ts +584 -351
  241. package/src/core/Rebalancer.test.ts +84 -0
  242. package/src/core/Rebalancer.ts +22 -6
  243. package/src/core/RebalancerOrchestrator.test.ts +0 -1
  244. package/src/core/RebalancerService.test.ts +35 -0
  245. package/src/core/RebalancerService.ts +3 -2
  246. package/src/e2e/harness/BaseLocalDeploymentManager.ts +3 -1
  247. package/src/e2e/harness/LocalProvider.test.ts +16 -0
  248. package/src/e2e/harness/LocalProvider.ts +10 -0
  249. package/src/e2e/harness/NativeLocalDeploymentManager.ts +2 -1
  250. package/src/e2e/harness/SnapshotHelper.ts +2 -5
  251. package/src/e2e/harness/TestHelpers.ts +3 -3
  252. package/src/e2e/harness/TestRebalancer.ts +21 -1
  253. package/src/e2e/relayer-denylist.e2e-test.ts +558 -0
  254. package/src/factories/RebalancerContextFactory.test.ts +489 -8
  255. package/src/factories/RebalancerContextFactory.ts +86 -36
  256. package/src/index.ts +2 -0
  257. package/src/interfaces/IRebalancer.ts +4 -1
  258. package/src/metrics/Metrics.ts +1 -0
  259. package/src/metrics/PriceGetter.test.ts +113 -0
  260. package/src/metrics/PriceGetter.ts +18 -3
  261. package/src/monitor/Monitor.test.ts +408 -0
  262. package/src/monitor/Monitor.ts +123 -97
  263. package/src/service.ts +14 -8
  264. package/src/strategy/BaseStrategy.ts +18 -15
  265. package/src/strategy/CollateralDeficitStrategy.ts +4 -3
  266. package/src/strategy/MinAmountStrategy.test.ts +238 -2
  267. package/src/strategy/MinAmountStrategy.ts +29 -17
  268. package/src/test/helpers.ts +13 -12
  269. package/src/test/lifiMocks.ts +5 -2
  270. package/src/test/pendingTransferMiddlewareMocks.ts +65 -0
  271. package/src/tracking/ActionTracker.test.ts +635 -3
  272. package/src/tracking/ActionTracker.ts +92 -12
  273. package/src/tracking/IActionTracker.ts +4 -2
  274. package/src/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.test.ts +1693 -0
  275. package/src/tracking/pendingTransferMiddlewares/BlacklistIsmMiddleware.ts +784 -0
  276. package/src/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.test.ts +554 -0
  277. package/src/tracking/pendingTransferMiddlewares/PendingTransferMiddleware.ts +233 -0
  278. package/src/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.test.ts +894 -0
  279. package/src/tracking/pendingTransferMiddlewares/RelayerDenylistMiddleware.ts +404 -0
  280. package/src/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.test.ts +205 -0
  281. package/src/tracking/pendingTransferMiddlewares/buildPendingTransferMiddlewares.ts +89 -0
  282. package/src/tracking/pendingTransferMiddlewares/fixtures/mainnet-denylist.json +3556 -0
  283. package/src/tracking/pendingTransferMiddlewares/matchBody.ts +43 -0
  284. package/src/tracking/pendingTransferMiddlewares/relayerDenylistRules.test.ts +1220 -0
  285. package/src/tracking/pendingTransferMiddlewares/relayerDenylistRules.ts +934 -0
  286. package/src/tracking/pendingTransferMiddlewares/types.ts +3 -0
  287. package/src/utils/ExplorerClient.test.ts +42 -0
  288. package/src/utils/ExplorerClient.ts +14 -3
  289. package/src/utils/balanceUtils.test.ts +87 -1
  290. package/src/utils/balanceUtils.ts +73 -2
  291. package/src/utils/blockTag.test.ts +173 -0
  292. package/src/utils/blockTag.ts +35 -15
  293. package/src/utils/gasEstimation.test.ts +192 -0
  294. package/src/utils/gasEstimation.ts +17 -11
  295. package/src/utils/tokenUtils.ts +5 -2
@@ -1,7 +1,7 @@
1
- import type { z } from 'zod';
1
+ import { z } from 'zod';
2
2
  import type { ProtocolType } from '@humanode-hyperlane/utils';
3
3
  import type { InventorySignerConfig } from '../core/InventoryRebalancer.js';
4
- import { type ExternalBridgesConfigSchema, type StrategyConfig } from './types.js';
4
+ import { type ExternalBridgesConfigSchema, type PendingTransferMiddlewareConfig, type StrategyConfig } from './types.js';
5
5
  type ExternalBridgesConfig = z.infer<typeof ExternalBridgesConfigSchema>;
6
6
  export declare class RebalancerConfig {
7
7
  readonly warpRouteId: string;
@@ -9,7 +9,8 @@ export declare class RebalancerConfig {
9
9
  readonly intentTTL: number;
10
10
  readonly inventorySigners?: Partial<Record<ProtocolType, InventorySignerConfig>> | undefined;
11
11
  readonly externalBridges?: ExternalBridgesConfig | undefined;
12
- constructor(warpRouteId: string, strategyConfig: StrategyConfig[], intentTTL: number, inventorySigners?: Partial<Record<ProtocolType, InventorySignerConfig>> | undefined, externalBridges?: ExternalBridgesConfig | undefined);
12
+ readonly pendingTransferMiddlewares?: PendingTransferMiddlewareConfig[] | undefined;
13
+ constructor(warpRouteId: string, strategyConfig: StrategyConfig[], intentTTL: number, inventorySigners?: Partial<Record<ProtocolType, InventorySignerConfig>> | undefined, externalBridges?: ExternalBridgesConfig | undefined, pendingTransferMiddlewares?: PendingTransferMiddlewareConfig[] | undefined);
13
14
  /**
14
15
  * Loads config from a file
15
16
  * @param configFilePath Path to the config file
@@ -1 +1 @@
1
- {"version":3,"file":"RebalancerConfig.d.ts","sourceRoot":"","sources":["../../src/config/RebalancerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAG7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EACL,KAAK,2BAA2B,EAGhC,KAAK,cAAc,EAEpB,MAAM,YAAY,CAAC;AAEpB,KAAK,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEzE,qBAAa,gBAAgB;aAET,WAAW,EAAE,MAAM;aACnB,cAAc,EAAE,cAAc,EAAE;aAChC,SAAS,EAAE,MAAM;aACjB,gBAAgB,CAAC,EAAE,OAAO,CACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAC5C;aACe,eAAe,CAAC,EAAE,qBAAqB;gBANvC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,EAAE,EAChC,SAAS,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,OAAO,CACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAC5C,YAAA,EACe,eAAe,CAAC,EAAE,qBAAqB,YAAA;IAGzD;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM;CA8BnC"}
1
+ {"version":3,"file":"RebalancerConfig.d.ts","sourceRoot":"","sources":["../../src/config/RebalancerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EAGpC,KAAK,cAAc,EAEpB,MAAM,YAAY,CAAC;AAEpB,KAAK,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEzE,qBAAa,gBAAgB;aAET,WAAW,EAAE,MAAM;aACnB,cAAc,EAAE,cAAc,EAAE;aAChC,SAAS,EAAE,MAAM;aACjB,gBAAgB,CAAC,EAAE,OAAO,CACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAC5C;aACe,eAAe,CAAC,EAAE,qBAAqB;aACvC,0BAA0B,CAAC,EAAE,+BAA+B,EAAE;IARhF,YACkB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,EAAE,EAChC,SAAS,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,OAAO,CACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAC5C,YAAA,EACe,eAAe,CAAC,EAAE,qBAAqB,YAAA,EACvC,0BAA0B,CAAC,EAAE,+BAA+B,EAAE,YAAA,EAC5E;IAEJ;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,oBA+BjC;CACF"}
@@ -1,4 +1,4 @@
1
- import { fromZodError } from 'zod-validation-error';
1
+ import { z } from 'zod';
2
2
  import { readYamlOrJson } from '@humanode-hyperlane/utils/fs';
3
3
  import { RebalancerConfigSchema, getStrategyChainNames, } from './types.js';
4
4
  export class RebalancerConfig {
@@ -7,12 +7,14 @@ export class RebalancerConfig {
7
7
  intentTTL;
8
8
  inventorySigners;
9
9
  externalBridges;
10
- constructor(warpRouteId, strategyConfig, intentTTL, inventorySigners, externalBridges) {
10
+ pendingTransferMiddlewares;
11
+ constructor(warpRouteId, strategyConfig, intentTTL, inventorySigners, externalBridges, pendingTransferMiddlewares) {
11
12
  this.warpRouteId = warpRouteId;
12
13
  this.strategyConfig = strategyConfig;
13
14
  this.intentTTL = intentTTL;
14
15
  this.inventorySigners = inventorySigners;
15
16
  this.externalBridges = externalBridges;
17
+ this.pendingTransferMiddlewares = pendingTransferMiddlewares;
16
18
  }
17
19
  /**
18
20
  * Loads config from a file
@@ -22,14 +24,14 @@ export class RebalancerConfig {
22
24
  const config = readYamlOrJson(configFilePath);
23
25
  const validationResult = RebalancerConfigSchema.safeParse(config);
24
26
  if (!validationResult.success) {
25
- throw new Error(fromZodError(validationResult.error).message);
27
+ throw new Error(z.prettifyError(validationResult.error));
26
28
  }
27
- const { warpRouteId, strategy, intentTTL, inventorySigners, externalBridges, } = validationResult.data;
29
+ const { warpRouteId, strategy, intentTTL, inventorySigners, externalBridges, pendingTransferMiddlewares, } = validationResult.data;
28
30
  const chainNames = getStrategyChainNames(strategy);
29
31
  if (chainNames.length === 0) {
30
32
  throw new Error('No chains configured');
31
33
  }
32
- return new RebalancerConfig(warpRouteId, strategy, intentTTL, inventorySigners, externalBridges);
34
+ return new RebalancerConfig(warpRouteId, strategy, intentTTL, inventorySigners, externalBridges, pendingTransferMiddlewares);
33
35
  }
34
36
  }
35
37
  //# sourceMappingURL=RebalancerConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RebalancerConfig.js","sourceRoot":"","sources":["../../src/config/RebalancerConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAGL,sBAAsB,EAEtB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAIpB,MAAM,OAAO,gBAAgB;IAET;IACA;IACA;IACA;IAGA;IAPlB,YACkB,WAAmB,EACnB,cAAgC,EAChC,SAAiB,EACjB,gBAEf,EACe,eAAuC;QANvC,gBAAW,GAAX,WAAW,CAAQ;QACnB,mBAAc,GAAd,cAAc,CAAkB;QAChC,cAAS,GAAT,SAAS,CAAQ;QACjB,qBAAgB,GAAhB,gBAAgB,CAE/B;QACe,oBAAe,GAAf,eAAe,CAAwB;IACtD,CAAC;IAEJ;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,cAAsB;QAChC,MAAM,MAAM,GAA8B,cAAc,CAAC,cAAc,CAAC,CAAC;QAEzE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAElE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,EACJ,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,eAAe,GAChB,GAAG,gBAAgB,CAAC,IAAI,CAAC;QAE1B,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,gBAAgB,CACzB,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,eAAe,CAChB,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"RebalancerConfig.js","sourceRoot":"","sources":["../../src/config/RebalancerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAIL,sBAAsB,EAEtB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAIpB,MAAM,OAAO,gBAAgB;IAET,WAAW;IACX,cAAc;IACd,SAAS;IACT,gBAAgB;IAGhB,eAAe;IACf,0BAA0B;IAR5C,YACkB,WAAmB,EACnB,cAAgC,EAChC,SAAiB,EACjB,gBAEf,EACe,eAAuC,EACvC,0BAA8D;2BAP9D,WAAW;8BACX,cAAc;yBACd,SAAS;gCACT,gBAAgB;+BAGhB,eAAe;0CACf,0BAA0B;IACzC,CAAC;IAEJ;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,cAAsB;QAChC,MAAM,MAAM,GAA8B,cAAc,CAAC,cAAc,CAAC,CAAC;QAEzE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAElE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,EACJ,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,0BAA0B,GAC3B,GAAG,gBAAgB,CAAC,IAAI,CAAC;QAE1B,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,gBAAgB,CACzB,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,0BAA0B,CAC3B,CAAC;IACJ,CAAC;CACF"}
@@ -5,7 +5,7 @@ import { tmpdir } from 'os';
5
5
  import { join } from 'path';
6
6
  import { writeYamlOrJson } from '@humanode-hyperlane/utils/fs';
7
7
  import { RebalancerConfig } from './RebalancerConfig.js';
8
- import { DEFAULT_INTENT_TTL_MS, ExecutionType, ExternalBridgeType, RebalancerMinAmountType, RebalancerStrategyOptions, getAllBridges, } from './types.js';
8
+ import { DEFAULT_INTENT_TTL_MS, ExecutionType, ExternalBridgeType, PendingTransferMiddlewareType, RebalancerMinAmountType, RebalancerStrategyOptions, getAllBridges, } from './types.js';
9
9
  const TEST_CONFIG_PATH = join(tmpdir(), 'rebalancer-config-test.yaml');
10
10
  // Helper to get strategy as array (for test type safety)
11
11
  // Schema accepts both single object and array, but tests use array format
@@ -79,6 +79,7 @@ describe('RebalancerConfig', () => {
79
79
  intentTTL: DEFAULT_INTENT_TTL_MS,
80
80
  inventorySigners: undefined,
81
81
  externalBridges: undefined,
82
+ pendingTransferMiddlewares: undefined,
82
83
  });
83
84
  });
84
85
  it('should throw if chains are not configured', () => {
@@ -90,7 +91,14 @@ describe('RebalancerConfig', () => {
90
91
  // @ts-ignore
91
92
  delete data.warpRouteId;
92
93
  writeYamlOrJson(TEST_CONFIG_PATH, data);
93
- expect(() => RebalancerConfig.load(TEST_CONFIG_PATH)).to.throw('Validation error: Required at "warpRouteId"');
94
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH)).to.throw('Invalid input: expected string, received undefined');
95
+ });
96
+ it('reports an invalid bridge before running cross-field rules', () => {
97
+ const strategy = getStrategyArray(data)[0];
98
+ strategy.chains.chain1.bridge = 'bridge';
99
+ data.strategy = strategy;
100
+ writeYamlOrJson(TEST_CONFIG_PATH, data);
101
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH)).to.throw('Invalid string: must match pattern');
94
102
  });
95
103
  it('should load relative params without modifications', () => {
96
104
  data = {
@@ -484,6 +492,129 @@ describe('RebalancerConfig', () => {
484
492
  });
485
493
  });
486
494
  });
495
+ describe('Tron inventorySigners validation', () => {
496
+ const TEST_CONFIG_PATH_TRON = join(tmpdir(), 'rebalancer-tron-test.yaml');
497
+ afterEach(() => {
498
+ rmSync(TEST_CONFIG_PATH_TRON, { force: true });
499
+ });
500
+ it('should reject Tron T-prefix base58 address in inventorySigners', () => {
501
+ const data = {
502
+ warpRouteId: 'test-tron-route',
503
+ strategy: [
504
+ {
505
+ rebalanceStrategy: RebalancerStrategyOptions.Weighted,
506
+ chains: {
507
+ tron: {
508
+ weighted: { weight: 50, tolerance: 5 },
509
+ executionType: ExecutionType.Inventory,
510
+ externalBridge: ExternalBridgeType.LiFi,
511
+ },
512
+ ethereum: {
513
+ weighted: { weight: 50, tolerance: 5 },
514
+ executionType: ExecutionType.Inventory,
515
+ externalBridge: ExternalBridgeType.LiFi,
516
+ },
517
+ },
518
+ },
519
+ ],
520
+ inventorySigners: {
521
+ tron: {
522
+ address: 'TJRabPrwbZy45sbavfcjinPJC18kjpRTv8',
523
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
524
+ },
525
+ ethereum: {
526
+ address: '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
527
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
528
+ },
529
+ },
530
+ externalBridges: {
531
+ lifi: {
532
+ integrator: 'test-app',
533
+ },
534
+ },
535
+ };
536
+ writeYamlOrJson(TEST_CONFIG_PATH_TRON, data);
537
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH_TRON)).to.throw(/must be a valid 0x hex address/);
538
+ });
539
+ it('should accept valid 0x hex address for Tron inventorySigners', () => {
540
+ const data = {
541
+ warpRouteId: 'test-tron-route',
542
+ strategy: [
543
+ {
544
+ rebalanceStrategy: RebalancerStrategyOptions.Weighted,
545
+ chains: {
546
+ tron: {
547
+ weighted: { weight: 50, tolerance: 5 },
548
+ executionType: ExecutionType.Inventory,
549
+ externalBridge: ExternalBridgeType.LiFi,
550
+ },
551
+ ethereum: {
552
+ weighted: { weight: 50, tolerance: 5 },
553
+ executionType: ExecutionType.Inventory,
554
+ externalBridge: ExternalBridgeType.LiFi,
555
+ },
556
+ },
557
+ },
558
+ ],
559
+ inventorySigners: {
560
+ tron: {
561
+ address: '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
562
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
563
+ },
564
+ ethereum: {
565
+ address: '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
566
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
567
+ },
568
+ },
569
+ externalBridges: {
570
+ lifi: {
571
+ integrator: 'test-app',
572
+ },
573
+ },
574
+ };
575
+ writeYamlOrJson(TEST_CONFIG_PATH_TRON, data);
576
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH_TRON)).to.not.throw();
577
+ });
578
+ it('should reject invalid Tron address in inventorySigners', () => {
579
+ const data = {
580
+ warpRouteId: 'test-tron-route',
581
+ strategy: [
582
+ {
583
+ rebalanceStrategy: RebalancerStrategyOptions.Weighted,
584
+ chains: {
585
+ tron: {
586
+ weighted: { weight: 50, tolerance: 5 },
587
+ executionType: ExecutionType.Inventory,
588
+ externalBridge: ExternalBridgeType.LiFi,
589
+ },
590
+ ethereum: {
591
+ weighted: { weight: 50, tolerance: 5 },
592
+ executionType: ExecutionType.Inventory,
593
+ externalBridge: ExternalBridgeType.LiFi,
594
+ },
595
+ },
596
+ },
597
+ ],
598
+ inventorySigners: {
599
+ tron: {
600
+ address: 'INVALID_TRON_ADDRESS',
601
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
602
+ },
603
+ ethereum: {
604
+ address: '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
605
+ key: '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
606
+ },
607
+ },
608
+ externalBridges: {
609
+ lifi: {
610
+ integrator: 'test-app',
611
+ },
612
+ },
613
+ };
614
+ writeYamlOrJson(TEST_CONFIG_PATH_TRON, data);
615
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH_TRON)).to.throw(/must be a valid 0x hex address/);
616
+ });
617
+ });
487
618
  describe('per-chain bridge configuration', () => {
488
619
  const TEST_CONFIG_PATH_BRIDGE = join(tmpdir(), 'rebalancer-bridge-test.yaml');
489
620
  afterEach(() => {
@@ -795,4 +926,149 @@ describe('getAllBridges', () => {
795
926
  expect(result).to.deep.equal([BRIDGE_A]);
796
927
  });
797
928
  });
929
+ describe('pendingTransferMiddlewares configuration', () => {
930
+ const TEST_CONFIG_PATH_MIDDLEWARES = join(tmpdir(), 'rebalancer-pending-transfer-middlewares-test.yaml');
931
+ function writeConfig(pendingTransferMiddlewares) {
932
+ writeYamlOrJson(TEST_CONFIG_PATH_MIDDLEWARES, {
933
+ warpRouteId: 'USDC/radix',
934
+ strategy: [
935
+ {
936
+ rebalanceStrategy: RebalancerStrategyOptions.Weighted,
937
+ chains: {
938
+ ethereum: {
939
+ weighted: { weight: 50, tolerance: 10 },
940
+ bridge: ethers.constants.AddressZero,
941
+ bridgeLockTime: 1800,
942
+ },
943
+ arbitrum: {
944
+ weighted: { weight: 50, tolerance: 10 },
945
+ bridge: ethers.constants.AddressZero,
946
+ bridgeLockTime: 1800,
947
+ },
948
+ },
949
+ },
950
+ ],
951
+ pendingTransferMiddlewares,
952
+ });
953
+ }
954
+ afterEach(() => {
955
+ rmSync(TEST_CONFIG_PATH_MIDDLEWARES, { force: true });
956
+ });
957
+ it('leaves middlewares unset when the field is absent', () => {
958
+ writeConfig(undefined);
959
+ expect(RebalancerConfig.load(TEST_CONFIG_PATH_MIDDLEWARES)
960
+ .pendingTransferMiddlewares).to.equal(undefined);
961
+ });
962
+ it('loads middlewares in order, with defaults and duplicate types', () => {
963
+ writeConfig([
964
+ {
965
+ type: 'relayerDenylist',
966
+ url: 'https://raw.githubusercontent.com/hyperlane-xyz/hyperlane-registry/main/deployments/relayer/mainnet-denylist.json',
967
+ },
968
+ { type: 'blacklistIsm', refreshIntervalSecs: 300 },
969
+ {
970
+ type: 'relayerDenylist',
971
+ url: 'file:///etc/rebalancer/denylist.json',
972
+ refreshIntervalSecs: 30,
973
+ },
974
+ { type: 'blacklistIsm' },
975
+ ]);
976
+ expect(RebalancerConfig.load(TEST_CONFIG_PATH_MIDDLEWARES)
977
+ .pendingTransferMiddlewares).to.deep.equal([
978
+ {
979
+ type: PendingTransferMiddlewareType.RelayerDenylist,
980
+ url: 'https://raw.githubusercontent.com/hyperlane-xyz/hyperlane-registry/main/deployments/relayer/mainnet-denylist.json',
981
+ refreshIntervalSecs: 60,
982
+ },
983
+ {
984
+ type: PendingTransferMiddlewareType.BlacklistIsm,
985
+ refreshIntervalSecs: 300,
986
+ },
987
+ {
988
+ type: PendingTransferMiddlewareType.RelayerDenylist,
989
+ url: 'file:///etc/rebalancer/denylist.json',
990
+ refreshIntervalSecs: 30,
991
+ },
992
+ {
993
+ type: PendingTransferMiddlewareType.BlacklistIsm,
994
+ refreshIntervalSecs: 600,
995
+ },
996
+ ]);
997
+ });
998
+ const invalidCases = [
999
+ {
1000
+ name: 'an unknown type',
1001
+ middlewares: [{ type: 'ageCap' }],
1002
+ error: /pendingTransferMiddlewares/,
1003
+ },
1004
+ {
1005
+ name: 'a denylist without url',
1006
+ middlewares: [{ type: 'relayerDenylist' }],
1007
+ error: /url/,
1008
+ },
1009
+ {
1010
+ name: 'a denylist url with an unsupported protocol',
1011
+ middlewares: [
1012
+ { type: 'relayerDenylist', url: 'ftp://example.com/x.json' },
1013
+ ],
1014
+ error: /url must be an https:\/\/, http:\/\/ or file:\/\/ URL/,
1015
+ },
1016
+ {
1017
+ name: 'a denylist url with credentials',
1018
+ middlewares: [
1019
+ {
1020
+ type: 'relayerDenylist',
1021
+ url: 'https://user:hunter2@example.com/x.json',
1022
+ },
1023
+ ],
1024
+ error: /url must not contain credentials/,
1025
+ },
1026
+ {
1027
+ name: 'a non-positive refresh interval',
1028
+ middlewares: [
1029
+ {
1030
+ type: 'relayerDenylist',
1031
+ url: 'https://example.com/x.json',
1032
+ refreshIntervalSecs: 0,
1033
+ },
1034
+ ],
1035
+ error: /refreshIntervalSecs/,
1036
+ },
1037
+ {
1038
+ name: 'a non-integer blacklistIsm refresh interval',
1039
+ middlewares: [{ type: 'blacklistIsm', refreshIntervalSecs: 1.5 }],
1040
+ error: /refreshIntervalSecs/,
1041
+ },
1042
+ {
1043
+ name: 'a misspelled denylist key',
1044
+ middlewares: [
1045
+ {
1046
+ type: 'relayerDenylist',
1047
+ url: 'https://example.com/x.json',
1048
+ refreshIntervalSec: 30,
1049
+ },
1050
+ ],
1051
+ error: /Unrecognized key: "refreshIntervalSec"/,
1052
+ },
1053
+ {
1054
+ name: 'a misspelled blacklistIsm key',
1055
+ middlewares: [{ type: 'blacklistIsm', refreshIntervalSec: 300 }],
1056
+ error: /Unrecognized key: "refreshIntervalSec"/,
1057
+ },
1058
+ {
1059
+ name: 'a non-array value',
1060
+ middlewares: { blacklistIsm: {} },
1061
+ error: /pendingTransferMiddlewares/,
1062
+ },
1063
+ ];
1064
+ for (const c of invalidCases) {
1065
+ it(`rejects ${c.name}`, () => {
1066
+ writeConfig(c.middlewares);
1067
+ expect(() => RebalancerConfig.load(TEST_CONFIG_PATH_MIDDLEWARES))
1068
+ .to.throw(c.error)
1069
+ .with.property('message')
1070
+ .that.does.not.include('hunter2');
1071
+ });
1072
+ }
1073
+ });
798
1074
  //# sourceMappingURL=RebalancerConfig.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RebalancerConfig.test.js","sourceRoot":"","sources":["../../src/config/RebalancerConfig.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RebalancerConfig.test.js","sourceRoot":"","sources":["../../src/config/RebalancerConfig.test.ts"],"names":[],"mappings":"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"}