@waiaas/actions 2.11.0-rc.8 → 2.11.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 (164) hide show
  1. package/README.md +5 -5
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +8 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/providers/aave-v3/__tests__/aave-v3-provider.test.d.ts +2 -0
  6. package/dist/providers/aave-v3/__tests__/aave-v3-provider.test.d.ts.map +1 -0
  7. package/dist/providers/aave-v3/__tests__/aave-v3-provider.test.js +97 -0
  8. package/dist/providers/aave-v3/__tests__/aave-v3-provider.test.js.map +1 -0
  9. package/dist/providers/aave-v3/aave-contracts.d.ts +8 -0
  10. package/dist/providers/aave-v3/aave-contracts.d.ts.map +1 -1
  11. package/dist/providers/aave-v3/aave-contracts.js +13 -0
  12. package/dist/providers/aave-v3/aave-contracts.js.map +1 -1
  13. package/dist/providers/aave-v3/aave-rpc.d.ts +10 -0
  14. package/dist/providers/aave-v3/aave-rpc.d.ts.map +1 -1
  15. package/dist/providers/aave-v3/aave-rpc.js +16 -0
  16. package/dist/providers/aave-v3/aave-rpc.js.map +1 -1
  17. package/dist/providers/aave-v3/index.d.ts +10 -2
  18. package/dist/providers/aave-v3/index.d.ts.map +1 -1
  19. package/dist/providers/aave-v3/index.js +128 -128
  20. package/dist/providers/aave-v3/index.js.map +1 -1
  21. package/dist/providers/across/index.d.ts.map +1 -1
  22. package/dist/providers/across/index.js +1 -0
  23. package/dist/providers/across/index.js.map +1 -1
  24. package/dist/providers/dcent-swap/auto-router.d.ts.map +1 -1
  25. package/dist/providers/dcent-swap/auto-router.js +8 -0
  26. package/dist/providers/dcent-swap/auto-router.js.map +1 -1
  27. package/dist/providers/dcent-swap/dcent-api-client.d.ts +1 -0
  28. package/dist/providers/dcent-swap/dcent-api-client.d.ts.map +1 -1
  29. package/dist/providers/dcent-swap/dcent-api-client.js.map +1 -1
  30. package/dist/providers/dcent-swap/dex-swap.d.ts +1 -0
  31. package/dist/providers/dcent-swap/dex-swap.d.ts.map +1 -1
  32. package/dist/providers/dcent-swap/dex-swap.js +13 -2
  33. package/dist/providers/dcent-swap/dex-swap.js.map +1 -1
  34. package/dist/providers/dcent-swap/index.d.ts +2 -2
  35. package/dist/providers/dcent-swap/index.d.ts.map +1 -1
  36. package/dist/providers/dcent-swap/index.js +56 -16
  37. package/dist/providers/dcent-swap/index.js.map +1 -1
  38. package/dist/providers/drift/config.d.ts +2 -0
  39. package/dist/providers/drift/config.d.ts.map +1 -1
  40. package/dist/providers/drift/config.js.map +1 -1
  41. package/dist/providers/drift/drift-sdk-wrapper.d.ts +12 -9
  42. package/dist/providers/drift/drift-sdk-wrapper.d.ts.map +1 -1
  43. package/dist/providers/drift/drift-sdk-wrapper.js +220 -20
  44. package/dist/providers/drift/drift-sdk-wrapper.js.map +1 -1
  45. package/dist/providers/drift/index.d.ts +2 -2
  46. package/dist/providers/drift/index.d.ts.map +1 -1
  47. package/dist/providers/drift/index.js +9 -4
  48. package/dist/providers/drift/index.js.map +1 -1
  49. package/dist/providers/erc8004/index.d.ts.map +1 -1
  50. package/dist/providers/erc8004/index.js +1 -0
  51. package/dist/providers/erc8004/index.js.map +1 -1
  52. package/dist/providers/hyperliquid/__tests__/perp-provider.test.js +13 -6
  53. package/dist/providers/hyperliquid/__tests__/perp-provider.test.js.map +1 -1
  54. package/dist/providers/hyperliquid/__tests__/spot-provider.test.js +11 -4
  55. package/dist/providers/hyperliquid/__tests__/spot-provider.test.js.map +1 -1
  56. package/dist/providers/hyperliquid/perp-provider.d.ts +2 -2
  57. package/dist/providers/hyperliquid/perp-provider.d.ts.map +1 -1
  58. package/dist/providers/hyperliquid/perp-provider.js +7 -3
  59. package/dist/providers/hyperliquid/perp-provider.js.map +1 -1
  60. package/dist/providers/hyperliquid/schemas.d.ts +14 -14
  61. package/dist/providers/hyperliquid/spot-provider.d.ts +2 -2
  62. package/dist/providers/hyperliquid/spot-provider.d.ts.map +1 -1
  63. package/dist/providers/hyperliquid/spot-provider.js +7 -3
  64. package/dist/providers/hyperliquid/spot-provider.js.map +1 -1
  65. package/dist/providers/hyperliquid/sub-account-provider.d.ts.map +1 -1
  66. package/dist/providers/hyperliquid/sub-account-provider.js +1 -0
  67. package/dist/providers/hyperliquid/sub-account-provider.js.map +1 -1
  68. package/dist/providers/jito-staking/__tests__/jito-staking-provider.test.d.ts +2 -0
  69. package/dist/providers/jito-staking/__tests__/jito-staking-provider.test.d.ts.map +1 -0
  70. package/dist/providers/jito-staking/__tests__/jito-staking-provider.test.js +107 -0
  71. package/dist/providers/jito-staking/__tests__/jito-staking-provider.test.js.map +1 -0
  72. package/dist/providers/jito-staking/config.d.ts +12 -3
  73. package/dist/providers/jito-staking/config.d.ts.map +1 -1
  74. package/dist/providers/jito-staking/config.js +12 -3
  75. package/dist/providers/jito-staking/config.js.map +1 -1
  76. package/dist/providers/jito-staking/index.d.ts +2 -2
  77. package/dist/providers/jito-staking/index.d.ts.map +1 -1
  78. package/dist/providers/jito-staking/index.js +25 -8
  79. package/dist/providers/jito-staking/index.js.map +1 -1
  80. package/dist/providers/jito-staking/jito-migration.test.js +107 -1
  81. package/dist/providers/jito-staking/jito-migration.test.js.map +1 -1
  82. package/dist/providers/jito-staking/jito-stake-pool.d.ts +18 -5
  83. package/dist/providers/jito-staking/jito-stake-pool.d.ts.map +1 -1
  84. package/dist/providers/jito-staking/jito-stake-pool.js +61 -21
  85. package/dist/providers/jito-staking/jito-stake-pool.js.map +1 -1
  86. package/dist/providers/jupiter-swap/__tests__/jupiter-swap-provider.test.d.ts +2 -0
  87. package/dist/providers/jupiter-swap/__tests__/jupiter-swap-provider.test.d.ts.map +1 -0
  88. package/dist/providers/jupiter-swap/__tests__/jupiter-swap-provider.test.js +177 -0
  89. package/dist/providers/jupiter-swap/__tests__/jupiter-swap-provider.test.js.map +1 -0
  90. package/dist/providers/jupiter-swap/index.d.ts.map +1 -1
  91. package/dist/providers/jupiter-swap/index.js +35 -1
  92. package/dist/providers/jupiter-swap/index.js.map +1 -1
  93. package/dist/providers/jupiter-swap/schemas.d.ts +30 -30
  94. package/dist/providers/jupiter-swap/schemas.js +2 -2
  95. package/dist/providers/jupiter-swap/schemas.js.map +1 -1
  96. package/dist/providers/kamino/config.d.ts +2 -0
  97. package/dist/providers/kamino/config.d.ts.map +1 -1
  98. package/dist/providers/kamino/config.js.map +1 -1
  99. package/dist/providers/kamino/index.d.ts +2 -2
  100. package/dist/providers/kamino/index.d.ts.map +1 -1
  101. package/dist/providers/kamino/index.js +11 -6
  102. package/dist/providers/kamino/index.js.map +1 -1
  103. package/dist/providers/kamino/kamino-sdk-wrapper.d.ts +12 -10
  104. package/dist/providers/kamino/kamino-sdk-wrapper.d.ts.map +1 -1
  105. package/dist/providers/kamino/kamino-sdk-wrapper.js +134 -20
  106. package/dist/providers/kamino/kamino-sdk-wrapper.js.map +1 -1
  107. package/dist/providers/lido-staking/__tests__/lido-staking-provider.test.d.ts +2 -0
  108. package/dist/providers/lido-staking/__tests__/lido-staking-provider.test.d.ts.map +1 -0
  109. package/dist/providers/lido-staking/__tests__/lido-staking-provider.test.js +106 -0
  110. package/dist/providers/lido-staking/__tests__/lido-staking-provider.test.js.map +1 -0
  111. package/dist/providers/lido-staking/index.d.ts +10 -7
  112. package/dist/providers/lido-staking/index.d.ts.map +1 -1
  113. package/dist/providers/lido-staking/index.js +67 -47
  114. package/dist/providers/lido-staking/index.js.map +1 -1
  115. package/dist/providers/lido-staking/lido-contract.d.ts +16 -2
  116. package/dist/providers/lido-staking/lido-contract.d.ts.map +1 -1
  117. package/dist/providers/lido-staking/lido-contract.js +43 -2
  118. package/dist/providers/lido-staking/lido-contract.js.map +1 -1
  119. package/dist/providers/lifi/__tests__/lifi-provider.test.d.ts +2 -0
  120. package/dist/providers/lifi/__tests__/lifi-provider.test.d.ts.map +1 -0
  121. package/dist/providers/lifi/__tests__/lifi-provider.test.js +196 -0
  122. package/dist/providers/lifi/__tests__/lifi-provider.test.js.map +1 -0
  123. package/dist/providers/lifi/index.d.ts.map +1 -1
  124. package/dist/providers/lifi/index.js +1 -0
  125. package/dist/providers/lifi/index.js.map +1 -1
  126. package/dist/providers/pendle/__tests__/pendle-api-client.test.js +79 -0
  127. package/dist/providers/pendle/__tests__/pendle-api-client.test.js.map +1 -1
  128. package/dist/providers/pendle/__tests__/pendle-provider.test.js +28 -8
  129. package/dist/providers/pendle/__tests__/pendle-provider.test.js.map +1 -1
  130. package/dist/providers/pendle/config.d.ts +2 -0
  131. package/dist/providers/pendle/config.d.ts.map +1 -1
  132. package/dist/providers/pendle/config.js +2 -0
  133. package/dist/providers/pendle/config.js.map +1 -1
  134. package/dist/providers/pendle/index.d.ts +8 -4
  135. package/dist/providers/pendle/index.d.ts.map +1 -1
  136. package/dist/providers/pendle/index.js +82 -69
  137. package/dist/providers/pendle/index.js.map +1 -1
  138. package/dist/providers/pendle/pendle-api-client.d.ts +2 -2
  139. package/dist/providers/pendle/pendle-api-client.d.ts.map +1 -1
  140. package/dist/providers/pendle/pendle-api-client.js +9 -2
  141. package/dist/providers/pendle/pendle-api-client.js.map +1 -1
  142. package/dist/providers/pendle/schemas.d.ts +748 -32
  143. package/dist/providers/pendle/schemas.d.ts.map +1 -1
  144. package/dist/providers/pendle/schemas.js +17 -4
  145. package/dist/providers/pendle/schemas.js.map +1 -1
  146. package/dist/providers/polymarket/__tests__/infrastructure.test.d.ts +2 -0
  147. package/dist/providers/polymarket/__tests__/infrastructure.test.d.ts.map +1 -0
  148. package/dist/providers/polymarket/__tests__/infrastructure.test.js +117 -0
  149. package/dist/providers/polymarket/__tests__/infrastructure.test.js.map +1 -0
  150. package/dist/providers/polymarket/ctf-provider.d.ts.map +1 -1
  151. package/dist/providers/polymarket/ctf-provider.js +1 -0
  152. package/dist/providers/polymarket/ctf-provider.js.map +1 -1
  153. package/dist/providers/polymarket/order-provider.d.ts.map +1 -1
  154. package/dist/providers/polymarket/order-provider.js +1 -0
  155. package/dist/providers/polymarket/order-provider.js.map +1 -1
  156. package/dist/providers/polymarket/schemas.d.ts +20 -20
  157. package/dist/providers/zerox-swap/__tests__/zerox-swap-provider.test.d.ts +2 -0
  158. package/dist/providers/zerox-swap/__tests__/zerox-swap-provider.test.d.ts.map +1 -0
  159. package/dist/providers/zerox-swap/__tests__/zerox-swap-provider.test.js +154 -0
  160. package/dist/providers/zerox-swap/__tests__/zerox-swap-provider.test.js.map +1 -0
  161. package/dist/providers/zerox-swap/index.d.ts.map +1 -1
  162. package/dist/providers/zerox-swap/index.js +1 -0
  163. package/dist/providers/zerox-swap/index.js.map +1 -1
  164. package/package.json +7 -2
