diff --git a/.changeset/khaki-plants-leave.md b/.changeset/khaki-plants-leave.md new file mode 100644 index 000000000..75d122d46 --- /dev/null +++ b/.changeset/khaki-plants-leave.md @@ -0,0 +1,5 @@ +--- +'backend': patch +--- + +SOR - Remove graphTraversalConfig from inputs diff --git a/modules/sor/sor.service.ts b/modules/sor/sor.service.ts index fdaa7b497..95426cf0e 100644 --- a/modules/sor/sor.service.ts +++ b/modules/sor/sor.service.ts @@ -17,6 +17,8 @@ import { import { PathWithAmount } from './lib/path'; import { getInputAmount, getOutputAmount } from './lib/utils'; +const DEFAULT_MAX_DEPTH = 4; + export class SorService { async getSorSwapPaths(args: QuerySorGetSwapPathsArgs): Promise { console.log('getSorSwaps args', JSON.stringify(args)); @@ -94,7 +96,7 @@ export class SorService { const swapKind = mapSwapKind(input.swapType); // retry with different max depth if no paths are found - let swapOptions = this.buildSwapOptions(input.graphTraversalConfig); + let swapOptions = this.buildSwapOptions(DEFAULT_MAX_DEPTH); let paths = await SOR.getPathsWithPools( tokenIn, tokenOut, @@ -107,10 +109,7 @@ export class SorService { ); if (!paths) { - swapOptions = this.buildSwapOptions({ - ...swapOptions.graphTraversalConfig, - maxNonBoostedPathDepth: swapOptions.graphTraversalConfig.maxNonBoostedPathDepth! + 1, - }); + swapOptions = this.buildSwapOptions(DEFAULT_MAX_DEPTH + 1); paths = await SOR.getPathsWithPools( tokenIn, tokenOut, @@ -140,13 +139,12 @@ export class SorService { } } - private buildSwapOptions(graphTraversalConfig?: GraphTraversalConfig): { + private buildSwapOptions(maxNonBoostedPathDepth: number): { graphTraversalConfig: GraphTraversalConfig; } { return { graphTraversalConfig: { - maxNonBoostedPathDepth: graphTraversalConfig?.maxNonBoostedPathDepth ?? 4, - ...graphTraversalConfig, + maxNonBoostedPathDepth, }, }; } diff --git a/modules/sor/types.ts b/modules/sor/types.ts index 2783d81bf..261db4e2a 100644 --- a/modules/sor/types.ts +++ b/modules/sor/types.ts @@ -12,7 +12,6 @@ export interface GetSwapPathsInput { protocolVersion: number; considerPoolsWithHooks: boolean; poolIds?: string[]; - graphTraversalConfig?: GraphTraversalConfig; callDataInput?: (GqlSwapCallDataInput & { wethIsEth: boolean }) | undefined; }