@hyperlane-xyz/rebalancer 0.1.2 → 1.0.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.
Files changed (223) hide show
  1. package/README.md +134 -14
  2. package/dist/config/RebalancerConfig.d.ts +2 -2
  3. package/dist/config/RebalancerConfig.d.ts.map +1 -1
  4. package/dist/config/RebalancerConfig.js +4 -3
  5. package/dist/config/RebalancerConfig.js.map +1 -1
  6. package/dist/config/RebalancerConfig.test.js +434 -163
  7. package/dist/config/RebalancerConfig.test.js.map +1 -1
  8. package/dist/config/types.d.ts +1650 -290
  9. package/dist/config/types.d.ts.map +1 -1
  10. package/dist/config/types.js +124 -46
  11. package/dist/config/types.js.map +1 -1
  12. package/dist/core/Rebalancer.d.ts +14 -7
  13. package/dist/core/Rebalancer.d.ts.map +1 -1
  14. package/dist/core/Rebalancer.js +168 -99
  15. package/dist/core/Rebalancer.js.map +1 -1
  16. package/dist/core/Rebalancer.test.d.ts +2 -0
  17. package/dist/core/Rebalancer.test.d.ts.map +1 -0
  18. package/dist/core/Rebalancer.test.js +391 -0
  19. package/dist/core/Rebalancer.test.js.map +1 -0
  20. package/dist/core/RebalancerService.d.ts +16 -2
  21. package/dist/core/RebalancerService.d.ts.map +1 -1
  22. package/dist/core/RebalancerService.js +164 -21
  23. package/dist/core/RebalancerService.js.map +1 -1
  24. package/dist/core/RebalancerService.test.d.ts +2 -0
  25. package/dist/core/RebalancerService.test.d.ts.map +1 -0
  26. package/dist/core/RebalancerService.test.js +809 -0
  27. package/dist/core/RebalancerService.test.js.map +1 -0
  28. package/dist/factories/RebalancerContextFactory.d.ts +11 -0
  29. package/dist/factories/RebalancerContextFactory.d.ts.map +1 -1
  30. package/dist/factories/RebalancerContextFactory.js +60 -13
  31. package/dist/factories/RebalancerContextFactory.js.map +1 -1
  32. package/dist/index.d.ts +6 -6
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +4 -3
  35. package/dist/index.js.map +1 -1
  36. package/dist/interfaces/IMonitor.d.ts +6 -8
  37. package/dist/interfaces/IMonitor.d.ts.map +1 -1
  38. package/dist/interfaces/IMonitor.js.map +1 -1
  39. package/dist/interfaces/IRebalancer.d.ts +20 -4
  40. package/dist/interfaces/IRebalancer.d.ts.map +1 -1
  41. package/dist/interfaces/IStrategy.d.ts +18 -2
  42. package/dist/interfaces/IStrategy.d.ts.map +1 -1
  43. package/dist/metrics/Metrics.d.ts +4 -2
  44. package/dist/metrics/Metrics.d.ts.map +1 -1
  45. package/dist/metrics/Metrics.js +21 -1
  46. package/dist/metrics/Metrics.js.map +1 -1
  47. package/dist/metrics/scripts/metrics.d.ts +2 -0
  48. package/dist/metrics/scripts/metrics.d.ts.map +1 -1
  49. package/dist/metrics/scripts/metrics.js +12 -0
  50. package/dist/metrics/scripts/metrics.js.map +1 -1
  51. package/dist/monitor/Monitor.d.ts +8 -3
  52. package/dist/monitor/Monitor.d.ts.map +1 -1
  53. package/dist/monitor/Monitor.js +75 -15
  54. package/dist/monitor/Monitor.js.map +1 -1
  55. package/dist/strategy/BaseStrategy.d.ts +51 -5
  56. package/dist/strategy/BaseStrategy.d.ts.map +1 -1
  57. package/dist/strategy/BaseStrategy.js +199 -19
  58. package/dist/strategy/BaseStrategy.js.map +1 -1
  59. package/dist/strategy/CollateralDeficitStrategy.d.ts +65 -0
  60. package/dist/strategy/CollateralDeficitStrategy.d.ts.map +1 -0
  61. package/dist/strategy/CollateralDeficitStrategy.js +245 -0
  62. package/dist/strategy/CollateralDeficitStrategy.js.map +1 -0
  63. package/dist/strategy/CollateralDeficitStrategy.test.d.ts +2 -0
  64. package/dist/strategy/CollateralDeficitStrategy.test.d.ts.map +1 -0
  65. package/dist/strategy/CollateralDeficitStrategy.test.js +364 -0
  66. package/dist/strategy/CollateralDeficitStrategy.test.js.map +1 -0
  67. package/dist/strategy/CompositeStrategy.d.ts +18 -0
  68. package/dist/strategy/CompositeStrategy.d.ts.map +1 -0
  69. package/dist/strategy/CompositeStrategy.js +63 -0
  70. package/dist/strategy/CompositeStrategy.js.map +1 -0
  71. package/dist/strategy/CompositeStrategy.test.d.ts +2 -0
  72. package/dist/strategy/CompositeStrategy.test.d.ts.map +1 -0
  73. package/dist/strategy/CompositeStrategy.test.js +265 -0
  74. package/dist/strategy/CompositeStrategy.test.js.map +1 -0
  75. package/dist/strategy/MinAmountStrategy.d.ts +12 -5
  76. package/dist/strategy/MinAmountStrategy.d.ts.map +1 -1
  77. package/dist/strategy/MinAmountStrategy.js +23 -14
  78. package/dist/strategy/MinAmountStrategy.js.map +1 -1
  79. package/dist/strategy/MinAmountStrategy.test.js +88 -20
  80. package/dist/strategy/MinAmountStrategy.test.js.map +1 -1
  81. package/dist/strategy/StrategyFactory.d.ts +15 -6
  82. package/dist/strategy/StrategyFactory.d.ts.map +1 -1
  83. package/dist/strategy/StrategyFactory.js +48 -10
  84. package/dist/strategy/StrategyFactory.js.map +1 -1
  85. package/dist/strategy/StrategyFactory.test.js +2 -2
  86. package/dist/strategy/StrategyFactory.test.js.map +1 -1
  87. package/dist/strategy/WeightedStrategy.d.ts +13 -4
  88. package/dist/strategy/WeightedStrategy.d.ts.map +1 -1
  89. package/dist/strategy/WeightedStrategy.js +18 -6
  90. package/dist/strategy/WeightedStrategy.js.map +1 -1
  91. package/dist/strategy/WeightedStrategy.test.js +108 -18
  92. package/dist/strategy/WeightedStrategy.test.js.map +1 -1
  93. package/dist/strategy/index.d.ts +2 -0
  94. package/dist/strategy/index.d.ts.map +1 -1
  95. package/dist/strategy/index.js +2 -0
  96. package/dist/strategy/index.js.map +1 -1
  97. package/dist/test/helpers.d.ts +93 -3
  98. package/dist/test/helpers.d.ts.map +1 -1
  99. package/dist/test/helpers.js +267 -10
  100. package/dist/test/helpers.js.map +1 -1
  101. package/dist/tracking/ActionTracker.d.ts +49 -0
  102. package/dist/tracking/ActionTracker.d.ts.map +1 -0
  103. package/dist/tracking/ActionTracker.js +422 -0
  104. package/dist/tracking/ActionTracker.js.map +1 -0
  105. package/dist/tracking/ActionTracker.test.d.ts +2 -0
  106. package/dist/tracking/ActionTracker.test.d.ts.map +1 -0
  107. package/dist/tracking/ActionTracker.test.js +637 -0
  108. package/dist/tracking/ActionTracker.test.js.map +1 -0
  109. package/dist/tracking/IActionTracker.d.ts +101 -0
  110. package/dist/tracking/IActionTracker.d.ts.map +1 -0
  111. package/dist/tracking/IActionTracker.js +2 -0
  112. package/dist/tracking/IActionTracker.js.map +1 -0
  113. package/dist/tracking/InflightContextAdapter.d.ts +18 -0
  114. package/dist/tracking/InflightContextAdapter.d.ts.map +1 -0
  115. package/dist/tracking/InflightContextAdapter.js +35 -0
  116. package/dist/tracking/InflightContextAdapter.js.map +1 -0
  117. package/dist/tracking/InflightContextAdapter.test.d.ts +2 -0
  118. package/dist/tracking/InflightContextAdapter.test.d.ts.map +1 -0
  119. package/dist/tracking/InflightContextAdapter.test.js +172 -0
  120. package/dist/tracking/InflightContextAdapter.test.js.map +1 -0
  121. package/dist/tracking/index.d.ts +7 -0
  122. package/dist/tracking/index.d.ts.map +1 -0
  123. package/dist/tracking/index.js +6 -0
  124. package/dist/tracking/index.js.map +1 -0
  125. package/dist/tracking/store/IStore.d.ts +41 -0
  126. package/dist/tracking/store/IStore.d.ts.map +1 -0
  127. package/dist/tracking/store/IStore.js +2 -0
  128. package/dist/tracking/store/IStore.js.map +1 -0
  129. package/dist/tracking/store/InMemoryStore.d.ts +21 -0
  130. package/dist/tracking/store/InMemoryStore.d.ts.map +1 -0
  131. package/dist/tracking/store/InMemoryStore.js +40 -0
  132. package/dist/tracking/store/InMemoryStore.js.map +1 -0
  133. package/dist/tracking/store/InMemoryStore.test.d.ts +2 -0
  134. package/dist/tracking/store/InMemoryStore.test.d.ts.map +1 -0
  135. package/dist/tracking/store/InMemoryStore.test.js +290 -0
  136. package/dist/tracking/store/InMemoryStore.test.js.map +1 -0
  137. package/dist/tracking/store/index.d.ts +3 -0
  138. package/dist/tracking/store/index.d.ts.map +1 -0
  139. package/dist/tracking/store/index.js +2 -0
  140. package/dist/tracking/store/index.js.map +1 -0
  141. package/dist/tracking/types.d.ts +43 -0
  142. package/dist/tracking/types.d.ts.map +1 -0
  143. package/dist/tracking/types.js +2 -0
  144. package/dist/tracking/types.js.map +1 -0
  145. package/dist/utils/ExplorerClient.d.ts +39 -1
  146. package/dist/utils/ExplorerClient.d.ts.map +1 -1
  147. package/dist/utils/ExplorerClient.js +205 -2
  148. package/dist/utils/ExplorerClient.js.map +1 -1
  149. package/dist/utils/balanceUtils.js +2 -2
  150. package/dist/utils/balanceUtils.js.map +1 -1
  151. package/dist/utils/balanceUtils.test.js +1 -0
  152. package/dist/utils/balanceUtils.test.js.map +1 -1
  153. package/dist/utils/bridgeUtils.d.ts +1 -3
  154. package/dist/utils/bridgeUtils.d.ts.map +1 -1
  155. package/dist/utils/bridgeUtils.js +1 -5
  156. package/dist/utils/bridgeUtils.js.map +1 -1
  157. package/dist/utils/bridgeUtils.test.js +3 -14
  158. package/dist/utils/bridgeUtils.test.js.map +1 -1
  159. package/package.json +11 -9
  160. package/src/config/RebalancerConfig.test.ts +459 -163
  161. package/src/config/RebalancerConfig.ts +5 -3
  162. package/src/config/types.ts +159 -52
  163. package/src/core/Rebalancer.test.ts +632 -0
  164. package/src/core/Rebalancer.ts +247 -157
  165. package/src/core/RebalancerService.test.ts +1144 -0
  166. package/src/core/RebalancerService.ts +245 -23
  167. package/src/factories/RebalancerContextFactory.ts +115 -14
  168. package/src/index.ts +16 -4
  169. package/src/interfaces/IMonitor.ts +15 -8
  170. package/src/interfaces/IRebalancer.ts +22 -4
  171. package/src/interfaces/IStrategy.ts +23 -2
  172. package/src/metrics/Metrics.ts +26 -5
  173. package/src/metrics/scripts/metrics.ts +14 -0
  174. package/src/monitor/Monitor.ts +109 -22
  175. package/src/strategy/BaseStrategy.ts +316 -26
  176. package/src/strategy/CollateralDeficitStrategy.test.ts +551 -0
  177. package/src/strategy/CollateralDeficitStrategy.ts +390 -0
  178. package/src/strategy/CompositeStrategy.test.ts +405 -0
  179. package/src/strategy/CompositeStrategy.ts +102 -0
  180. package/src/strategy/MinAmountStrategy.test.ts +189 -88
  181. package/src/strategy/MinAmountStrategy.ts +44 -13
  182. package/src/strategy/StrategyFactory.test.ts +2 -2
  183. package/src/strategy/StrategyFactory.ts +91 -8
  184. package/src/strategy/WeightedStrategy.test.ts +187 -72
  185. package/src/strategy/WeightedStrategy.ts +41 -7
  186. package/src/strategy/index.ts +2 -0
  187. package/src/test/helpers.ts +418 -14
  188. package/src/tracking/ActionTracker.test.ts +783 -0
  189. package/src/tracking/ActionTracker.ts +647 -0
  190. package/src/tracking/IActionTracker.ts +140 -0
  191. package/src/tracking/InflightContextAdapter.test.ts +203 -0
  192. package/src/tracking/InflightContextAdapter.ts +42 -0
  193. package/src/tracking/index.ts +36 -0
  194. package/src/tracking/store/IStore.ts +48 -0
  195. package/src/tracking/store/InMemoryStore.test.ts +338 -0
  196. package/src/tracking/store/InMemoryStore.ts +58 -0
  197. package/src/tracking/store/index.ts +2 -0
  198. package/src/tracking/types.ts +74 -0
  199. package/src/utils/ExplorerClient.ts +266 -3
  200. package/src/utils/balanceUtils.test.ts +1 -0
  201. package/src/utils/balanceUtils.ts +2 -2
  202. package/src/utils/bridgeUtils.test.ts +3 -15
  203. package/src/utils/bridgeUtils.ts +0 -10
  204. package/dist/core/WithInflightGuard.d.ts +0 -20
  205. package/dist/core/WithInflightGuard.d.ts.map +0 -1
  206. package/dist/core/WithInflightGuard.js +0 -47
  207. package/dist/core/WithInflightGuard.js.map +0 -1
  208. package/dist/core/WithInflightGuard.test.d.ts +0 -2
  209. package/dist/core/WithInflightGuard.test.d.ts.map +0 -1
  210. package/dist/core/WithInflightGuard.test.js +0 -64
  211. package/dist/core/WithInflightGuard.test.js.map +0 -1
  212. package/dist/core/WithSemaphore.d.ts +0 -22
  213. package/dist/core/WithSemaphore.d.ts.map +0 -1
  214. package/dist/core/WithSemaphore.js +0 -67
  215. package/dist/core/WithSemaphore.js.map +0 -1
  216. package/dist/core/WithSemaphore.test.d.ts +0 -2
  217. package/dist/core/WithSemaphore.test.d.ts.map +0 -1
  218. package/dist/core/WithSemaphore.test.js +0 -83
  219. package/dist/core/WithSemaphore.test.js.map +0 -1
  220. package/src/core/WithInflightGuard.test.ts +0 -131
  221. package/src/core/WithInflightGuard.ts +0 -67
  222. package/src/core/WithSemaphore.test.ts +0 -111
  223. package/src/core/WithSemaphore.ts +0 -92
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RebalancerService.test.js","sourceRoot":"","sources":["../../src/core/RebalancerService.test.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import type { IRebalancer } from '../interfaces/IRebalancer.js';
6
6
  import type { IStrategy } from '../interfaces/IStrategy.js';