@@ -14,7 +14,7 @@ import { JITO_STAKING_DEFAULTS, JITO_MIN_DEPOSIT_LAMPORTS, JITO_MIN_DEPOSIT_SOL
14
14
  import { buildDepositSolRequest, buildWithdrawSolRequest, getJitoSolBalance, getStakePoolExchangeRate, } from './jito-stake-pool.js';
15
15
  import { migrateAmount } from '../../common/migrate-amount.js';
16
16
  import { resolveProviderHumanAmount } from '../../common/resolve-human-amount.js';
17
- import { formatCaip19 } from '@waiaas/core';
17
+ import { formatCaip19, networkToCaip2 } from '@waiaas/core';
18
18
  // ---------------------------------------------------------------------------
19
19
  // Input schemas (Zod SSoT)
20
20
  // ---------------------------------------------------------------------------
@@ -45,6 +45,7 @@ export class JitoStakingActionProvider {
45
45
  this.rpcUrl = this.config.rpcUrl;
46
46
  this.metadata = {
47
47
  name: 'jito_staking',
48
+ displayName: 'Jito Staking',
48
49
  description: 'Jito liquid staking protocol for SOL to JitoSOL conversion via SPL Stake Pool',
49
50
  version: '1.0.0',
50
51
  chains: ['solana'],
@@ -87,6 +88,11 @@ export class JitoStakingActionProvider {
87
88
  // Stake: SOL -> JitoSOL via DepositSol
88
89
  // -------------------------------------------------------------------------
89
90
  async resolveStake(params, context) {
91
+ if (!this.rpcUrl) {
92
+ throw new ChainError('INVALID_INSTRUCTION', 'solana', {
93
+ message: 'rpcUrl is required for Jito staking (needed to read on-chain stake pool accounts)',
94
+ });
95
+ }
90
96
  const rp = { ...params };
91
97
  resolveProviderHumanAmount(rp, 'amount', 'humanAmount');
92
98
  const input = JitoStakeInputSchema.parse(rp);
@@ -100,12 +106,17 @@ export class JitoStakingActionProvider {
100
106
  message: `Minimum Jito stake deposit is ${JITO_MIN_DEPOSIT_SOL} SOL`,
101
107
  });
102
108
  }
103
- return buildDepositSolRequest(this.config, amountLamports, context.walletAddress);
109
+ return buildDepositSolRequest(this.config, amountLamports, context.walletAddress, this.rpcUrl);
104
110
  }
105
111
  // -------------------------------------------------------------------------
106
112
  // Unstake: JitoSOL -> SOL via WithdrawSol
107
113
  // -------------------------------------------------------------------------
108
114
  async resolveUnstake(params, context) {
115
+ if (!this.rpcUrl) {
116
+ throw new ChainError('INVALID_INSTRUCTION', 'solana', {
117
+ message: 'rpcUrl is required for Jito unstaking (needed to read on-chain stake pool accounts)',
118
+ });
119
+ }
109
120
  const rp = { ...params };
110
121
  resolveProviderHumanAmount(rp, 'amount', 'humanAmount');
111
122
  const input = JitoUnstakeInputSchema.parse(rp);
@@ -114,7 +125,7 @@ export class JitoStakingActionProvider {
114
125
  const amountLamports = migrateAmount(input.amount, 9);
115
126
  if (amountLamports === 0n)
116
127
  throw new ChainError('INVALID_INSTRUCTION', 'solana', { message: 'Amount must be greater than 0' });
117
- return buildWithdrawSolRequest(this.config, amountLamports, context.walletAddress);
128
+ return buildWithdrawSolRequest(this.config, amountLamports, context.walletAddress, this.rpcUrl);
118
129
  }
119
130
  // -------------------------------------------------------------------------
120
131
  // IPositionProvider methods (duck-type, no formal implements)
@@ -123,24 +134,30 @@ export class JitoStakingActionProvider {
123
134
  * Query jitoSOL token balance and stake pool exchange rate for the given wallet.
124
135
  * Returns STAKING position with SOL-equivalent underlyingAmount.
125
136
  */
126
- async getPositions(walletId) {
137
+ async getPositions(ctx) {
138
+ if (ctx.chain !== 'solana')
139
+ return [];
127
140
  if (!this.rpcUrl)
128
141
  return [];
142
+ const walletAddress = ctx.walletAddress;
143
+ const network = ctx.networks[0] ?? 'solana-mainnet';
129
144
  try {
130
- const balance = await getJitoSolBalance(this.rpcUrl, walletId, this.config.jitosolMint);
145
+ const balance = await getJitoSolBalance(this.rpcUrl, walletAddress, this.config.jitosolMint);
131
146
  if (!balance || balance.uiAmount === 0)
132
147
  return [];
133
148
  const exchangeRate = await getStakePoolExchangeRate(this.rpcUrl, this.config.stakePoolAddress);
134
149
  const solEquivalent = balance.uiAmount * exchangeRate;
135
150
  const now = Math.floor(Date.now() / 1000);
151
+ // Use networkToCaip2 for correct CAIP-2 identifier per network (MCHN-08)
152
+ const caip2 = networkToCaip2(network);
136
153
  return [
137
154
  {
138
- walletId,
155
+ walletId: ctx.walletId,
139
156
  category: 'STAKING',
140
157
  provider: 'jito_staking',
141
158
  chain: 'solana',
142
- network: 'solana-mainnet',
143
- assetId: formatCaip19('solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp', 'token', this.config.jitosolMint),
159
+ network,
160
+ assetId: formatCaip19(caip2, 'token', this.config.jitosolMint),
144
161
  amount: String(balance.uiAmount),
145
162
  amountUsd: null,
146
163
  metadata: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAQ1C,OAAO,EAA0B,qBAAqB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC7H,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG5D,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,sJAAsJ,CAAC,CAAC,QAAQ,EAAE;IAC3N,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SACtC,QAAQ,CAAC,2GAA2G,CAAC;IACxH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;SACjD,QAAQ,CAAC,6EAA6E,CAAC;CAC3F,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,0JAA0J,CAAC,CAAC,QAAQ,EAAE;IAC/N,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SACtC,QAAQ,CAAC,+GAA+G,CAAC;IAC5H,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;SACjD,QAAQ,CAAC,6EAA6E,CAAC;CAC3F,CAAC,CAAC;AAEH,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,MAAM,OAAO,yBAAyB;IAC3B,QAAQ,CAAyB;IACjC,OAAO,CAA8B;IAE7B,MAAM,CAAoB;IAC1B,MAAM,CAAU;IAEjC,YAAY,MAAmC;QAC7C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,qBAAqB,EAAE,GAAG,MAAM,EAAE,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAEjC,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,cAAc;YAC3B,WAAW,EAAE,+EAA+E;YAC5F,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,CAAC,QAAQ,CAAC;YAClB,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,KAAK;YACrB,YAAY,EAAE,EAAE;YAChB,kBAAkB,EAAE,KAAK;SAC1B,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG;YACb;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,uFAAuF;gBACpG,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,oBAAoB;gBACjC,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,OAAO;aACrB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,2FAA2F;gBACxG,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,OAAO;aACrB;SACO,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CACX,UAAkB,EAClB,MAA+B,EAC/B,OAAsB;QAEtB,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE;YACpD,OAAO,EAAE,mBAAmB,UAAU,EAAE;SACzC,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,uCAAuC;IACvC,4EAA4E;IAEpE,KAAK,CAAC,YAAY,CACxB,MAA+B,EAC/B,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE;gBACpD,OAAO,EAAE,mFAAmF;aAC7F,CAAC,CAAC;QACL,CAAC;QAED,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QACzB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,0DAA0D,EAAE,CAAC,CAAC;QAClJ,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACtD,IAAI,cAAc,KAAK,EAAE;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;QAE/H,IAAI,cAAc,GAAG,yBAAyB,EAAE,CAAC;YAC/C,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE;gBACpD,OAAO,EAAE,iCAAiC,oBAAoB,MAAM;aACrE,CAAC,CAAC;QACL,CAAC;QAED,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACjG,CAAC;IAED,4EAA4E;IAC5E,0CAA0C;IAC1C,4EAA4E;IAEpE,KAAK,CAAC,cAAc,CAC1B,MAA+B,EAC/B,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE;gBACpD,OAAO,EAAE,qFAAqF;aAC/F,CAAC,CAAC;QACL,CAAC;QAED,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QACzB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,0DAA0D,EAAE,CAAC,CAAC;QAClJ,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACtD,IAAI,cAAc,KAAK,EAAE;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;QAE/H,OAAO,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClG,CAAC;IAED,4EAA4E;IAC5E,8DAA8D;IAC9D,4EAA4E;IAE5E;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,GAAyB;QAC1C,IAAI,GAAG,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;QACxC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,iBAAiB,CACrC,IAAI,CAAC,MAAM,EACX,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB,CAAC;YAEF,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAElD,MAAM,YAAY,GAAG,MAAM,wBAAwB,CACjD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;YAEF,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,GAAG,YAAY,CAAC;YACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAE1C,yEAAyE;YACzE,MAAM,KAAK,GAAG,cAAc,CAAC,OAAsB,CAAC,CAAC;YAErD,OAAO;gBACL;oBACE,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,QAAQ,EAAE,SAA6B;oBACvC,QAAQ,EAAE,cAAc;oBACxB,KAAK,EAAE,QAAQ;oBACf,OAAO;oBACP,OAAO,EAAE,YAAY,CACnB,KAAK,EACL,OAAO,EACP,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB;oBACD,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;oBAChC,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE;wBACR,KAAK,EAAE,SAAS;wBAChB,gBAAgB,EAAE,MAAM,CAAC,aAAa,CAAC;wBACvC,eAAe,EAAE,KAAK;wBACtB,YAAY;qBACb;oBACD,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,GAAG;iBACd;aACF,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,eAAe;QACb,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,sBAAsB;QACpB,OAAO,CAAC,SAAS,CAAC,CAAC;IACrB,CAAC;CACF"}
@@ -5,25 +5,84 @@
5
5
  * - Smallest-unit integer inputs (lamports) pass through as BigInt
6
6
  * - Legacy decimal inputs trigger migrateAmount auto-conversion + deprecation warning
7
7
  * - JITO_MIN_DEPOSIT_LAMPORTS check works correctly with smallest-unit input
8
+ * - Dynamic on-chain stake pool account lookup is used for manager_fee_account
8
9
  */
9
10
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
10
11
  import { JitoStakingActionProvider } from './index.js';
11
12
  import { JITO_MIN_DEPOSIT_LAMPORTS } from './config.js';
13
+ import { base58Decode } from './jito-stake-pool.js';
12
14
  const TEST_WALLET = '7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU';
15
+ const TEST_RPC_URL = 'https://api.mainnet-beta.solana.com';
16
+ // Known manager fee and reserve stake accounts used in mocked RPC response
17
+ const MOCK_MANAGER_FEE = 'B1aLzaNMeFVAyQ6f3XbbUyKcH2YPHu2fqiEagmiF23VR';
18
+ const MOCK_RESERVE_STAKE = 'BgKUXdS29YcHCFrPm5M8oLHiTzZaMDjsebggjoaQ6KFL';
13
19
  const TEST_CONTEXT = {
14
20
  walletAddress: TEST_WALLET,
15
21
  walletId: 'test-wallet',
16
22
  chain: 'solana',
17
23
  };
24
+ /**
25
+ * Build a fake stake pool account data buffer.
26
+ *
27
+ * SPL Stake Pool Borsh layout (relevant offsets):
28
+ * - reserve_stake: 32 bytes at offset 130
29
+ * - manager_fee_account: 32 bytes at offset 194
30
+ * - total_lamports: u64 LE at offset 258
31
+ * - pool_token_supply: u64 LE at offset 266
32
+ */
33
+ function buildFakeStakePoolBuffer() {
34
+ const buf = Buffer.alloc(300, 0);
35
+ // Write reserve_stake at offset 130
36
+ const reserveBytes = base58Decode(MOCK_RESERVE_STAKE);
37
+ buf.set(reserveBytes, 130);
38
+ // Write manager_fee_account at offset 194
39
+ const managerBytes = base58Decode(MOCK_MANAGER_FEE);
40
+ buf.set(managerBytes, 194);
41
+ // Write total_lamports at offset 258 (1000 SOL in lamports)
42
+ const view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);
43
+ view.setBigUint64(258, 1000000000000n, true);
44
+ // Write pool_token_supply at offset 266
45
+ view.setBigUint64(266, 1000000000000n, true);
46
+ return buf;
47
+ }
48
+ /** Build a getAccountInfo JSON-RPC response for the stake pool. */
49
+ function buildStakePoolRpcResponse() {
50
+ const buf = buildFakeStakePoolBuffer();
51
+ return {
52
+ jsonrpc: '2.0',
53
+ id: 1,
54
+ result: {
55
+ value: {
56
+ data: [buf.toString('base64'), 'base64'],
57
+ executable: false,
58
+ lamports: 100000000,
59
+ owner: 'SPoo1Ku8WFXoNDMHPsrGSTSG1Y47rzgn41SLUNakuHy',
60
+ rentEpoch: 0,
61
+ },
62
+ },
63
+ };
64
+ }
18
65
  describe('Jito smallest-unit migration', () => {
19
66
  let provider;
20
67
  let warnSpy;
68
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
69
+ let fetchSpy;
21
70
  beforeEach(() => {
22
- provider = new JitoStakingActionProvider();
71
+ provider = new JitoStakingActionProvider({ rpcUrl: TEST_RPC_URL });
23
72
  warnSpy = vi.spyOn(console, 'warn').mockImplementation(() => { });
73
+ // Mock global fetch to return fake stake pool RPC data.
74
+ // The provider also calls getTokenAccountsByOwner internally via getAssociatedTokenAddress
75
+ // which does NOT call fetch — ATA is derived locally. So all fetch calls go to getAccountInfo.
76
+ fetchSpy = vi.spyOn(globalThis, 'fetch').mockImplementation(async () => {
77
+ return new Response(JSON.stringify(buildStakePoolRpcResponse()), {
78
+ status: 200,
79
+ headers: { 'Content-Type': 'application/json' },
80
+ });
81
+ });
24
82
  });
25
83
  afterEach(() => {
26
84
  warnSpy.mockRestore();
85
+ fetchSpy.mockRestore();
27
86
  });
28
87
  describe('stake', () => {
29
88
  it('uses smallest-unit (lamports) integer directly', async () => {
@@ -42,6 +101,21 @@ describe('Jito smallest-unit migration', () => {
42
101
  const belowMin = (JITO_MIN_DEPOSIT_LAMPORTS - 1n).toString();
43
102
  await expect(provider.resolve('stake', { amount: belowMin }, TEST_CONTEXT)).rejects.toThrow(/Minimum Jito stake deposit/);
44
103
  });
104
+ it('uses dynamic manager_fee_account from on-chain stake pool data', async () => {
105
+ const result = await provider.resolve('stake', { amount: '1500000000' }, TEST_CONTEXT);
106
+ // accounts[5] = managerFeeAccount, accounts[6] = referralFeeAccount (same)
107
+ expect(result.accounts[5].pubkey).toBe(MOCK_MANAGER_FEE);
108
+ expect(result.accounts[6].pubkey).toBe(MOCK_MANAGER_FEE);
109
+ });
110
+ it('uses dynamic reserve_stake from on-chain stake pool data', async () => {
111
+ const result = await provider.resolve('stake', { amount: '1500000000' }, TEST_CONTEXT);
112
+ // accounts[2] = reserveStake
113
+ expect(result.accounts[2].pubkey).toBe(MOCK_RESERVE_STAKE);
114
+ });
115
+ it('throws when rpcUrl is not configured', async () => {
116
+ const providerNoRpc = new JitoStakingActionProvider();
117
+ await expect(providerNoRpc.resolve('stake', { amount: '1500000000' }, TEST_CONTEXT)).rejects.toThrow(/rpcUrl is required/);
118
+ });
45
119
  });
46
120
  describe('unstake', () => {
47
121
  it('uses smallest-unit (lamports) integer directly', async () => {
@@ -50,6 +124,38 @@ describe('Jito smallest-unit migration', () => {
50
124
  expect(result.type).toBe('CONTRACT_CALL');
51
125
  expect(warnSpy).not.toHaveBeenCalled();
52
126
  });
127
+ it('uses dynamic manager_fee_account from on-chain stake pool data', async () => {
128
+ const result = await provider.resolve('unstake', { amount: '1000000000' }, TEST_CONTEXT);
129
+ // accounts[6] = managerFeeAccount for WithdrawSol
130
+ expect(result.accounts[6].pubkey).toBe(MOCK_MANAGER_FEE);
131
+ });
132
+ it('uses dynamic reserve_stake from on-chain stake pool data', async () => {
133
+ const result = await provider.resolve('unstake', { amount: '1000000000' }, TEST_CONTEXT);
134
+ // accounts[4] = reserveStake for WithdrawSol
135
+ expect(result.accounts[4].pubkey).toBe(MOCK_RESERVE_STAKE);
136
+ });
137
+ it('throws when rpcUrl is not configured', async () => {
138
+ const providerNoRpc = new JitoStakingActionProvider();
139
+ await expect(providerNoRpc.resolve('unstake', { amount: '1000000000' }, TEST_CONTEXT)).rejects.toThrow(/rpcUrl is required/);
140
+ });
141
+ });
142
+ describe('getStakePoolAccounts error paths', () => {
143
+ it('throws when stake pool account not found (null data)', async () => {
144
+ fetchSpy.mockResolvedValueOnce(new Response(JSON.stringify({
145
+ jsonrpc: '2.0', id: 1, result: { value: null },
146
+ }), { status: 200, headers: { 'Content-Type': 'application/json' } }));
147
+ const { getStakePoolAccounts } = await import('./jito-stake-pool.js');
148
+ await expect(getStakePoolAccounts(TEST_RPC_URL, 'BadAddress')).rejects.toThrow('Stake pool account not found');
149
+ });
150
+ it('throws when account data too short', async () => {
151
+ // Return a buffer shorter than 226 bytes
152
+ const shortBuf = Buffer.alloc(100, 0);
153
+ fetchSpy.mockResolvedValueOnce(new Response(JSON.stringify({
154
+ jsonrpc: '2.0', id: 1, result: { value: { data: [shortBuf.toString('base64'), 'base64'], executable: false, lamports: 0, owner: '', rentEpoch: 0 } },
155
+ }), { status: 200, headers: { 'Content-Type': 'application/json' } }));
156
+ const { getStakePoolAccounts } = await import('./jito-stake-pool.js');
157
+ await expect(getStakePoolAccounts(TEST_RPC_URL, 'SomeAddress')).rejects.toThrow('too short');
158
+ });
53
159
  });
54
160
  });
55
161
  //# sourceMappingURL=jito-migration.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jito-migration.test.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-migration.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jito-migration.test.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-migration.test.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,19 @@ export declare function getJitoSolBalance(rpcUrl: string, walletAddress: string,
53
53
  * @returns Exchange rate as floating point (SOL per pool token)
54
54
  */
55
55
  export declare function getStakePoolExchangeRate(rpcUrl: string, stakePoolAddress: string): Promise<number>;
56
+ /**
57
+ * Fetch and parse key accounts from the on-chain SPL Stake Pool account data.
58
+ *
59
+ * SPL Stake Pool Borsh layout (relevant offsets):
60
+ * - reserve_stake: 32 bytes at offset 130
61
+ * - manager_fee_account: 32 bytes at offset 194
62
+ *
63
+ * @returns Parsed stake pool accounts as base58-encoded public keys
64
+ */
65
+ export declare function getStakePoolAccounts(rpcUrl: string, stakePoolAddress: string): Promise<{
66
+ managerFeeAccount: string;
67
+ reserveStake: string;
68
+ }>;
56
69
  /**
57
70
  * Parse a human-readable SOL amount string to lamports (bigint).
58
71
  * SOL has 9 decimals (not 18 like ETH).
@@ -83,13 +96,13 @@ interface PreInstruction {
83
96
  * 2. reserveStake (writable)
84
97
  * 3. fundingAccount (signer, writable) = wallet
85
98
  * 4. destTokenAccount (writable) = wallet's JitoSOL ATA
86
- * 5. managerFeeAccount (writable)
99
+ * 5. managerFeeAccount (writable) — read dynamically from on-chain stake pool data
87
100
  * 6. referralFeeAccount (writable) = same as managerFeeAccount (no referral)
88
101
  * 7. poolMint (writable) = JitoSOL mint
89
102
  * 8. systemProgram (read-only)
90
103
  * 9. tokenProgram (read-only)
91
104
  */
92
- export declare function buildDepositSolRequest(config: JitoStakingConfig, amountLamports: bigint, walletAddress: string): Promise<{
105
+ export declare function buildDepositSolRequest(config: JitoStakingConfig, amountLamports: bigint, walletAddress: string, rpcUrl: string): Promise<{
93
106
  type: 'CONTRACT_CALL';
94
107
  to: string;
95
108
  programId: string;
@@ -106,16 +119,16 @@ export declare function buildDepositSolRequest(config: JitoStakingConfig, amount
106
119
  * 1. withdrawAuthority (PDA, read-only)
107
120
  * 2. userTransferAuthority (signer) = wallet
108
121
  * 3. sourceTokenAccount (writable) = wallet's JitoSOL ATA
109
- * 4. reserveStake (writable)
122
+ * 4. reserveStake (writable) — read dynamically from on-chain stake pool data
110
123
  * 5. destSolAccount (writable) = wallet (receives SOL)
111
- * 6. managerFeeAccount (writable)
124
+ * 6. managerFeeAccount (writable) — read dynamically from on-chain stake pool data
112
125
  * 7. poolMint (writable) = JitoSOL mint
113
126
  * 8. clock (read-only)
114
127
  * 9. stakeHistory (read-only)
115
128
  * 10. stakeProgram (read-only)
116
129
  * 11. tokenProgram (read-only)
117
130
  */
118
- export declare function buildWithdrawSolRequest(config: JitoStakingConfig, amountLamports: bigint, walletAddress: string): Promise<{
131
+ export declare function buildWithdrawSolRequest(config: JitoStakingConfig, amountLamports: bigint, walletAddress: string, rpcUrl: string): Promise<{
119
132
  type: 'CONTRACT_CALL';
120
133
  to: string;
121
134
  programId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"jito-stake-pool.d.ts","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-stake-pool.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,iBAAiB,EAMvB,MAAM,aAAa,CAAC;AAWrB;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAiCpD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CA8BtD;AA6ED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,UAAU,EAAE,EACnB,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CA8B/B;AASD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,YAAY,GAAE,MAA0B,GACvC,OAAO,CAAC,MAAM,CAAC,CAYjB;AAMD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAMpE;AAMD;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA2CtD;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAMD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAcD,oDAAoD;AACpD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,mEAAmE;AACnE,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AA4CD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,iBAAiB,EACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IACT,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC,CAAC,CAuCD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,iBAAiB,EACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IACT,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,CAAC,CA6BD"}
1
+ {"version":3,"file":"jito-stake-pool.d.ts","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-stake-pool.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,iBAAiB,EAIvB,MAAM,aAAa,CAAC;AAWrB;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAiCpD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CA8BtD;AA6ED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,UAAU,EAAE,EACnB,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CA8B/B;AASD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,YAAY,GAAE,MAA0B,GACvC,OAAO,CAAC,MAAM,CAAC,CAYjB;AAMD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAMpE;AAMD;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA2CtD;AAsCD;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB9D;AAMD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAcD,oDAAoD;AACpD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,mEAAmE;AACnE,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AA4CD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,iBAAiB,EACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC,CAAC,CAwCD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,iBAAiB,EACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,CAAC,CA8BD"}
@@ -14,7 +14,7 @@
14
14
  */
15
15
  import { createHash } from 'node:crypto';
16
16
  import { parseTokenAmount } from '../../common/amount-parser.js';
17
- import { JITO_WITHDRAW_AUTHORITY, JITO_RESERVE_STAKE, JITO_MANAGER_FEE, SPL_TOKEN_PROGRAM, SYSTEM_PROGRAM, } from './config.js';
17
+ import { JITO_WITHDRAW_AUTHORITY, SPL_TOKEN_PROGRAM, SYSTEM_PROGRAM, } from './config.js';
18
18
  // ---------------------------------------------------------------------------
19
19
  // Base58 encoder/decoder (Bitcoin alphabet)
20
20
  // ---------------------------------------------------------------------------
@@ -269,15 +269,11 @@ export async function getJitoSolBalance(rpcUrl, walletAddress, jitosolMint) {
269
269
  };
270
270
  }
271
271
  /**
272
- * Fetch the SPL Stake Pool exchange rate (total_lamports / pool_token_supply).
272
+ * Fetch the raw stake pool account data buffer from the RPC.
273
273
  *
274
- * SPL Stake Pool account layout:
275
- * - total_lamports: u64 LE at byte offset 258
276
- * - pool_token_supply: u64 LE at byte offset 266
277
- *
278
- * @returns Exchange rate as floating point (SOL per pool token)
274
+ * @returns Buffer containing the Borsh-serialized stake pool account data
279
275
  */
280
- export async function getStakePoolExchangeRate(rpcUrl, stakePoolAddress) {
276
+ async function fetchStakePoolAccountData(rpcUrl, stakePoolAddress) {
281
277
  const resp = await fetch(rpcUrl, {
282
278
  method: 'POST',
283
279
  headers: { 'Content-Type': 'application/json' },
@@ -289,8 +285,23 @@ export async function getStakePoolExchangeRate(rpcUrl, stakePoolAddress) {
289
285
  }),
290
286
  });
291
287
  const json = (await resp.json());
288
+ if (!json.result?.value?.data) {
289
+ throw new Error(`Stake pool account not found: ${stakePoolAddress}`);
290
+ }
292
291
  const base64Data = json.result.value.data[0];
293
- const buffer = Buffer.from(base64Data, 'base64');
292
+ return Buffer.from(base64Data, 'base64');
293
+ }
294
+ /**
295
+ * Fetch the SPL Stake Pool exchange rate (total_lamports / pool_token_supply).
296
+ *
297
+ * SPL Stake Pool account layout:
298
+ * - total_lamports: u64 LE at byte offset 258
299
+ * - pool_token_supply: u64 LE at byte offset 266
300
+ *
301
+ * @returns Exchange rate as floating point (SOL per pool token)
302
+ */
303
+ export async function getStakePoolExchangeRate(rpcUrl, stakePoolAddress) {
304
+ const buffer = await fetchStakePoolAccountData(rpcUrl, stakePoolAddress);
294
305
  const view = new DataView(buffer.buffer, buffer.byteOffset, buffer.byteLength);
295
306
  const totalLamports = view.getBigUint64(258, true);
296
307
  const poolTokenSupply = view.getBigUint64(266, true);
@@ -298,6 +309,27 @@ export async function getStakePoolExchangeRate(rpcUrl, stakePoolAddress) {
298
309
  return 1.0;
299
310
  return Number(totalLamports) / Number(poolTokenSupply);
300
311
  }
312
+ /**
313
+ * Fetch and parse key accounts from the on-chain SPL Stake Pool account data.
314
+ *
315
+ * SPL Stake Pool Borsh layout (relevant offsets):
316
+ * - reserve_stake: 32 bytes at offset 130
317
+ * - manager_fee_account: 32 bytes at offset 194
318
+ *
319
+ * @returns Parsed stake pool accounts as base58-encoded public keys
320
+ */
321
+ export async function getStakePoolAccounts(rpcUrl, stakePoolAddress) {
322
+ const buffer = await fetchStakePoolAccountData(rpcUrl, stakePoolAddress);
323
+ if (buffer.length < 226) {
324
+ throw new Error(`Stake pool account data too short: ${buffer.length} bytes (expected at least 226)`);
325
+ }
326
+ const reserveStakeBytes = new Uint8Array(buffer.buffer, buffer.byteOffset + 130, 32);
327
+ const managerFeeBytes = new Uint8Array(buffer.buffer, buffer.byteOffset + 194, 32);
328
+ return {
329
+ reserveStake: base58Encode(reserveStakeBytes),
330
+ managerFeeAccount: base58Encode(managerFeeBytes),
331
+ };
332
+ }
301
333
  // ---------------------------------------------------------------------------
302
334
  // Amount parsing
303
335
  // ---------------------------------------------------------------------------
@@ -360,25 +392,29 @@ function buildCreateAtaIdempotentInstruction(payer, ataAddress, owner, mint, tok
360
392
  * 2. reserveStake (writable)
361
393
  * 3. fundingAccount (signer, writable) = wallet
362
394
  * 4. destTokenAccount (writable) = wallet's JitoSOL ATA
363
- * 5. managerFeeAccount (writable)
395
+ * 5. managerFeeAccount (writable) — read dynamically from on-chain stake pool data
364
396
  * 6. referralFeeAccount (writable) = same as managerFeeAccount (no referral)
365
397
  * 7. poolMint (writable) = JitoSOL mint
366
398
  * 8. systemProgram (read-only)
367
399
  * 9. tokenProgram (read-only)
368
400
  */
369
- export async function buildDepositSolRequest(config, amountLamports, walletAddress) {
370
- const destTokenAccount = await getAssociatedTokenAddress(walletAddress, config.jitosolMint, SPL_TOKEN_PROGRAM);
401
+ export async function buildDepositSolRequest(config, amountLamports, walletAddress, rpcUrl) {
402
+ const [destTokenAccount, stakePoolAccounts] = await Promise.all([
403
+ getAssociatedTokenAddress(walletAddress, config.jitosolMint, SPL_TOKEN_PROGRAM),
404
+ getStakePoolAccounts(rpcUrl, config.stakePoolAddress),
405
+ ]);
406
+ const { managerFeeAccount, reserveStake } = stakePoolAccounts;
371
407
  // Pre-instruction: Create JitoSOL ATA if it doesn't exist (idempotent).
372
408
  // Without this, DepositSol fails with Custom(1) when the ATA is missing.
373
409
  const createAtaIx = buildCreateAtaIdempotentInstruction(walletAddress, destTokenAccount, walletAddress, config.jitosolMint, SPL_TOKEN_PROGRAM);
374
410
  const accounts = [
375
411
  { pubkey: config.stakePoolAddress, isSigner: false, isWritable: true },
376
412
  { pubkey: JITO_WITHDRAW_AUTHORITY, isSigner: false, isWritable: false },
377
- { pubkey: JITO_RESERVE_STAKE, isSigner: false, isWritable: true },
413
+ { pubkey: reserveStake, isSigner: false, isWritable: true },
378
414
  { pubkey: walletAddress, isSigner: true, isWritable: true },
379
415
  { pubkey: destTokenAccount, isSigner: false, isWritable: true },
380
- { pubkey: JITO_MANAGER_FEE, isSigner: false, isWritable: true },
381
- { pubkey: JITO_MANAGER_FEE, isSigner: false, isWritable: true }, // referral = manager (no referral)
416
+ { pubkey: managerFeeAccount, isSigner: false, isWritable: true },
417
+ { pubkey: managerFeeAccount, isSigner: false, isWritable: true }, // referral = manager (no referral)
382
418
  { pubkey: config.jitosolMint, isSigner: false, isWritable: true },
383
419
  { pubkey: SYSTEM_PROGRAM, isSigner: false, isWritable: false },
384
420
  { pubkey: SPL_TOKEN_PROGRAM, isSigner: false, isWritable: false },
@@ -401,25 +437,29 @@ export async function buildDepositSolRequest(config, amountLamports, walletAddre
401
437
  * 1. withdrawAuthority (PDA, read-only)
402
438
  * 2. userTransferAuthority (signer) = wallet
403
439
  * 3. sourceTokenAccount (writable) = wallet's JitoSOL ATA
404
- * 4. reserveStake (writable)
440
+ * 4. reserveStake (writable) — read dynamically from on-chain stake pool data
405
441
  * 5. destSolAccount (writable) = wallet (receives SOL)
406
- * 6. managerFeeAccount (writable)
442
+ * 6. managerFeeAccount (writable) — read dynamically from on-chain stake pool data
407
443
  * 7. poolMint (writable) = JitoSOL mint
408
444
  * 8. clock (read-only)
409
445
  * 9. stakeHistory (read-only)
410
446
  * 10. stakeProgram (read-only)
411
447
  * 11. tokenProgram (read-only)
412
448
  */
413
- export async function buildWithdrawSolRequest(config, amountLamports, walletAddress) {
414
- const sourceTokenAccount = await getAssociatedTokenAddress(walletAddress, config.jitosolMint, SPL_TOKEN_PROGRAM);
449
+ export async function buildWithdrawSolRequest(config, amountLamports, walletAddress, rpcUrl) {
450
+ const [sourceTokenAccount, stakePoolAccounts] = await Promise.all([
451
+ getAssociatedTokenAddress(walletAddress, config.jitosolMint, SPL_TOKEN_PROGRAM),
452
+ getStakePoolAccounts(rpcUrl, config.stakePoolAddress),
453
+ ]);
454
+ const { managerFeeAccount, reserveStake } = stakePoolAccounts;
415
455
  const accounts = [
416
456
  { pubkey: config.stakePoolAddress, isSigner: false, isWritable: true },
417
457
  { pubkey: JITO_WITHDRAW_AUTHORITY, isSigner: false, isWritable: false },
418
458
  { pubkey: walletAddress, isSigner: true, isWritable: false },
419
459
  { pubkey: sourceTokenAccount, isSigner: false, isWritable: true },
420
- { pubkey: JITO_RESERVE_STAKE, isSigner: false, isWritable: true },
460
+ { pubkey: reserveStake, isSigner: false, isWritable: true },
421
461
  { pubkey: walletAddress, isSigner: false, isWritable: true },
422
- { pubkey: JITO_MANAGER_FEE, isSigner: false, isWritable: true },
462
+ { pubkey: managerFeeAccount, isSigner: false, isWritable: true },
423
463
  { pubkey: config.jitosolMint, isSigner: false, isWritable: true },
424
464
  { pubkey: CLOCK_SYSVAR, isSigner: false, isWritable: false },
425
465
  { pubkey: STAKE_HISTORY_SYSVAR, isSigner: false, isWritable: false },
@@ -1 +1 @@
1
- {"version":3,"file":"jito-stake-pool.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-stake-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jito-stake-pool.js","sourceRoot":"","sources":["../../../src/providers/jito-staking/jito-stake-pool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=jupiter-swap-provider.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jupiter-swap-provider.test.d.ts","sourceRoot":"","sources":["../../../../src/providers/jupiter-swap/__tests__/jupiter-swap-provider.test.ts"],"names":[],"mappings":""}