Skip to content

Commit 7e73d41

Browse files
committed
fix: allow optional liquidation mode, default to full
1 parent b509777 commit 7e73d41

File tree

4 files changed

+7
-7
lines changed

4 files changed

+7
-7
lines changed

src/config/common.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ export const CommonSchema = z.object({
193193
*/
194194
liquidationMode: z
195195
.enum(["full", "partial", "batch", "deleverage"])
196-
.default("full")
196+
.optional()
197197
.register(zommandRegistry, {
198198
flags: "--liquidation-mode <mode>",
199199
description: "Liquidator mode (full/partial/batch/deleverage)",

src/config/full-liquidator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export const FullLiquidatorSchema = z.object({
77
/**
88
* Liquidator mode
99
*/
10-
liquidationMode: z.literal("full").register(zommandRegistry, {
10+
liquidationMode: z.literal("full").optional().register(zommandRegistry, {
1111
flags: "--liquidation-mode <mode>",
1212
description: "Liquidator mode (full/partial/batch/deleverage)",
1313
env: "LIQUIDATION_MODE",

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ const program = new Zommand("liquidator-v2", {
4949
const msg = [
5050
`Launching liquidator v${version} in`,
5151
schema.optimistic ? "optimistic" : "",
52-
schema.liquidationMode,
52+
schema.liquidationMode ?? "full",
5353
"mode",
5454
]
5555
.filter(Boolean)

src/services/liquidate/factory.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@ export class LiquidatorFactory implements IFactory<ILiquidatorService, []> {
1313
config!: Config;
1414

1515
produce(): ILiquidatorService {
16-
switch (this.config.liquidationMode) {
16+
const liquidationMode = this.config.liquidationMode ?? "full";
17+
switch (liquidationMode) {
1718
case "full":
1819
return new SingularFullLiquidator();
1920
case "partial":
21+
case "deleverage":
2022
return new SingularPartialLiquidator();
2123
case "batch":
2224
return new BatchLiquidator();
2325
default:
24-
throw new Error(
25-
`Invalid liquidation mode: ${this.config.liquidationMode}`,
26-
);
26+
throw new Error(`Invalid liquidation mode: ${liquidationMode}`);
2727
}
2828
}
2929
}

0 commit comments

Comments
 (0)