Skip to content

Commit 84c0abf

Browse files
committed
fix: update to contracts that accept PLB as call parameter
1 parent 1729d1c commit 84c0abf

File tree

7 files changed

+24
-12
lines changed

7 files changed

+24
-12
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"@gearbox-protocol/biome-config": "^1.0.0",
2929
"@gearbox-protocol/cli-utils": "^5.39.5",
3030
"@gearbox-protocol/liquidator-v2-contracts": "^2.4.0",
31-
"@gearbox-protocol/next-contracts": "npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.5",
31+
"@gearbox-protocol/next-contracts": "npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.6",
3232
"@gearbox-protocol/sdk": "8.12.3",
3333
"@gearbox-protocol/types": "^1.14.8",
3434
"@types/node": "^24.1.0",

src/services/liquidate/partial/AbstractPartialLiquidatorContract.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,9 @@ export abstract class AbstractPartialLiquidatorContract
304304
preview: PartialLiquidationPreview,
305305
): Promise<SimulateContractReturnType<unknown[], any, any>>;
306306

307+
/**
308+
* Returns partial liquidation bot, or deleverage bot
309+
*/
307310
protected abstract get partialLiquidationBot(): Address;
308311

309312
public get envVariables(): Record<string, string> {

src/services/liquidate/partial/v310/AAVELiquidatorV310Contract.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,8 @@ export class AAVELiquidatorV310Contract extends PartialLiquidatorV310Contract {
104104
const { address } = await this.deployer.ensureExists({
105105
abi: aaveUnwinderAbi,
106106
bytecode: AaveUnwinder_bytecode,
107-
// constructor(address _owner, address _plb, address _aavePool, address _aaveFLTaker
108-
args: [this.owner, this.partialLiquidationBot, this.#aavePool, flTaker],
107+
// constructor(address _owner, address _aavePool, address _aaveFLTaker)
108+
args: [this.owner, this.#aavePool, flTaker],
109109
});
110110
this.logger.debug(`AaveUnwinder address: ${address}`);
111111
return address;

src/services/liquidate/partial/v310/GHOLiquidatorV310Contract.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,9 @@ export class GHOLiquidatorV310Contract extends PartialLiquidatorV310Contract {
135135
const { address } = await this.deployer.ensureExists({
136136
abi: ghoUnwinderAbi,
137137
bytecode: GhoUnwinder_bytecode,
138-
// constructor(address _owner, address _plb, address _ghoFlashMinter, address _ghoFMTaker, address _gho)
138+
// constructor(address _owner, address _ghoFlashMinter, address _ghoFMTaker, address _gho)
139139
args: [
140140
this.owner,
141-
this.partialLiquidationBot,
142141
this.#flashMinter,
143142
ghoFMTaker,
144143
this.sdk.tokensMeta.mustFindBySymbol(this.#token).addr,

src/services/liquidate/partial/v310/PartialLiquidatorV310Contract.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import { Create2Deployer } from "@gearbox-protocol/sdk/dev";
1010
import {
1111
type Address,
1212
type Chain,
13+
encodeAbiParameters,
14+
type Hex,
1315
type PrivateKeyAccount,
1416
parseAbi,
1517
type SimulateContractReturnType,
@@ -123,6 +125,7 @@ export default abstract class PartialLiquidatorV310Contract extends AbstractPart
123125
priceUpdates,
124126
BigInt(this.config.slippage),
125127
4n, // TODO: splits
128+
this.extraData,
126129
],
127130
gas: 550_000_000n,
128131
});
@@ -147,6 +150,7 @@ export default abstract class PartialLiquidatorV310Contract extends AbstractPart
147150
preview.flashLoanAmount,
148151
preview.priceUpdates,
149152
preview.calls,
153+
this.extraData,
150154
],
151155
});
152156
}
@@ -159,4 +163,10 @@ export default abstract class PartialLiquidatorV310Contract extends AbstractPart
159163
"partial liquidation bot is only available in deleverage mode",
160164
);
161165
}
166+
167+
protected get extraData(): Hex {
168+
return this.config.liquidationMode === "deleverage"
169+
? encodeAbiParameters([{ type: "address" }], [this.partialLiquidationBot])
170+
: "0x0";
171+
}
162172
}

src/services/liquidate/partial/v310/SiloLiquidatorV310Contract.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,8 @@ export class SiloLiquidatorV310Contract extends PartialLiquidatorV310Contract {
133133
const { address } = await this.deployer.ensureExists({
134134
abi: siloUnwinderAbi,
135135
bytecode: SiloUnwinder_bytecode,
136-
// constructor(address _owner, address _plb, address _siloFLTaker)
137-
args: [this.owner, this.partialLiquidationBot, this.siloFLTaker],
136+
// constructor(address _owner, address _siloFLTaker)
137+
args: [this.owner, this.siloFLTaker],
138138
});
139139
this.logger.debug(`SiloUnwinder address: ${address}`);
140140
return address;

yarn.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1762,7 +1762,7 @@ __metadata:
17621762
"@gearbox-protocol/biome-config": "npm:^1.0.0"
17631763
"@gearbox-protocol/cli-utils": "npm:^5.39.5"
17641764
"@gearbox-protocol/liquidator-v2-contracts": "npm:^2.4.0"
1765-
"@gearbox-protocol/next-contracts": "npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.5"
1765+
"@gearbox-protocol/next-contracts": "npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.6"
17661766
"@gearbox-protocol/sdk": "npm:8.12.3"
17671767
"@gearbox-protocol/types": "npm:^1.14.8"
17681768
"@types/node": "npm:^24.1.0"
@@ -1789,10 +1789,10 @@ __metadata:
17891789
languageName: unknown
17901790
linkType: soft
17911791

1792-
"@gearbox-protocol/next-contracts@npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.5":
1793-
version: 2.5.0-next.5
1794-
resolution: "@gearbox-protocol/liquidator-v2-contracts@npm:2.5.0-next.5"
1795-
checksum: 10c0/536ea82e0e64ceb5cd8058a246403382adee0c39e63535c54b108c17ea9730300af233b37b76cc7c89066de197560bc326255af1f8b2d3451d784866118161e8
1792+
"@gearbox-protocol/next-contracts@npm:@gearbox-protocol/liquidator-v2-contracts@2.5.0-next.6":
1793+
version: 2.5.0-next.6
1794+
resolution: "@gearbox-protocol/liquidator-v2-contracts@npm:2.5.0-next.6"
1795+
checksum: 10c0/c1a1b5e6733cd9c6b4eb9f2a2476de5e5eabdfdf43493480b3f528a4fe1b2010cac288ab6c5985ee42a915c03b9edfd614e27679940ee10eca013215fc7f1813
17961796
languageName: node
17971797
linkType: hard
17981798

0 commit comments

Comments
 (0)