7
7
  import { Metrics } from '../metrics/Metrics.js';
8
8
  import { Monitor } from '../monitor/Monitor.js';
9
+ import { type IActionTracker, InflightContextAdapter } from '../tracking/index.js';
9
10
  export declare class RebalancerContextFactory {
10
11
  private readonly config;
11
12
  private readonly warpCore;
@@ -36,6 +37,16 @@ export declare class RebalancerContextFactory {
36
37
  createMonitor(checkFrequency: number): Monitor;
37
38
  createStrategy(metrics?: Metrics): Promise<IStrategy>;
38
39
  createRebalancer(metrics?: Metrics): IRebalancer;
40
+ /**
41
+ * Creates an ActionTracker for tracking inflight rebalance actions and user transfers.
42
+ * Returns both the tracker and adapter for use by RebalancerService.
43
+ *
44
+ * @param explorerUrl - Optional explorer URL (defaults to production Hyperlane Explorer)
45
+ */
46
+ createActionTracker(explorerUrl?: string): Promise<{
47
+ tracker: IActionTracker;
48
+ adapter: InflightContextAdapter;
49
+ }>;
39
50
  private getInitialTotalCollateral;
40
51
  }
41
52
  //# sourceMappingURL=RebalancerContextFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RebalancerContextFactory.d.ts","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAEL,qBAAqB,EACrB,aAAa,EACb,KAAK,KAAK,EACV,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAIhD,qBAAa,wBAAwB;IAUjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAdzB;;;;;;;OAOG;IACH,OAAO;IASP;;;;;;OAMG;WACiB,MAAM,CACxB,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,EACxD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,wBAAwB,CAAC;IA8C7B,WAAW,IAAI,QAAQ;IAIvB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAIhD,aAAa,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuB/D,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAWxC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IAiB3D,gBAAgB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW;YA8BzC,yBAAyB;CAoBxC"}
1
+ {"version":3,"file":"RebalancerContextFactory.d.ts","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAGL,qBAAqB,EACrB,aAAa,EACb,KAAK,KAAK,EACV,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAGL,KAAK,cAAc,EAEnB,sBAAsB,EAOvB,MAAM,sBAAsB,CAAC;AAO9B,qBAAa,wBAAwB;IAUjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAdzB;;;;;;;OAOG;IACH,OAAO;IASP;;;;;;OAMG;WACiB,MAAM,CACxB,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,EACxD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,wBAAwB,CAAC;IA8C7B,WAAW,IAAI,QAAQ;IAIvB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAIhD,aAAa,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuB/D,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAWxC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IAqB3D,gBAAgB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW;IAkBvD;;;;;OAKG;IACU,mBAAmB,CAC9B,WAAW,GAAE,MAA6B,GACzC,OAAO,CAAC;QACT,OAAO,EAAE,cAAc,CAAC;QACxB,OAAO,EAAE,sBAAsB,CAAC;KACjC,CAAC;YA8EY,yBAAyB;CAsBxC"}
@@ -1,12 +1,15 @@
1
- import { MultiProtocolProvider, WarpCore, } from '@hyperlane-xyz/sdk';
1
+ import { HyperlaneCore, MultiProtocolProvider, WarpCore, } from '@hyperlane-xyz/sdk';
2
2
  import { objMap } from '@hyperlane-xyz/utils';
3
+ import { getAllBridges, getStrategyChainNames } from '../config/types.js';
3
4
  import { Rebalancer } from '../core/Rebalancer.js';
4
- import { WithSemaphore } from '../core/WithSemaphore.js';
5
5
  import { Metrics } from '../metrics/Metrics.js';
6
6
  import { PriceGetter } from '../metrics/PriceGetter.js';
7
7
  import { Monitor } from '../monitor/Monitor.js';
8
8
  import { StrategyFactory } from '../strategy/StrategyFactory.js';
9
+ import { ActionTracker, InMemoryStore, InflightContextAdapter, } from '../tracking/index.js';
10
+ import { ExplorerClient } from '../utils/ExplorerClient.js';
9
11
  import { isCollateralizedTokenEligibleForRebalancing } from '../utils/index.js';
12
+ const DEFAULT_EXPLORER_URL = process.env.EXPLORER_API_URL || 'https://explorer4.hasura.app/v1/graphql';
10
13
  export class RebalancerContextFactory {
11
14
  config;
12
15
  warpCore;
@@ -80,27 +83,71 @@ export class RebalancerContextFactory {
80
83
  return new Monitor(checkFrequency, this.warpCore, this.logger);
81
84
  }
82
85
  async createStrategy(metrics) {
86
+ const strategyTypes = this.config.strategyConfig.map((s) => s.rebalanceStrategy);
83
87
  this.logger.debug({
84
88
  warpRouteId: this.config.warpRouteId,
85
- strategyType: this.config.strategyConfig.rebalanceStrategy,
89
+ strategyTypes,
90
+ strategyCount: this.config.strategyConfig.length,
86
91
  }, 'Creating Strategy');
87
92
  return StrategyFactory.createStrategy(this.config.strategyConfig, this.tokensByChainName, await this.getInitialTotalCollateral(), this.logger, metrics);
88
93
  }
89
94
  createRebalancer(metrics) {
90
95
  this.logger.debug({ warpRouteId: this.config.warpRouteId }, 'Creating Rebalancer');
91
- const rebalancer = new Rebalancer(objMap(this.config.strategyConfig.chains, (_, v) => ({
92
- bridge: v.bridge,
93
- bridgeMinAcceptedAmount: v.bridgeMinAcceptedAmount ?? 0,
94
- bridgeIsWarp: v.bridgeIsWarp ?? false,
95
- override: v.override,
96
- })), this.warpCore, this.multiProvider.metadata, this.tokensByChainName, this.multiProvider, this.logger, metrics);
97
- // Wrap with semaphore for concurrency control
98
- const withSemaphore = new WithSemaphore(this.config, rebalancer, this.logger);
99
- return withSemaphore;
96
+ const rebalancer = new Rebalancer(this.warpCore, this.multiProvider.metadata, this.tokensByChainName, this.multiProvider, this.logger, metrics);
97
+ return rebalancer;
98
+ }
99
+ /**
100
+ * Creates an ActionTracker for tracking inflight rebalance actions and user transfers.
101
+ * Returns both the tracker and adapter for use by RebalancerService.
102
+ *
103
+ * @param explorerUrl - Optional explorer URL (defaults to production Hyperlane Explorer)
104
+ */
105
+ async createActionTracker(explorerUrl = DEFAULT_EXPLORER_URL) {
106
+ this.logger.debug({ warpRouteId: this.config.warpRouteId }, 'Creating ActionTracker');
107
+ // 1. Create in-memory stores
108
+ const transferStore = new InMemoryStore();
109
+ const intentStore = new InMemoryStore();
110
+ const actionStore = new InMemoryStore();
111
+ // 2. Create ExplorerClient
112
+ const explorerClient = new ExplorerClient(explorerUrl);
113
+ // 3. Get HyperlaneCore from registry
114
+ const addresses = await this.registry.getAddresses();
115
+ const hyperlaneCore = HyperlaneCore.fromAddressesMap(addresses, this.multiProvider);
116
+ // 4. Get rebalancer address from signer
117
+ // Use the first chain in the strategy to get the signer address
118
+ const chainNames = getStrategyChainNames(this.config.strategyConfig);
119
+ if (chainNames.length === 0) {
120
+ throw new Error('No chains configured in strategy');
121
+ }
122
+ const signer = this.multiProvider.getSigner(chainNames[0]);
123
+ const rebalancerAddress = await signer.getAddress();
124
+ const bridges = getAllBridges(this.config.strategyConfig);
125
+ // Build router→domain mapping (source of truth for routers and domains)
126
+ const routersByDomain = {};
127
+ for (const token of this.warpCore.tokens) {
128
+ const domain = this.multiProvider.getDomainId(token.chainName);
129
+ routersByDomain[domain] = token.addressOrDenom;
130
+ }
131
+ const trackerConfig = {
132
+ routersByDomain,
133
+ bridges,
134
+ rebalancerAddress,
135
+ };
136
+ // 6. Create ActionTracker
137
+ const tracker = new ActionTracker(transferStore, intentStore, actionStore, explorerClient, hyperlaneCore, trackerConfig, this.logger);
138
+ // 7. Create InflightContextAdapter
139
+ const adapter = new InflightContextAdapter(tracker, this.multiProvider);
140
+ this.logger.debug({
141
+ warpRouteId: this.config.warpRouteId,
142
+ routerCount: Object.keys(routersByDomain).length,
143
+ bridgeCount: bridges.length,
144
+ domainCount: Object.keys(routersByDomain).length,
145
+ }, 'ActionTracker created successfully');
146
+ return { tracker, adapter };
100
147
  }
101
148
  async getInitialTotalCollateral() {
102
149
  let initialTotalCollateral = 0n;
103
- const chainNames = new Set(Object.keys(this.config.strategyConfig.chains));
150
+ const chainNames = new Set(getStrategyChainNames(this.config.strategyConfig));
104
151
  await Promise.all(this.warpCore.tokens.map(async (token) => {
105
152
  if (isCollateralizedTokenEligibleForRebalancing(token) &&
106
153
  chainNames.has(token.chainName)) {
@@ -1 +1 @@
1
- {"version":3,"file":"RebalancerContextFactory.js","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RebalancerContextFactory.js","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,21 +9,20 @@
9
9
  export { RebalancerService } from './core/RebalancerService.js';
10
10
  export type { RebalancerServiceConfig, ManualRebalanceRequest, } from './core/RebalancerService.js';
11
11
  export { Rebalancer } from './core/Rebalancer.js';
12
- export { WithInflightGuard } from './core/WithInflightGuard.js';
13
- export { WithSemaphore } from './core/WithSemaphore.js';
14
12
  export { RebalancerConfig } from './config/RebalancerConfig.js';
15
- export { RebalancerBaseChainConfigSchema, RebalancerConfigSchema, RebalancerMinAmountConfigSchema, RebalancerMinAmountType, RebalancerStrategyOptions, RebalancerWeightedChainConfigSchema, StrategyConfigSchema, } from './config/types.js';
13
+ export { getStrategyChainConfig, getStrategyChainNames, RebalancerBaseChainConfigSchema, RebalancerConfigSchema, RebalancerMinAmountConfigSchema, RebalancerMinAmountType, RebalancerStrategyOptions, RebalancerStrategySchema, RebalancerWeightedChainConfigSchema, StrategyConfigSchema, } from './config/types.js';
16
14
  export type { MinAmountStrategyConfig, RebalancerConfig as RebalancerConfigType, RebalancerConfigFileInput, RebalancerMinAmountChainConfig, RebalancerWeightedChainConfig, StrategyConfig, WeightedStrategyConfig, } from './config/types.js';
17
15
  export { BaseStrategy } from './strategy/BaseStrategy.js';
16
+ export { CompositeStrategy } from './strategy/CompositeStrategy.js';
18
17
  export { WeightedStrategy } from './strategy/WeightedStrategy.js';
19
18
  export { MinAmountStrategy } from './strategy/MinAmountStrategy.js';
20
19
  export { StrategyFactory } from './strategy/StrategyFactory.js';
21
20
  export { Monitor } from './monitor/Monitor.js';
22
21
  export { Metrics } from './metrics/Metrics.js';
23
22
  export { PriceGetter } from './metrics/PriceGetter.js';
24
- export type { IRebalancer, PreparedTransaction, } from './interfaces/IRebalancer.js';
25
- export type { IStrategy, RebalancingRoute, RawBalances, } from './interfaces/IStrategy.js';
26
- export type { IMonitor } from './interfaces/IMonitor.js';
23
+ export type { IRebalancer, PreparedTransaction, RebalanceRoute, RebalanceExecutionResult, } from './interfaces/IRebalancer.js';
24
+ export type { IStrategy, StrategyRoute, RawBalances, InflightContext, } from './interfaces/IStrategy.js';
25
+ export type { ConfirmedBlockTag, ConfirmedBlockTags, IMonitor, } from './interfaces/IMonitor.js';
27
26
  export { MonitorEventType, MonitorEvent, MonitorPollingError, MonitorStartError, } from './interfaces/IMonitor.js';
28
27
  export type { IMetrics } from './interfaces/IMetrics.js';
29
28
  export { getBridgeConfig } from './utils/bridgeUtils.js';
@@ -31,5 +30,6 @@ export type { BridgeConfigWithOverride, BridgeConfig, } from './utils/bridgeUtil
31
30
  export { getRawBalances } from './utils/balanceUtils.js';
32
31
  export { isCollateralizedTokenEligibleForRebalancing } from './utils/tokenUtils.js';
33
32
  export { ExplorerClient } from './utils/ExplorerClient.js';
33
+ export { InflightContextAdapter } from './tracking/InflightContextAdapter.js';
34
34
  export { RebalancerContextFactory } from './factories/RebalancerContextFactory.js';
35
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,YAAY,EACV,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,+BAA+B,EAC/B,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,mCAAmC,EACnC,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,gBAAgB,IAAI,oBAAoB,EACxC,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,cAAc,EACd,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,YAAY,EACV,WAAW,EACX,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,GACZ,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EACV,wBAAwB,EACxB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,2CAA2C,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,YAAY,EACV,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,mCAAmC,EACnC,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,gBAAgB,IAAI,oBAAoB,EACxC,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,cAAc,EACd,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,SAAS,EACT,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,GACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EACV,wBAAwB,EACxB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,2CAA2C,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAG9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
package/dist/index.js CHANGED
@@ -10,13 +10,12 @@
10
10
  export { RebalancerService } from './core/RebalancerService.js';
11
11
  // Core rebalancing logic
12
12
  export { Rebalancer } from './core/Rebalancer.js';
13
- export { WithInflightGuard } from './core/WithInflightGuard.js';
14
- export { WithSemaphore } from './core/WithSemaphore.js';
15
13
  // Configuration
16
14
  export { RebalancerConfig } from './config/RebalancerConfig.js';
17
- export { RebalancerBaseChainConfigSchema, RebalancerConfigSchema, RebalancerMinAmountConfigSchema, RebalancerMinAmountType, RebalancerStrategyOptions, RebalancerWeightedChainConfigSchema, StrategyConfigSchema, } from './config/types.js';
15
+ export { getStrategyChainConfig, getStrategyChainNames, RebalancerBaseChainConfigSchema, RebalancerConfigSchema, RebalancerMinAmountConfigSchema, RebalancerMinAmountType, RebalancerStrategyOptions, RebalancerStrategySchema, RebalancerWeightedChainConfigSchema, StrategyConfigSchema, } from './config/types.js';
18
16
  // Strategy
19
17
  export { BaseStrategy } from './strategy/BaseStrategy.js';
18
+ export { CompositeStrategy } from './strategy/CompositeStrategy.js';
20
19
  export { WeightedStrategy } from './strategy/WeightedStrategy.js';
21
20
  export { MinAmountStrategy } from './strategy/MinAmountStrategy.js';
22
21
  export { StrategyFactory } from './strategy/StrategyFactory.js';
@@ -31,6 +30,8 @@ export { getBridgeConfig } from './utils/bridgeUtils.js';
31
30
  export { getRawBalances } from './utils/balanceUtils.js';
32
31
  export { isCollateralizedTokenEligibleForRebalancing } from './utils/tokenUtils.js';
33
32
  export { ExplorerClient } from './utils/ExplorerClient.js';
33
+ // Tracking
34
+ export { InflightContextAdapter } from './tracking/InflightContextAdapter.js';
34
35
  // Factory
35
36
  export { RebalancerContextFactory } from './factories/RebalancerContextFactory.js';
36
37
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAMhE,yBAAyB;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,+BAA+B,EAC/B,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,mCAAmC,EACnC,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAW3B,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAavD,OAAO,EACL,gBAAgB,EAEhB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAGlC,QAAQ;AACR,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,2CAA2C,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,UAAU;AACV,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAMhE,yBAAyB;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,mCAAmC,EACnC,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAW3B,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAoBvD,OAAO,EACL,gBAAgB,EAEhB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAGlC,QAAQ;AACR,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,2CAA2C,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,WAAW;AACX,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,UAAU;AACV,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type Token } from '@hyperlane-xyz/sdk';
1
+ import { type ChainMap, EthJsonRpcBlockParameterTag, type Token } from '@hyperlane-xyz/sdk';
2
2
  import { WrappedError } from '../utils/errors.js';
3
3
  export declare class MonitorStartError extends WrappedError {
4
4
  name: string;
@@ -11,17 +11,14 @@ export declare enum MonitorEventType {
11
11
  Error = "Error",
12
12
  Start = "Start"
13
13
  }
14
- /**
15
- * Represents an event emitted by the monitor containing bridgedSupply and token information.
16
- */
14
+ export type ConfirmedBlockTag = number | EthJsonRpcBlockParameterTag | undefined;
15
+ export type ConfirmedBlockTags = ChainMap<ConfirmedBlockTag>;
17
16
  export type MonitorEvent = {
18
- /**
19
- * Collection of objects containing the information retrieved by the Monitor.
20
- */
21
17
  tokensInfo: {
22
18
  token: Token;
23
19
  bridgedSupply?: bigint;
24
20
  }[];
21
+ confirmedBlockTags: ConfirmedBlockTags;
25
22
  };
26
23
  /**
27
24
  * Interface for a monitoring service that tracks token information across different chains.
@@ -29,8 +26,9 @@ export type MonitorEvent = {
29
26
  export interface IMonitor {
30
27
  /**
31
28
  * Allows subscribers to listen to hyperlane's tokens info.
29
+ * Handler can be async - Monitor will await it before starting next cycle.
32
30
  */
33
- on(eventName: MonitorEventType.TokenInfo, fn: (event: MonitorEvent) => void): this;
31
+ on(eventName: MonitorEventType.TokenInfo, fn: (event: MonitorEvent) => void | Promise<void>): this;
34
32
  /**
35
33
  * Allows subscribers to listen to error events.
36
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"IMonitor.d.ts","sourceRoot":"","sources":["../../src/interfaces/IMonitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,IAAI,SAAuB;CAC5B;AAED,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,IAAI,SAAyB;CAC9B;AAED,oBAAY,gBAAgB;IAC1B,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;OAEG;IACH,UAAU,EAAE;QACV,KAAK,EAAE,KAAK,CAAC;QACb,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,EAAE,CACA,SAAS,EAAE,gBAAgB,CAAC,SAAS,EACrC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAChC,IAAI,CAAC;IAER;;OAEG;IACH,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IAExE;;OAEG;IACH,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAE5D;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;CACd"}
1
+ {"version":3,"file":"IMonitor.d.ts","sourceRoot":"","sources":["../../src/interfaces/IMonitor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EACb,2BAA2B,EAC3B,KAAK,KAAK,EACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,IAAI,SAAuB;CAC5B;AAED,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,IAAI,SAAyB;CAC9B;AAED,oBAAY,gBAAgB;IAC1B,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,2BAA2B,GAC3B,SAAS,CAAC;AAEd,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE;QACV,KAAK,EAAE,KAAK,CAAC;QACb,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;IACJ,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;;OAGG;IACH,EAAE,CACA,SAAS,EAAE,gBAAgB,CAAC,SAAS,EACrC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAChD,IAAI,CAAC;IAER;;OAEG;IACH,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IAExE;;OAEG;IACH,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAE5D;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;CACd"}
@@ -1 +1 @@
1
- {"version":3,"file":"IMonitor.js","sourceRoot":"","sources":["../../src/interfaces/IMonitor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IACjD,IAAI,GAAG,mBAAmB,CAAC;CAC5B;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACnD,IAAI,GAAG,qBAAqB,CAAC;CAC9B;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,2CAAuB,CAAA;IACvB,mCAAe,CAAA;IACf,mCAAe,CAAA;AACjB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B"}
1
+ {"version":3,"file":"IMonitor.js","sourceRoot":"","sources":["../../src/interfaces/IMonitor.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IACjD,IAAI,GAAG,mBAAmB,CAAC;CAC5B;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACnD,IAAI,GAAG,qBAAqB,CAAC;CAC9B;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,2CAAuB,CAAA;IACvB,mCAAe,CAAA;IACf,mCAAe,CAAA;AACjB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B"}
@@ -1,15 +1,31 @@
1
1
  import { type EvmMovableCollateralAdapter, type TokenAmount } from '@hyperlane-xyz/sdk';
2
- import { type RebalancingRoute } from './IStrategy.js';
2
+ import type { StrategyRoute } from './IStrategy.js';
3
+ /**
4
+ * RebalanceRoute extends StrategyRoute with a required intentId for tracking.
5
+ * The intentId is assigned by RebalancerService before execution and links
6
+ * to the corresponding RebalanceIntent in the tracking system.
7
+ */
8
+ export type RebalanceRoute = StrategyRoute & {
9
+ /** Links to the RebalanceIntent that this route fulfills */
10
+ intentId: string;
11
+ };
3
12
  export type PreparedTransaction = {
4
13
  populatedTx: Awaited<ReturnType<EvmMovableCollateralAdapter['populateRebalanceTx']>>;
5
- route: RebalancingRoute;
14
+ route: RebalanceRoute;
6
15
  originTokenAmount: TokenAmount;
7
16
  };
8
17
  export type RebalanceMetrics = {
9
- route: RebalancingRoute;
18
+ route: RebalanceRoute;
10
19
  originTokenAmount: TokenAmount;
11
20
  };
21
+ export type RebalanceExecutionResult = {
22
+ route: RebalanceRoute;
23
+ success: boolean;
24
+ messageId?: string;
25
+ txHash?: string;
26
+ error?: string;
27
+ };
12
28
  export interface IRebalancer {
13
- rebalance(routes: RebalancingRoute[]): Promise<void>;
29
+ rebalance(routes: RebalanceRoute[]): Promise<RebalanceExecutionResult[]>;
14
30
  }
15
31
  //# sourceMappingURL=IRebalancer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IRebalancer.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRebalancer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,OAAO,CAClB,UAAU,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAC,CAC/D,CAAC;IACF,KAAK,EAAE,gBAAgB,CAAC;IACxB,iBAAiB,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,iBAAiB,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD"}
1
+ {"version":3,"file":"IRebalancer.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRebalancer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG;IAC3C,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,OAAO,CAClB,UAAU,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAC,CAC/D,CAAC;IACF,KAAK,EAAE,cAAc,CAAC;IACtB,iBAAiB,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,iBAAiB,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC;CAC1E"}
@@ -1,11 +1,27 @@
1
1
  import { type ChainMap, type ChainName } from '@hyperlane-xyz/sdk';
2
+ import type { Address } from '@hyperlane-xyz/utils';
2
3
  export type RawBalances = ChainMap<bigint>;
3
- export type RebalancingRoute = {
4
+ export interface Route {
4
5
  origin: ChainName;
5
6
  destination: ChainName;
6
7
  amount: bigint;
8
+ }
9
+ export interface StrategyRoute extends Route {
10
+ bridge: Address;
11
+ }
12
+ export type InflightContext = {
13
+ /**
14
+ * In-flight rebalances from ActionTracker.
15
+ * Uses Route[] because recovered intents (from Explorer startup recovery)
16
+ * don't have bridge information. Some routes may have bridge at runtime.
17
+ */
18
+ pendingRebalances: Route[];
19
+ pendingTransfers: Route[];
20
+ /** Routes from earlier strategies - always have bridge */
21
+ proposedRebalances?: StrategyRoute[];
7
22
  };
8
23
  export interface IStrategy {
9
- getRebalancingRoutes(rawBalances: RawBalances): RebalancingRoute[];
24
+ readonly name: string;
25
+ getRebalancingRoutes(rawBalances: RawBalances, inflightContext?: InflightContext): StrategyRoute[];
10
26
  }
11
27
  //# sourceMappingURL=IStrategy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IStrategy.d.ts","sourceRoot":"","sources":["../../src/interfaces/IStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAE3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,EAAE,CAAC;CACpE"}
1
+ {"version":3,"file":"IStrategy.d.ts","sourceRoot":"","sources":["../../src/interfaces/IStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAE3C,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAc,SAAQ,KAAK;IAC1C,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,iBAAiB,EAAE,KAAK,EAAE,CAAC;IAC3B,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAC1B,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,aAAa,EAAE,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAClB,WAAW,EAAE,WAAW,EACxB,eAAe,CAAC,EAAE,eAAe,GAChC,aAAa,EAAE,CAAC;CACpB"}
@@ -2,7 +2,7 @@ import { type Logger } from 'pino';
2
2
  import { Token, type TokenAmount, type WarpCore, type WarpRouteDeployConfig } from '@hyperlane-xyz/sdk';
3
3
  import { type IMetrics } from '../interfaces/IMetrics.js';
4
4
  import { type MonitorEvent } from '../interfaces/IMonitor.js';
5
- import { type RebalancingRoute } from '../interfaces/IStrategy.js';
5
+ import { type StrategyRoute } from '../interfaces/IStrategy.js';
6
6
  import { type PriceGetter } from './PriceGetter.js';
7
7
  export declare class Metrics implements IMetrics {
8
8
  private readonly tokenPriceGetter;
@@ -13,9 +13,11 @@ export declare class Metrics implements IMetrics {
13
13
  private readonly priceGetter;
14
14
  constructor(tokenPriceGetter: PriceGetter, warpDeployConfig: WarpRouteDeployConfig | null, warpCore: WarpCore, warpRouteId: string, logger: Logger);
15
15
  recordRebalancerSuccess(): void;
16
- recordRebalanceAmount(route: RebalancingRoute, originTokenAmount: TokenAmount): void;
16
+ recordRebalanceAmount(route: StrategyRoute, originTokenAmount: TokenAmount): void;
17
17
  recordRebalancerFailure(): void;
18
18
  recordPollingError(): void;
19
+ recordIntentCreated(route: StrategyRoute, strategy: string): void;
20
+ recordActionAttempt(route: StrategyRoute, succeeded: boolean): void;
19
21
  processToken({ token, bridgedSupply, }: MonitorEvent['tokensInfo'][number]): Promise<void>;
20
22
  private updateTokenMetrics;
21
23
  static getWarpRouteCollateralTokenSymbol(tokens: Token[]): string;
@@ -1 +1 @@
1
- {"version":3,"file":"Metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/Metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAYnC,OAAO,EACL,KAAK,EACL,KAAK,WAAW,EAGhB,KAAK,QAAQ,EACb,KAAK,qBAAqB,EAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAYpD,qBAAa,OAAQ,YAAW,QAAQ;IAKpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAP9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;gBAG5B,gBAAgB,EAAE,WAAW,EAC7B,gBAAgB,EAAE,qBAAqB,GAAG,IAAI,EAC9C,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,EACpC,MAAM,EAAE,MAAM;IAahB,uBAAuB;IAMvB,qBAAqB,CACnB,KAAK,EAAE,gBAAgB,EACvB,iBAAiB,EAAE,WAAW;IAYhC,uBAAuB;IAMvB,kBAAkB;IAMZ,YAAY,CAAC,EACjB,KAAK,EACL,aAAa,GACd,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;YAWvB,kBAAkB;IA6KhC,MAAM,CAAC,iCAAiC,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM;CAkClE"}
1
+ {"version":3,"file":"Metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/Metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAYnC,OAAO,EACL,KAAK,EACL,KAAK,WAAW,EAGhB,KAAK,QAAQ,EACb,KAAK,qBAAqB,EAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAcpD,qBAAa,OAAQ,YAAW,QAAQ;IAKpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAP9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;gBAG5B,gBAAgB,EAAE,WAAW,EAC7B,gBAAgB,EAAE,qBAAqB,GAAG,IAAI,EAC9C,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,EACpC,MAAM,EAAE,MAAM;IAahB,uBAAuB;IAMvB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW;IAW1E,uBAAuB;IAMvB,kBAAkB;IAMlB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM;IAW1D,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO;IAWtD,YAAY,CAAC,EACjB,KAAK,EACL,aAAa,GACd,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;YAWvB,kBAAkB;IA6KhC,MAAM,CAAC,iCAAiC,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM;CAkClE"}
@@ -1,7 +1,7 @@
1
1
  import { getExtraLockboxBalance, getExtraLockboxInfo, getManagedLockBoxCollateralInfo, getSealevelAtaPayerBalance, getTokenBridgedBalance, getXERC20Info, startMetricsServer, } from '@hyperlane-xyz/metrics';
2
2
  import { TokenStandard, TokenType, } from '@hyperlane-xyz/sdk';
3
3
  import { ProtocolType, tryFn } from '@hyperlane-xyz/utils';
4
- import { metricsRegister, rebalancerExecutionAmount, rebalancerExecutionTotal, rebalancerPollingErrorsTotal, updateManagedLockboxBalanceMetrics, updateNativeWalletBalanceMetrics, updateTokenBalanceMetrics, updateXERC20LimitsMetrics, } from './scripts/metrics.js';
4
+ import { metricsRegister, rebalancerActionsCreatedTotal, rebalancerExecutionAmount, rebalancerExecutionTotal, rebalancerIntentsCreatedTotal, rebalancerPollingErrorsTotal, updateManagedLockboxBalanceMetrics, updateNativeWalletBalanceMetrics, updateTokenBalanceMetrics, updateXERC20LimitsMetrics, } from './scripts/metrics.js';
5
5
  export class Metrics {
6
6
  tokenPriceGetter;
7
7
  warpDeployConfig;
@@ -48,6 +48,26 @@ export class Metrics {
48
48
  .labels({ warp_route_id: this.warpRouteId })
49
49
  .inc();
50
50
  }
51
+ recordIntentCreated(route, strategy) {
52
+ rebalancerIntentsCreatedTotal
53
+ .labels({
54
+ warp_route_id: this.warpRouteId,
55
+ strategy,
56
+ origin: route.origin,
57
+ destination: route.destination,
58
+ })
59
+ .inc();
60
+ }
61
+ recordActionAttempt(route, succeeded) {
62
+ rebalancerActionsCreatedTotal
63
+ .labels({
64
+ warp_route_id: this.warpRouteId,
65
+ origin: route.origin,
66
+ destination: route.destination,
67
+ succeeded: String(succeeded),
68
+ })
69
+ .inc();
70
+ }
51
71
  async processToken({ token, bridgedSupply, }) {
52
72
  await tryFn(async () => {
53
73
  await this.updateTokenMetrics(token, bridgedSupply);
@@ -1 +1 @@
1
- {"version":3,"file":"Metrics.js","sourceRoot":"","sources":["../../src/metrics/Metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Metrics.js","sourceRoot":"","sources":["../../src/metrics/Metrics.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export declare const metricsRegister: Registry;
7
7
  export declare const rebalancerExecutionTotal: Counter<"warp_route_id" | "succeeded">;
8
8
  export declare const rebalancerExecutionAmount: Counter<"warp_route_id" | "origin" | "destination" | "token">;
9
9
  export declare const rebalancerPollingErrorsTotal: Counter<"warp_route_id">;
10
+ export declare const rebalancerIntentsCreatedTotal: Counter<"strategy" | "warp_route_id" | "origin" | "destination">;
11
+ export declare const rebalancerActionsCreatedTotal: Counter<"warp_route_id" | "succeeded" | "origin" | "destination">;
10
12
  /**
11
13
  * Updates token balance metrics for a warp route token.
12
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/metrics/scripts/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,KAAK,mBAAmB,EAExB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAMjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,eAAO,MAAM,eAAe,UAAiB,CAAC;AAM9C,eAAO,MAAM,wBAAwB,wCAKnC,CAAC;AAEH,eAAO,MAAM,yBAAyB,+DAKpC,CAAC;AAEH,eAAO,MAAM,4BAA4B,0BAKvC,CAAC;AAEH;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,gBAAgB,EAC7B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,gBAAgB,EAC7B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI,CAYN;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,MAAM,GACb,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,OAAO,EACtB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,GACb,IAAI,CAUN"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/metrics/scripts/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,KAAK,mBAAmB,EAExB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAMjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,eAAO,MAAM,eAAe,UAAiB,CAAC;AAM9C,eAAO,MAAM,wBAAwB,wCAKnC,CAAC;AAEH,eAAO,MAAM,yBAAyB,+DAKpC,CAAC;AAEH,eAAO,MAAM,4BAA4B,0BAKvC,CAAC;AAEH,eAAO,MAAM,6BAA6B,kEAKxC,CAAC;AAEH,eAAO,MAAM,6BAA6B,mEAKxC,CAAC;AAEH;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,gBAAgB,EAC7B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,gBAAgB,EAC7B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI,CAYN;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,MAAM,GACb,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,OAAO,EACtB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,GACb,IAAI,CAUN"}
@@ -22,6 +22,18 @@ export const rebalancerPollingErrorsTotal = new Counter({
22
22
  registers: [metricsRegister],
23
23
  labelNames: ['warp_route_id'],
24
24
  });
25
+ export const rebalancerIntentsCreatedTotal = new Counter({
26
+ name: 'hyperlane_rebalancer_intents_created_total',
27
+ help: 'Total number of rebalancing intents (routes) created.',
28
+ registers: [metricsRegister],
29
+ labelNames: ['warp_route_id', 'strategy', 'origin', 'destination'],
30
+ });
31
+ export const rebalancerActionsCreatedTotal = new Counter({
32
+ name: 'hyperlane_rebalancer_actions_created_total',
33
+ help: 'Total number of rebalancing actions (transactions) attempted.',
34
+ registers: [metricsRegister],
35
+ labelNames: ['warp_route_id', 'origin', 'destination', 'succeeded'],
36
+ });
25
37
  /**
26
38
  * Updates token balance metrics for a warp route token.
27
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/metrics/scripts/metrics.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAKL,uBAAuB,EACvB,kCAAkC,IAAI,wCAAwC,EAC9E,gCAAgC,IAAI,sCAAsC,EAC1E,yBAAyB,IAAI,+BAA+B,EAC5D,yBAAyB,IAAI,+BAA+B,GAC7D,MAAM,wBAAwB,CAAC;AAIhC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,QAAQ,EAAE,CAAC;AAE9C,oCAAoC;AACpC,MAAM,MAAM,GAAsB,uBAAuB,CAAC,eAAe,CAAC,CAAC;AAE3E,8BAA8B;AAC9B,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,OAAO,CAAC;IAClD,IAAI,EAAE,uCAAuC;IAC7C,IAAI,EAAE,+CAA+C;IACrD,SAAS,EAAE,CAAC,eAAe,CAAC;IAC5B,UAAU,EAAE,CAAC,eAAe,EAAE,WAAW,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,OAAO,CAAC;IACnD,IAAI,EAAE,uCAAuC;IAC7C,IAAI,EAAE,oCAAoC;IAC1C,SAAS,EAAE,CAAC,eAAe,CAAC;IAC5B,UAAU,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC;CAChE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,OAAO,CAAC;IACtD,IAAI,EAAE,2CAA2C;IACjD,IAAI,EAAE,0DAA0D;IAChE,SAAS,EAAE,CAAC,eAAe,CAAC;IAC5B,UAAU,EAAE,CAAC,eAAe,CAAC;CAC9B,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,QAAkB,EAClB,KAAY,EACZ,WAA6B,EAC7B,WAAmB,EACnB,MAAc;IAEd,+BAA+B,CAC7B,MAAM,EACN,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EACX,MAAM,CACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kCAAkC,CAChD,QAAkB,EAClB,SAAoB,EACpB,SAAiB,EACjB,YAAoB,EACpB,cAAsB,EACtB,WAA6B,EAC7B,WAAmB,EACnB,MAAc;IAEd,wCAAwC,CACtC,MAAM,EACN,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,cAAc,EACd,WAAW,EACX,WAAW,EACX,MAAM,CACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,OAA4B,EAC5B,MAAc;IAEd,sCAAsC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAY,EACZ,MAAmB,EACnB,aAAsB,EACtB,WAAmB,EACnB,aAAsB,EACtB,MAAc;IAEd,+BAA+B,CAC7B,MAAM,EACN,KAAK,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,aAAa,EACb,MAAM,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/metrics/scripts/metrics.ts"],"names":[],"mappings":"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"}