@carrot-protocol/clend-rpc 0.1.78-handoff-dev-dd084f2 → 0.1.78-handoff-dev-a32d015
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/events.d.ts +5 -0
- package/dist/events.js +9 -0
- package/dist/events.js.map +1 -1
- package/dist/idl/clend.d.ts +53 -0
- package/dist/idl/clend.js +53 -0
- package/dist/idl/clend.js.map +1 -1
- package/dist/instructions.d.ts +1 -0
- package/dist/instructions.js +12 -0
- package/dist/instructions.js.map +1 -1
- package/dist/rpc.d.ts +11 -6
- package/dist/rpc.js +242 -54
- package/dist/rpc.js.map +1 -1
- package/package.json +1 -1
package/dist/instructions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
|
package/dist/rpc.d.ts
CHANGED
|
@@ -134,12 +134,6 @@ export declare class ClendClient {
|
|
|
134
134
|
/**
|
|
135
135
|
* Generates instructions for the Handoff Deposit Leverage Flow.
|
|
136
136
|
* Splitting the operation into two phases to bypass CPI restrictions for Squads/Multisigs.
|
|
137
|
-
*
|
|
138
|
-
* @param handoffSigner - The ephemeral keypair/signer that will execute the flash loan.
|
|
139
|
-
* @param jitIxns - Array of JIT liquidity instructions to be injected into the Exec Tx.
|
|
140
|
-
* @returns
|
|
141
|
-
* - setupIxns: User signed (Init Account, Deposit Capital, Transfer Auth to Handoff)
|
|
142
|
-
* - execIxns: Handoff signed (JIT, Flash Loan, Borrow, Swap, Deposit, Return Auth to User)
|
|
143
137
|
*/
|
|
144
138
|
getDepositLeverageHandoffIxns(clendGroup: web3.PublicKey, user: web3.PublicKey, handoffSigner: web3.PublicKey, clendAccount: web3.PublicKey | null, inputMint: web3.PublicKey, collateralMint: web3.PublicKey, debtMint: web3.PublicKey, depositAmount: BN, targetLeverage: number, slippageBps: number, jitIxns?: web3.TransactionInstruction[], swapperOverride?: ISwapper): Promise<{
|
|
145
139
|
clendAccount: web3.PublicKey;
|
|
@@ -240,6 +234,11 @@ export declare class ClendClient {
|
|
|
240
234
|
ixns: web3.TransactionInstruction[];
|
|
241
235
|
luts: web3.PublicKey[];
|
|
242
236
|
}>;
|
|
237
|
+
getWithdrawLeverageHandoffIxns(clendGroup: web3.PublicKey, clendAccount: web3.PublicKey, user: web3.PublicKey, handoffSigner: web3.PublicKey, outputMint: web3.PublicKey, collateralMint: web3.PublicKey, debtMint: web3.PublicKey, withdrawAmount: BN, withdrawAll: boolean, slippageBps: number, swapperOverride?: ISwapper): Promise<{
|
|
238
|
+
setupIxns: web3.TransactionInstruction[];
|
|
239
|
+
execIxns: web3.TransactionInstruction[];
|
|
240
|
+
luts: web3.PublicKey[];
|
|
241
|
+
}>;
|
|
243
242
|
getWithdrawToTargetLeverageCollateralParams(clendGroup: web3.PublicKey, clendAccount: web3.PublicKey, collateralMint: web3.PublicKey, debtMint: web3.PublicKey, desiredOutputAmount: BN, // user-facing COLLATERAL amount
|
|
244
243
|
targetLeverage: number): Promise<{
|
|
245
244
|
debtToRepay: BN;
|
|
@@ -303,8 +302,14 @@ export declare class ClendClient {
|
|
|
303
302
|
ixns: web3.TransactionInstruction[];
|
|
304
303
|
luts: web3.PublicKey[];
|
|
305
304
|
}>;
|
|
305
|
+
getAdjustLeverageHandoffIxns(clendGroup: web3.PublicKey, clendAccount: web3.PublicKey, user: web3.PublicKey, handoffSigner: web3.PublicKey, collateralMint: web3.PublicKey, debtMint: web3.PublicKey, targetLeverage: number, slippageBps: number, jitIxns?: web3.TransactionInstruction[], swapperOverride?: ISwapper): Promise<{
|
|
306
|
+
setupIxns: web3.TransactionInstruction[];
|
|
307
|
+
execIxns: web3.TransactionInstruction[];
|
|
308
|
+
luts: web3.PublicKey[];
|
|
309
|
+
}>;
|
|
306
310
|
handleBankruptcy(clendAccount: web3.PublicKey, bank: web3.PublicKey): Promise<string>;
|
|
307
311
|
setNewAccountAuthority(clendAccount: web3.PublicKey, newAuthority: web3.PublicKey): Promise<string>;
|
|
312
|
+
takeoverAccount(clendAccount: web3.PublicKey, newAuthority: web3.PublicKey): Promise<string>;
|
|
308
313
|
getAccountsForAuthority(group: web3.PublicKey, authority: web3.PublicKey): Promise<web3.PublicKey[]>;
|
|
309
314
|
getAccountsForGroup(group: web3.PublicKey): Promise<web3.PublicKey[]>;
|
|
310
315
|
getActiveAccountsForGroup(group: web3.PublicKey): Promise<web3.PublicKey[]>;
|
package/dist/rpc.js
CHANGED
|
@@ -1497,37 +1497,30 @@ class ClendClient {
|
|
|
1497
1497
|
/**
|
|
1498
1498
|
* Generates instructions for the Handoff Deposit Leverage Flow.
|
|
1499
1499
|
* Splitting the operation into two phases to bypass CPI restrictions for Squads/Multisigs.
|
|
1500
|
-
*
|
|
1501
|
-
* @param handoffSigner - The ephemeral keypair/signer that will execute the flash loan.
|
|
1502
|
-
* @param jitIxns - Array of JIT liquidity instructions to be injected into the Exec Tx.
|
|
1503
|
-
* @returns
|
|
1504
|
-
* - setupIxns: User signed (Init Account, Deposit Capital, Transfer Auth to Handoff)
|
|
1505
|
-
* - execIxns: Handoff signed (JIT, Flash Loan, Borrow, Swap, Deposit, Return Auth to User)
|
|
1506
1500
|
*/
|
|
1507
1501
|
async getDepositLeverageHandoffIxns(clendGroup, user, handoffSigner, clendAccount, inputMint, collateralMint, debtMint, depositAmount, targetLeverage, slippageBps, jitIxns = [], swapperOverride) {
|
|
1508
1502
|
let activeSwapper = swapperOverride || this.swapper;
|
|
1509
1503
|
const setupIxns = [];
|
|
1510
1504
|
const execIxns = [];
|
|
1511
1505
|
const setupSigners = [];
|
|
1512
|
-
// 1. Clend Account Initialization
|
|
1506
|
+
// 1. Clend Account Initialization
|
|
1513
1507
|
if (clendAccount === null) {
|
|
1514
1508
|
const clendAccountSeed = (0, utils_1.randomU32)();
|
|
1515
1509
|
const { ix, clendAccount: newAccount } = await this.instructions.initializeClendAccountWithSeed(clendGroup, user, clendAccountSeed);
|
|
1516
1510
|
setupIxns.push(ix);
|
|
1517
1511
|
clendAccount = newAccount;
|
|
1518
1512
|
}
|
|
1519
|
-
// 2. Fetch
|
|
1513
|
+
// 2. Fetch Data
|
|
1520
1514
|
const debtBank = (0, addresses_1.getBankPda)(clendGroup, debtMint);
|
|
1521
1515
|
const collateralBank = (0, addresses_1.getBankPda)(clendGroup, collateralMint);
|
|
1522
1516
|
const inputBank = (0, addresses_1.getBankPda)(clendGroup, inputMint);
|
|
1523
|
-
// We fetch these to get decimals and oracle data
|
|
1524
1517
|
const [debtBankData, collateralBankData] = await this.getBanks([
|
|
1525
1518
|
debtBank,
|
|
1526
1519
|
collateralBank,
|
|
1527
1520
|
]);
|
|
1528
|
-
// 3. Calculate
|
|
1521
|
+
// 3. Calculate Params
|
|
1529
1522
|
let borrowAmount;
|
|
1530
|
-
//
|
|
1523
|
+
// NOTE: This logic mimics the "Standard" flow param calculation
|
|
1531
1524
|
if (inputMint.equals(collateralMint)) {
|
|
1532
1525
|
const p = await this.getDepositLeverageFromCollateralParams(user, clendGroup, collateralMint, debtMint, depositAmount, targetLeverage, slippageBps, activeSwapper);
|
|
1533
1526
|
borrowAmount = p.borrowAmount;
|
|
@@ -1541,10 +1534,8 @@ class ClendClient {
|
|
|
1541
1534
|
borrowAmount = p.borrowAmount;
|
|
1542
1535
|
}
|
|
1543
1536
|
// 4. Setup Transaction (User Signed)
|
|
1544
|
-
// A. Deposit initial capital
|
|
1545
1537
|
const inputTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, inputMint);
|
|
1546
1538
|
const userInputAta = (0, spl_token_1.getAssociatedTokenAddressSync)(inputMint, user, true, inputTokenProgram);
|
|
1547
|
-
// Fetch input bank data if it wasn't already fetched
|
|
1548
1539
|
let inputBankData = debtBankData.mint.equals(inputMint)
|
|
1549
1540
|
? debtBankData
|
|
1550
1541
|
: collateralBankData.mint.equals(inputMint)
|
|
@@ -1552,78 +1543,56 @@ class ClendClient {
|
|
|
1552
1543
|
: await this.getBank(inputBank);
|
|
1553
1544
|
const depositIxns = await this.instructions.deposit(clendGroup, clendAccount, user, inputBankData.key, inputBankData.mint, inputBankData.defaultOracle, userInputAta, inputTokenProgram, depositAmount, true);
|
|
1554
1545
|
setupIxns.push(...depositIxns);
|
|
1555
|
-
// B. Transfer Authority to Handoff Signer
|
|
1556
1546
|
const transferAuthIx = await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, user, handoffSigner);
|
|
1557
1547
|
setupIxns.push(transferAuthIx);
|
|
1558
1548
|
// 5. Execution Transaction (Handoff Signed)
|
|
1559
|
-
// A. Inject JIT Instructions (Pre-Flash Loan)
|
|
1560
|
-
// These happen first to ensure liquidity is available before we try to borrow.
|
|
1561
1549
|
if (jitIxns.length > 0) {
|
|
1562
1550
|
execIxns.push(...jitIxns);
|
|
1563
1551
|
}
|
|
1564
|
-
// B. Prepare Handoff ATAs (Idempotent)
|
|
1565
1552
|
const liabilityTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, debtMint);
|
|
1566
1553
|
const assetTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, collateralMint);
|
|
1567
1554
|
const handoffDebtAta = (0, spl_token_1.getAssociatedTokenAddressSync)(debtMint, handoffSigner, true, liabilityTokenProgram);
|
|
1568
1555
|
const handoffCollateralAta = (0, spl_token_1.getAssociatedTokenAddressSync)(collateralMint, handoffSigner, true, assetTokenProgram);
|
|
1569
1556
|
execIxns.push((0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(handoffSigner, handoffDebtAta, handoffSigner, debtMint, liabilityTokenProgram), (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(handoffSigner, handoffCollateralAta, handoffSigner, collateralMint, assetTokenProgram));
|
|
1570
|
-
//
|
|
1571
|
-
|
|
1557
|
+
// --- FIX: Adjust Borrow Amount if Input == Debt ---
|
|
1558
|
+
let effectiveBorrowAmount = borrowAmount;
|
|
1559
|
+
if (inputMint.equals(debtMint)) {
|
|
1560
|
+
// If user deposited Debt token, we must borrow it back out to swap it.
|
|
1561
|
+
// Otherwise it just sits in the account reducing the liability.
|
|
1562
|
+
effectiveBorrowAmount = borrowAmount.add(depositAmount);
|
|
1563
|
+
}
|
|
1564
|
+
// --- Swap Calculation ---
|
|
1565
|
+
// The input to the swap is the TOTAL amount we have in the Handoff ATA.
|
|
1566
|
+
// If input==debt, this is (Borrow + Deposit).
|
|
1567
|
+
// If input==collateral, this is (Borrow). (Deposit is already collateral, stays in account).
|
|
1568
|
+
const swapInputAmount = effectiveBorrowAmount;
|
|
1572
1569
|
const swapQuote = await activeSwapper.getQuote({
|
|
1573
1570
|
payer: handoffSigner,
|
|
1574
1571
|
inputMint: debtMint,
|
|
1575
1572
|
inputMintDecimals: debtBankData.mintDecimals,
|
|
1576
1573
|
outputMint: collateralMint,
|
|
1577
1574
|
outputMintDecimals: collateralBankData.mintDecimals,
|
|
1578
|
-
inputAmount:
|
|
1575
|
+
inputAmount: swapInputAmount,
|
|
1579
1576
|
slippageBps,
|
|
1580
1577
|
swapMode: "ExactIn",
|
|
1581
1578
|
});
|
|
1582
|
-
// Use the quote output for the deposit amount to ensure strict consistency
|
|
1583
1579
|
const collateralToDeposit = new anchor_1.BN(swapQuote.outAmount);
|
|
1584
1580
|
const swapIxns = await activeSwapper.getSwapIxns(swapQuote);
|
|
1585
|
-
// D. Construct Active Banks List for Remaining Accounts
|
|
1586
1581
|
const activeBankList = [debtBankData, collateralBankData];
|
|
1587
1582
|
if (!inputMint.equals(debtMint) && !inputMint.equals(collateralMint)) {
|
|
1588
1583
|
activeBankList.push(inputBankData);
|
|
1589
1584
|
}
|
|
1590
1585
|
const remainingAccounts = (0, utils_1.getClendAccountRemainingAccounts)(activeBankList);
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
const
|
|
1594
|
-
debtBankData.key, debtMint, handoffDebtAta, liabilityTokenProgram, borrowAmount, remainingAccounts);
|
|
1595
|
-
// 2. Deposit Collateral (from Handoff ATA)
|
|
1596
|
-
const loopDepositIx = await this.instructions.deposit(clendGroup, clendAccount, handoffSigner, // Signer is Handoff
|
|
1597
|
-
collateralBankData.key, collateralMint, collateralBankData.defaultOracle, handoffCollateralAta, assetTokenProgram, collateralToDeposit, true);
|
|
1598
|
-
// F. Wrap in Flash Loan
|
|
1586
|
+
const borrowIx = await this.instructions.borrow(clendGroup, clendAccount, handoffSigner, debtBankData.key, debtMint, handoffDebtAta, liabilityTokenProgram, effectiveBorrowAmount, // <--- Use adjusted amount
|
|
1587
|
+
remainingAccounts);
|
|
1588
|
+
const loopDepositIx = await this.instructions.deposit(clendGroup, clendAccount, handoffSigner, collateralBankData.key, collateralMint, collateralBankData.defaultOracle, handoffCollateralAta, assetTokenProgram, collateralToDeposit, true);
|
|
1599
1589
|
const innerIxns = [...borrowIx, ...swapIxns.ixns, ...loopDepositIx];
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
//
|
|
1603
|
-
// Preamble Instructions (Caller adds these):
|
|
1604
|
-
// 1. Jito Tip (1)
|
|
1605
|
-
// 2. Compute Budget Limit (1)
|
|
1606
|
-
// 3. Compute Unit Price (1)
|
|
1607
|
-
// Total Caller Preamble = 3
|
|
1608
|
-
//
|
|
1609
|
-
// Instructions added inside this function BEFORE StartFlashLoan:
|
|
1610
|
-
// 1. JIT Instructions (jitIxns.length)
|
|
1611
|
-
// 2. Create Handoff ATAs (2)
|
|
1612
|
-
//
|
|
1613
|
-
// Total Instructions before StartFlashLoan = 3 + jitIxns.length + 2
|
|
1614
|
-
// StartFlashLoan Index = 5 + jitIxns.length
|
|
1615
|
-
// Inner Instructions Start Index = 6 + jitIxns.length
|
|
1616
|
-
// EndFlashLoan Index = StartFlashLoan Index + 1 + Inner Length
|
|
1617
|
-
const callerPreambleCount = 3; // JitoTip + SetCuLimit + SetCuPrice
|
|
1618
|
-
const localPreambleCount = jitIxns.length + 2; // JIT + CreateATAs(2)
|
|
1619
|
-
// The instruction index for EndFlashLoan
|
|
1620
|
-
// StartFlash is the *next* instruction we push after preamble
|
|
1590
|
+
const callerPreambleCount = 3;
|
|
1591
|
+
const localPreambleCount = jitIxns.length + 2;
|
|
1621
1592
|
const startIndex = callerPreambleCount + localPreambleCount;
|
|
1622
|
-
// endIndex = startIndex + 1 (StartFlash itself) + innerIxns.length
|
|
1623
1593
|
const endIndex = new anchor_1.BN(startIndex + 1 + innerIxns.length);
|
|
1624
1594
|
const { beginFlashLoanIx, endFlashLoanIx } = await this.instructions.createFlashLoanInstructions(clendAccount, handoffSigner, endIndex, (0, utils_1.getClendAccountRemainingAccounts)(activeBankList));
|
|
1625
1595
|
execIxns.push(beginFlashLoanIx, ...innerIxns, endFlashLoanIx);
|
|
1626
|
-
// G. Return Authority to User
|
|
1627
1596
|
const returnAuthIx = await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, handoffSigner, user);
|
|
1628
1597
|
execIxns.push(returnAuthIx);
|
|
1629
1598
|
return {
|
|
@@ -2753,6 +2722,135 @@ class ClendClient {
|
|
|
2753
2722
|
}
|
|
2754
2723
|
return { ixns: instructions, luts: dedupedLuts };
|
|
2755
2724
|
}
|
|
2725
|
+
async getWithdrawLeverageHandoffIxns(clendGroup, clendAccount, user, handoffSigner, outputMint, collateralMint, debtMint, withdrawAmount, withdrawAll, slippageBps, swapperOverride) {
|
|
2726
|
+
// 1. Calculate Params & Identify Flow Type
|
|
2727
|
+
let debtToRepay;
|
|
2728
|
+
let collateralToWithdraw;
|
|
2729
|
+
let debtBankData;
|
|
2730
|
+
let collateralBankData;
|
|
2731
|
+
let flowType;
|
|
2732
|
+
let outputDecimals;
|
|
2733
|
+
if (outputMint.equals(collateralMint)) {
|
|
2734
|
+
flowType = "collateral";
|
|
2735
|
+
const p = await this.getNetWithdrawLeverageCollateralParams(clendGroup, clendAccount, collateralMint, debtMint, withdrawAmount, withdrawAll);
|
|
2736
|
+
debtToRepay = p.debtToRepay;
|
|
2737
|
+
collateralToWithdraw = p.collateralToWithdraw;
|
|
2738
|
+
debtBankData = p.debtBankData;
|
|
2739
|
+
collateralBankData = p.collateralBankData;
|
|
2740
|
+
outputDecimals = collateralBankData.mintDecimals;
|
|
2741
|
+
}
|
|
2742
|
+
else if (outputMint.equals(debtMint)) {
|
|
2743
|
+
flowType = "debt";
|
|
2744
|
+
const p = await this.getNetWithdrawLeverageDebtParams(clendGroup, clendAccount, collateralMint, debtMint, withdrawAmount, withdrawAll);
|
|
2745
|
+
debtToRepay = p.debtToRepay;
|
|
2746
|
+
collateralToWithdraw = p.collateralToWithdraw;
|
|
2747
|
+
debtBankData = p.debtBankData;
|
|
2748
|
+
collateralBankData = p.collateralBankData;
|
|
2749
|
+
outputDecimals = debtBankData.mintDecimals;
|
|
2750
|
+
}
|
|
2751
|
+
else {
|
|
2752
|
+
flowType = "funding";
|
|
2753
|
+
const fundingMintDecimals = await (0, utils_1.getTokenDecimalsForMintFromRpc)(this.connection, outputMint);
|
|
2754
|
+
const p = await this.getNetWithdrawLeverageFundingParams(clendGroup, clendAccount, collateralMint, debtMint, outputMint, withdrawAmount, withdrawAll);
|
|
2755
|
+
debtToRepay = p.debtToRepay;
|
|
2756
|
+
collateralToWithdraw = p.collateralToWithdraw;
|
|
2757
|
+
debtBankData = p.debtBankData;
|
|
2758
|
+
collateralBankData = p.collateralBankData;
|
|
2759
|
+
outputDecimals = fundingMintDecimals;
|
|
2760
|
+
}
|
|
2761
|
+
// 2. Setup Transaction (User Signed)
|
|
2762
|
+
const setupIxns = [
|
|
2763
|
+
await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, user, handoffSigner),
|
|
2764
|
+
];
|
|
2765
|
+
// 3. Execution Transaction (Handoff Signed)
|
|
2766
|
+
const execIxns = [];
|
|
2767
|
+
// A. Create Handoff ATAs
|
|
2768
|
+
// We need ATAs for Collateral and Debt (for the loop) and Output (to receive funds).
|
|
2769
|
+
const debtTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, debtMint);
|
|
2770
|
+
const collateralTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, collateralMint);
|
|
2771
|
+
const outputTokenProgram = await (0, utils_1.getTokenProgramForMintFromRpc)(this.connection, outputMint);
|
|
2772
|
+
const handoffDebtAta = (0, spl_token_1.getAssociatedTokenAddressSync)(debtMint, handoffSigner, true, debtTokenProgram);
|
|
2773
|
+
const handoffCollateralAta = (0, spl_token_1.getAssociatedTokenAddressSync)(collateralMint, handoffSigner, true, collateralTokenProgram);
|
|
2774
|
+
//execIxns.push(
|
|
2775
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
2776
|
+
// handoffSigner,
|
|
2777
|
+
// handoffDebtAta,
|
|
2778
|
+
// handoffSigner,
|
|
2779
|
+
// debtMint,
|
|
2780
|
+
// debtTokenProgram,
|
|
2781
|
+
// ),
|
|
2782
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
2783
|
+
// handoffSigner,
|
|
2784
|
+
// handoffCollateralAta,
|
|
2785
|
+
// handoffSigner,
|
|
2786
|
+
// collateralMint,
|
|
2787
|
+
// collateralTokenProgram,
|
|
2788
|
+
// ),
|
|
2789
|
+
//);
|
|
2790
|
+
// If output is different from debt/collateral, create that ATA too
|
|
2791
|
+
let handoffOutputAta = handoffCollateralAta; // Default fallback
|
|
2792
|
+
if (flowType === "funding") {
|
|
2793
|
+
handoffOutputAta = (0, spl_token_1.getAssociatedTokenAddressSync)(outputMint, handoffSigner, true, outputTokenProgram);
|
|
2794
|
+
//execIxns.push(
|
|
2795
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
2796
|
+
// handoffSigner,
|
|
2797
|
+
// handoffOutputAta,
|
|
2798
|
+
// handoffSigner,
|
|
2799
|
+
// outputMint,
|
|
2800
|
+
// outputTokenProgram,
|
|
2801
|
+
// ),
|
|
2802
|
+
//);
|
|
2803
|
+
}
|
|
2804
|
+
else if (flowType === "debt") {
|
|
2805
|
+
handoffOutputAta = handoffDebtAta;
|
|
2806
|
+
}
|
|
2807
|
+
// B. Calculate Flash Loan Offset
|
|
2808
|
+
const additionalIxnCount = execIxns.length + 1;
|
|
2809
|
+
// C. Generate Inner Withdraw Logic
|
|
2810
|
+
let logicResult;
|
|
2811
|
+
if (flowType === "collateral") {
|
|
2812
|
+
logicResult = await this.getWithdrawLeverageCollateralIxns(clendGroup, clendAccount, collateralMint, debtMint, collateralBankData.mintDecimals, debtBankData.mintDecimals, withdrawAll, collateralToWithdraw, withdrawAmount, debtToRepay, slippageBps, additionalIxnCount, swapperOverride);
|
|
2813
|
+
}
|
|
2814
|
+
else if (flowType === "debt") {
|
|
2815
|
+
logicResult = await this.getWithdrawLeverageDebtIxns(clendGroup, clendAccount, collateralMint, debtMint, collateralBankData.mintDecimals, debtBankData.mintDecimals, withdrawAll, debtToRepay, collateralToWithdraw, slippageBps, additionalIxnCount, swapperOverride);
|
|
2816
|
+
}
|
|
2817
|
+
else {
|
|
2818
|
+
const fundingMintDecimals = outputDecimals;
|
|
2819
|
+
logicResult = await this.getWithdrawLeverageFundingIxns(clendGroup, clendAccount, collateralMint, debtMint, outputMint, collateralBankData.mintDecimals, debtBankData.mintDecimals, fundingMintDecimals, withdrawAll, debtToRepay, collateralToWithdraw, slippageBps, additionalIxnCount, swapperOverride);
|
|
2820
|
+
}
|
|
2821
|
+
execIxns.push(...logicResult.ixns);
|
|
2822
|
+
// D. Final Transfer: Handoff -> User
|
|
2823
|
+
// We simply transfer the calculated `withdrawAmount` back to the user.
|
|
2824
|
+
// If there is dust remaining (e.g. from favorable slippage), it stays in the ephemeral signer.
|
|
2825
|
+
// Ensure User ATA exists
|
|
2826
|
+
const userOutputAta = (0, spl_token_1.getAssociatedTokenAddressSync)(outputMint, user, true, outputTokenProgram);
|
|
2827
|
+
// 1. Calculate 99.5% of the amount (0.5% reduction)
|
|
2828
|
+
// We multiply by 995 and divide by 1000 to avoid floating point issues
|
|
2829
|
+
const safeTransferAmount = withdrawAmount
|
|
2830
|
+
.mul(new anchor_1.BN(995))
|
|
2831
|
+
.div(new anchor_1.BN(1000));
|
|
2832
|
+
utils_1.logger.info(`Adjusted transfer amount (0.1% buffer)`, {
|
|
2833
|
+
original: withdrawAmount.toString(),
|
|
2834
|
+
adjusted: safeTransferAmount.toString(),
|
|
2835
|
+
});
|
|
2836
|
+
// 2. Use the adjusted amount in your Instruction #12
|
|
2837
|
+
const transferIx = (0, spl_token_1.createTransferCheckedInstruction)(handoffOutputAta, // source (handoff)
|
|
2838
|
+
outputMint, // mint
|
|
2839
|
+
userOutputAta, // destination (user)
|
|
2840
|
+
handoffSigner, // owner
|
|
2841
|
+
BigInt(safeTransferAmount.toString()), // adjusted amount
|
|
2842
|
+
outputDecimals, // decimals
|
|
2843
|
+
[], outputTokenProgram);
|
|
2844
|
+
execIxns.push(transferIx);
|
|
2845
|
+
// E. Return Authority
|
|
2846
|
+
const returnAuthIx = await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, handoffSigner, user);
|
|
2847
|
+
execIxns.push(returnAuthIx);
|
|
2848
|
+
return {
|
|
2849
|
+
setupIxns,
|
|
2850
|
+
execIxns,
|
|
2851
|
+
luts: logicResult.luts,
|
|
2852
|
+
};
|
|
2853
|
+
}
|
|
2756
2854
|
async getWithdrawToTargetLeverageCollateralParams(clendGroup, clendAccount, collateralMint, debtMint, desiredOutputAmount, // user-facing COLLATERAL amount
|
|
2757
2855
|
targetLeverage) {
|
|
2758
2856
|
utils_1.logger.info("getWithdrawToTargetLeverageCollateralParams", {
|
|
@@ -3167,7 +3265,7 @@ class ClendClient {
|
|
|
3167
3265
|
const collateralToWithdrawBN = (0, clend_common_1.uiToAmount)(finalCollateralDeltaUi, collateralBankData.mintDecimals);
|
|
3168
3266
|
// 2. Get a fresh 'ExactIn' quote for swapping that collateral amount.
|
|
3169
3267
|
const swapQuote = await activeSwapper.getQuote({
|
|
3170
|
-
payer:
|
|
3268
|
+
payer: user,
|
|
3171
3269
|
inputMint: collateralBankData.mint,
|
|
3172
3270
|
inputMintDecimals: collateralBankData.mintDecimals,
|
|
3173
3271
|
outputMint: debtBankData.mint,
|
|
@@ -3203,6 +3301,86 @@ class ClendClient {
|
|
|
3203
3301
|
];
|
|
3204
3302
|
return { ixns: finalInstructions, luts: swapLookupTables };
|
|
3205
3303
|
}
|
|
3304
|
+
async getAdjustLeverageHandoffIxns(clendGroup, clendAccount, user, handoffSigner, collateralMint, debtMint, targetLeverage, slippageBps, jitIxns = [], swapperOverride) {
|
|
3305
|
+
// 1. Calculate Params using existing logic
|
|
3306
|
+
// We pass the Handoff Signer as the user here just for param calculation context if needed,
|
|
3307
|
+
// though getAdjustLeverageParams mainly checks on-chain state.
|
|
3308
|
+
const params = await this.getAdjustLeverageParams(clendGroup, clendAccount, collateralMint, debtMint, targetLeverage, slippageBps);
|
|
3309
|
+
utils_1.logger.debug("AdjustLeverageParams", params);
|
|
3310
|
+
const { debtBankData, collateralBankData, isIncrease, finalDebtDeltaUi, finalCollateralDeltaUi, } = params;
|
|
3311
|
+
// 2. Setup Transaction (User Signed)
|
|
3312
|
+
// Just transfer authority to the Handoff Signer
|
|
3313
|
+
const transferAuthIx = await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, user, handoffSigner);
|
|
3314
|
+
const setupIxns = [transferAuthIx];
|
|
3315
|
+
// 3. Execution Transaction (Handoff Signed)
|
|
3316
|
+
const execIxns = [];
|
|
3317
|
+
// A. Inject JIT Instructions (Only for Increase Leverage)
|
|
3318
|
+
// JIT fetches liquidity *before* we borrow.
|
|
3319
|
+
if (isIncrease && jitIxns.length > 0) {
|
|
3320
|
+
execIxns.push(...jitIxns);
|
|
3321
|
+
}
|
|
3322
|
+
// B. Create Handoff ATAs
|
|
3323
|
+
// The Handoff signer needs ATAs to hold funds temporarily during the Swap/FlashLoan.
|
|
3324
|
+
//const debtTokenProgram = await getTokenProgramForMintFromRpc(
|
|
3325
|
+
// this.connection,
|
|
3326
|
+
// debtMint,
|
|
3327
|
+
//);
|
|
3328
|
+
//const collateralTokenProgram = await getTokenProgramForMintFromRpc(
|
|
3329
|
+
// this.connection,
|
|
3330
|
+
// collateralMint,
|
|
3331
|
+
//);
|
|
3332
|
+
//const handoffDebtAta = getAssociatedTokenAddressSync(
|
|
3333
|
+
// debtMint,
|
|
3334
|
+
// handoffSigner,
|
|
3335
|
+
// true,
|
|
3336
|
+
// debtTokenProgram,
|
|
3337
|
+
//);
|
|
3338
|
+
//const handoffCollateralAta = getAssociatedTokenAddressSync(
|
|
3339
|
+
// collateralMint,
|
|
3340
|
+
// handoffSigner,
|
|
3341
|
+
// true,
|
|
3342
|
+
// collateralTokenProgram,
|
|
3343
|
+
//);
|
|
3344
|
+
//const createHandoffDebtAtaIx =
|
|
3345
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
3346
|
+
// handoffSigner,
|
|
3347
|
+
// handoffDebtAta,
|
|
3348
|
+
// handoffSigner,
|
|
3349
|
+
// debtMint,
|
|
3350
|
+
// debtTokenProgram,
|
|
3351
|
+
// );
|
|
3352
|
+
//const createHandoffCollateralAtaIx =
|
|
3353
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
3354
|
+
// handoffSigner,
|
|
3355
|
+
// handoffCollateralAta,
|
|
3356
|
+
// handoffSigner,
|
|
3357
|
+
// collateralMint,
|
|
3358
|
+
// collateralTokenProgram,
|
|
3359
|
+
// );
|
|
3360
|
+
//execIxns.push(createHandoffDebtAtaIx, createHandoffCollateralAtaIx);
|
|
3361
|
+
// C. Calculate Flash Loan Index Offset
|
|
3362
|
+
// The inner logic (getAdjustLeverageIxns) needs to know exactly where the Flash Loan instruction starts
|
|
3363
|
+
// relative to the *entire* bundle to calculate the EndFlashLoan index correctly.
|
|
3364
|
+
// Preamble: JitoTip(1) + ComputeLimit(1) + ComputePrice(1) = 3
|
|
3365
|
+
// Local Preamble: JIT Instructions + 2 ATA Creations
|
|
3366
|
+
const callerPreamble = 1;
|
|
3367
|
+
const additionalIxnCount = callerPreamble + jitIxns.length; // +2 for the ATAs added above
|
|
3368
|
+
// D. Generate Inner Logic
|
|
3369
|
+
// We pass `handoffSigner` as the `user` so the inner logic builds instructions utilizing the Handoff's ATAs/Auth.
|
|
3370
|
+
const { ixns: leverageIxns, luts } = await this.getAdjustLeverageIxns(clendGroup, clendAccount, handoffSigner, // <--- Handoff is the actor here
|
|
3371
|
+
debtBankData, collateralBankData, isIncrease, finalDebtDeltaUi, finalCollateralDeltaUi, slippageBps, additionalIxnCount, // <--- Pass the calculated offset
|
|
3372
|
+
swapperOverride);
|
|
3373
|
+
execIxns.push(...leverageIxns);
|
|
3374
|
+
// E. Return Authority to User
|
|
3375
|
+
// This must happen after the flash loan is closed (which is inside leverageIxns)
|
|
3376
|
+
const returnAuthIx = await this.instructions.setNewAccountAuthority(clendGroup, clendAccount, handoffSigner, user);
|
|
3377
|
+
execIxns.push(returnAuthIx);
|
|
3378
|
+
return {
|
|
3379
|
+
setupIxns,
|
|
3380
|
+
execIxns,
|
|
3381
|
+
luts,
|
|
3382
|
+
};
|
|
3383
|
+
}
|
|
3206
3384
|
async handleBankruptcy(clendAccount, bank) {
|
|
3207
3385
|
const bankState = await this.getBank(bank);
|
|
3208
3386
|
if (!bankState) {
|
|
@@ -3225,9 +3403,19 @@ class ClendClient {
|
|
|
3225
3403
|
if (!clendAccountState) {
|
|
3226
3404
|
throw new Error(`Clend account not found: ${clendAccount.toString()}`);
|
|
3227
3405
|
}
|
|
3406
|
+
console.log("Clend account state: ", clendAccountState);
|
|
3228
3407
|
const ix = await this.instructions.setNewAccountAuthority(clendAccountState.group, clendAccount, clendAccountState.authority, newAuthority);
|
|
3229
3408
|
return this.send([ix]);
|
|
3230
3409
|
}
|
|
3410
|
+
async takeoverAccount(clendAccount, newAuthority) {
|
|
3411
|
+
const clendAccountState = await this.getClendAccount(clendAccount);
|
|
3412
|
+
if (!clendAccountState) {
|
|
3413
|
+
throw new Error(`Clend account not found: ${clendAccount.toString()}`);
|
|
3414
|
+
}
|
|
3415
|
+
const groupState = await this.getClendGroup(clendAccountState.group);
|
|
3416
|
+
const ix = await this.instructions.takeoverAccount(clendAccountState.group, groupState.admin, clendAccount, newAuthority);
|
|
3417
|
+
return this.send([ix]);
|
|
3418
|
+
}
|
|
3231
3419
|
async getAccountsForAuthority(group, authority) {
|
|
3232
3420
|
const accounts = await this.instructions.program.account.clendAccount.all([
|
|
3233
3421
|
{
|