Skip to content

Conversation

@NgoKimPhu
Copy link
Member

@NgoKimPhu NgoKimPhu commented Jan 14, 2026

PR Type

Enhancement


Description

  • Add Uniswap V4 Arrakis hook integration with fee tracking

  • Implement dynamic fee handling in pool simulator

  • Register Arrakis hook types for msgpack serialization

  • Clean up import ordering across multiple files


Diagram Walkthrough

flowchart LR
  A["Arrakis Hook Package"] -->|"Registers Hook Factory"| B["Uniswap V4 Pool Simulator"]
  A -->|"Tracks Fees"| C["Fee Data RPC"]
  B -->|"Validates Dynamic Fees"| D["BeforeSwap Handler"]
  E["Msgpack Registration"] -->|"Serializes"| A
  F["Exchange Constants"] -->|"Defines"| A
Loading

File Walkthrough

Relevant files
Enhancement
3 files
hook.go
Arrakis hook implementation with fee tracking                       
+67/-0   
abi.go
ABI initialization for Arrakis hook contract                         
+26/-0   
embed.go
Embedded ABI JSON file reference                                                 
+6/-0     
Configuration changes
4 files
constant.go
Hook address constants for Arrakis                                             
+11/-0   
ArrakisPrivateHook.json
Arrakis hook contract ABI definition                                         
+31/-0   
register_pool_types.gen.go
Register Arrakis hook for msgpack serialization                   
+2/-0     
exchange.go
Add Arrakis exchange constant, remove Noice                           
+1/-1     
Bug fix
1 files
pool_simulator.go
Add dynamic fee validation in swap calculations                   
+4/-2     
Formatting
4 files
constant.go
Reorder imports for consistency                                                   
+2/-1     
types.go
Reorder imports for consistency                                                   
+2/-1     
types.go
Reorder imports for consistency                                                   
+2/-1     
integration_test.go
Reorder imports for consistency                                                   
+4/-3     

@NgoKimPhu NgoKimPhu merged commit a0296fb into main Jan 14, 2026
@NgoKimPhu NgoKimPhu deleted the ft/integrate_uniswap-v4-arrakis branch January 14, 2026 08:02
@qodo-code-review
Copy link
Contributor

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
Startup panic DoS

Description: The init() function panics on ABI parse failure (panic(err)), which can crash the entire
process at startup and become a denial-of-service if the embedded ABI bytes are ever
corrupted or mismatched to the parser expectations.
abi.go [11-25]

Referred Code
func init() {
	builder := []struct {
		ABI  *abi.ABI
		data []byte
	}{
		{&hookABI, hookABIJson},
	}

	for _, b := range builder {
		var err error
		*b.ABI, err = abi.JSON(bytes.NewReader(b.data))
		if err != nil {
			panic(err)
		}
	}
Deserialization attack surface

Description: Registering an additional concrete type
(&pkg_liquiditysource_uniswap_v4_hooks_arrakis.Hook{}) expands the set of types that can
be instantiated during msgpack deserialization, which can increase attack surface if
msgpack payloads are accepted from untrusted sources (e.g., type confusion/gadget-style
misuse depending on surrounding code).
register_pool_types.gen.go [127-336]

Referred Code
pkg_liquiditysource_uniswap_lo "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/lo"
pkg_liquiditysource_uniswap_v1 "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v1"
pkg_liquiditysource_uniswap_v2 "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v2"
pkg_liquiditysource_uniswap_v3 "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v3"
pkg_liquiditysource_uniswap_v4 "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4"
pkg_liquiditysource_uniswap_v4_hooks_aegis "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/aegis"
pkg_liquiditysource_uniswap_v4_hooks_angstrom "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/angstrom"
pkg_liquiditysource_uniswap_v4_hooks_arena "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/arena"
pkg_liquiditysource_uniswap_v4_hooks_arrakis "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/arrakis"
pkg_liquiditysource_uniswap_v4_hooks_bunniv2 "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/bunni-v2"
pkg_liquiditysource_uniswap_v4_hooks_clanker "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/clanker"
pkg_liquiditysource_uniswap_v4_hooks_cult "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/cult"
pkg_liquiditysource_uniswap_v4_hooks_deli "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/deli"
pkg_liquiditysource_uniswap_v4_hooks_doppler "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/doppler"
pkg_liquiditysource_uniswap_v4_hooks_flaunch "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/flaunch"
pkg_liquiditysource_uniswap_v4_hooks_idle "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/idle"
pkg_liquiditysource_uniswap_v4_hooks_nft_strategy "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/nft_strategy"
pkg_liquiditysource_uniswap_v4_hooks_renzo "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/renzo"
pkg_liquiditysource_uniswap_v4_hooks_zora "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/zora"
pkg_liquiditysource_usd0pp "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/usd0pp"
pkg_liquiditysource_valantisstex "github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/valantis-stex"


 ... (clipped 189 lines)
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

🔴
Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status:
Ignored JSON errors: The code silently ignores JSON unmarshal/marshal failures for param.HookExtra and the
returned extra payload, which can mask malformed inputs and lead to unexpected fee
behavior without actionable error context.

Referred Code
	var extra Extra
	if param.HookExtra != "" {
		_ = json.Unmarshal([]byte(param.HookExtra), &extra)
	}
	return &Hook{
		Hook:  &uniswapv4.BaseHook{Exchange: valueobject.ExchangeUniswapV4Arrakis},
		Extra: extra,
	}
}, HookAddresses...)

func (h *Hook) Track(ctx context.Context, param *uniswapv4.HookParam) (string, error) {
	var feesData FeesDataRPC
	if _, err := param.RpcClient.NewRequest().SetContext(ctx).AddCall(&ethrpc.Call{
		ABI:    hookABI,
		Target: hexutil.Encode(param.HookAddress[:]),
		Method: "getFeesData",
		Params: []any{common.HexToHash(param.Pool.Address)},
	}, []any{&feesData}).Call(); err != nil {
		return "", err
	}



 ... (clipped 5 lines)

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status:
Unvalidated external input: param.HookExtra (an external input) is parsed without validating or handling parse errors,
allowing malformed JSON to pass silently and potentially altering dynamic fee behavior
without detection.

Referred Code
var extra Extra
if param.HookExtra != "" {
	_ = json.Unmarshal([]byte(param.HookExtra), &extra)
}
return &Hook{

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status:
Missing audit logs: The new hook performs external RPC reads for fee tracking without any explicit audit
logging context (actor/request identifiers), which may be required depending on whether
these reads are classified as critical actions.

Referred Code
func (h *Hook) Track(ctx context.Context, param *uniswapv4.HookParam) (string, error) {
	var feesData FeesDataRPC
	if _, err := param.RpcClient.NewRequest().SetContext(ctx).AddCall(&ethrpc.Call{
		ABI:    hookABI,
		Target: hexutil.Encode(param.HookAddress[:]),
		Method: "getFeesData",
		Params: []any{common.HexToHash(param.Pool.Address)},
	}, []any{&feesData}).Call(); err != nil {
		return "", err
	}

Learn more about managing compliance generic rules or creating your own custom rules

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@qodo-code-review
Copy link
Contributor

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
Possible issue
Handle JSON unmarshalling error

Handle the error from json.Unmarshal in the hook factory. Since the function
cannot return an error, panic if unmarshalling fails to prevent silent errors
and incorrect behavior.

pkg/liquidity-source/uniswap/v4/hooks/arrakis/hook.go [32-41]

 var _ = uniswapv4.RegisterHooksFactory(func(param *uniswapv4.HookParam) uniswapv4.Hook {
 	var extra Extra
 	if param.HookExtra != "" {
-		_ = json.Unmarshal([]byte(param.HookExtra), &extra)
+		if err := json.Unmarshal([]byte(param.HookExtra), &extra); err != nil {
+			panic(err)
+		}
 	}
 	return &Hook{
 		Hook:  &uniswapv4.BaseHook{Exchange: valueobject.ExchangeUniswapV4Arrakis},
 		Extra: extra,
 	}
 }, HookAddresses...)
  • Apply / Chat
Suggestion importance[1-10]: 7

__

Why: The suggestion correctly identifies an unhandled error from json.Unmarshal and proposes a reasonable solution (panicking) given the function signature, which improves the robustness of the hook initialization.

Medium
General
Handle JSON marshalling error

Handle the error returned by json.Marshal in the Track function. Propagate the
error instead of ignoring it to prevent silent failures.

pkg/liquidity-source/uniswap/v4/hooks/arrakis/hook.go [43-59]

 func (h *Hook) Track(ctx context.Context, param *uniswapv4.HookParam) (string, error) {
 	var feesData FeesDataRPC
 	if _, err := param.RpcClient.NewRequest().SetContext(ctx).AddCall(&ethrpc.Call{
 		ABI:    hookABI,
 		Target: hexutil.Encode(param.HookAddress[:]),
 		Method: "getFeesData",
 		Params: []any{common.HexToHash(param.Pool.Address)},
 	}, []any{&feesData}).Call(); err != nil {
 		return "", err
 	}
 
-	extraBytes, _ := json.Marshal(Extra{FeesFrom: [2]uniswapv4.FeeAmount{
+	extraBytes, err := json.Marshal(Extra{FeesFrom: [2]uniswapv4.FeeAmount{
 		uniswapv4.FeeAmount(feesData.ZeroForOneFee),
 		uniswapv4.FeeAmount(feesData.OneForZeroFee),
 	}})
+	if err != nil {
+		return "", err
+	}
 	return string(extraBytes), nil
 }
  • Apply / Chat
Suggestion importance[1-10]: 6

__

Why: The suggestion correctly points out an ignored error from json.Marshal and proposes the standard practice of propagating it, which is a good code quality improvement.

Low
Simplify dynamic fee logic

Refactor the dynamic fee check by inverting the condition. This removes the
empty if block and places all fee validation logic within a single if
shared.IsDynamicFee(...) block for better clarity.

pkg/liquidity-source/uniswap/v4/pool_simulator.go [165-171]

-if !shared.IsDynamicFee(p.staticExtra.Fee) { // ignore if not dynamic fee
-} else if beforeSwapResult.SwapFee >= FeeMax {
-	return nil, ErrInvalidFee
-} else if beforeSwapResult.SwapFee > 0 && beforeSwapResult.SwapFee != p.V3Pool.Fee {
-	cloned := *poolSim
-	...
+if shared.IsDynamicFee(p.staticExtra.Fee) {
+	if beforeSwapResult.SwapFee >= FeeMax {
+		return nil, ErrInvalidFee
+	}
+	if beforeSwapResult.SwapFee > 0 && beforeSwapResult.SwapFee != p.V3Pool.Fee {
+		cloned := *poolSim
+		...
+	}
 }

[To ensure code accuracy, apply this suggestion manually]

Suggestion importance[1-10]: 5

__

Why: This suggestion correctly identifies an awkward if-else structure and proposes a refactoring that improves code readability and maintainability by grouping related logic.

Low
Use .Hex() for address target

Use the Hex() method for common.Address to get the hex string representation for
the RPC call's Target, improving code clarity.

pkg/liquidity-source/uniswap/v4/hooks/arrakis/hook.go [45-52]

 if _, err := param.RpcClient.NewRequest().SetContext(ctx).AddCall(&ethrpc.Call{
 	ABI:    hookABI,
-	Target: hexutil.Encode(param.HookAddress[:]),
+	Target: param.HookAddress.Hex(),
 	Method: "getFeesData",
 	Params: []any{common.HexToHash(param.Pool.Address)},
 }, []any{&feesData}).Call(); err != nil {
 	return "", err
 }
  • Apply / Chat
Suggestion importance[1-10]: 4

__

Why: The suggestion improves code readability and idiomatic usage by replacing hexutil.Encode(param.HookAddress[:]) with the more direct param.HookAddress.Hex().

Low
  • More

@kyber-ci-bot
Copy link

Test coverage changes:
Package Before After Diff
github.com/KyberNetwork/kyberswap-dex-lib/pkg/entity 18.50% 18.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/aave-v3 3.90% 3.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/algebra/integral 36.50% 36.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/algebra/v1 13.30% 13.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ambient 17.60% 17.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/angle-transmuter 38.10% 38.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/arbera/den 41.10% 41.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/arbera/zap 44.60% 44.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/arena-bc 64.10% 64.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v1 42.90% 42.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v2/composable-stable 46.30% 46.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v2/math 36.90% 36.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v2/stable 26.80% 26.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v2/weighted 26.50% 26.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/eclp 27.20% 27.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/math 29.90% 29.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/quant-amm 34.10% 34.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/reclamm 27.10% 27.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/stable 20.20% 20.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/vault 13.90% 13.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/balancer/v3/weighted 25.60% 25.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/bancor-v21 31.60% 31.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/bancor-v3 52.00% 52.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/bedrock/unibtc 22.20% 22.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/bedrock/unieth 18.30% 18.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/beets-ss 26.10% 26.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/brownfi 16.00% 16.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/brownfi/v2 36.50% 36.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/clear 20.00% 20.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/clipper 49.40% 49.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/compound/v2 4.20% 4.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/compound/v3 3.50% 3.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/llamma 70.10% 70.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/plain 60.30% 60.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/stable-meta-ng 56.10% 56.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/stable-ng 39.90% 39.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/tricrypto-ng 62.00% 62.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/curve/twocrypto-ng 64.90% 64.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dai-usds 21.90% 21.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/deltaswap-v1 46.40% 46.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dexalot 44.30% 44.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/classical 57.80% 57.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/dpp 37.80% 37.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/dsp 40.30% 40.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/dvm 47.50% 47.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/libv1 73.30% 73.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/dodo/libv2 38.40% 38.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ekubo 16.90% 16.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ekubo/math 74.10% 74.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ekubo/math/twamm 97.20% 97.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ekubo/pools 48.00% 48.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/erc4626 45.00% 45.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ethena/susde 27.90% 27.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ether-vista 2.30% 2.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/etherfi/ebtc 36.40% 36.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/etherfi/eeth 16.00% 16.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/etherfi/vampire 27.10% 27.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/etherfi/weeth 12.10% 12.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/euler-swap/v1 50.30% 50.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/euler-swap/v2 1.00% 1.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/fluid/dex-lite 66.20% 66.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/fluid/dex-t1 71.50% 71.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/fluid/dex-v2 2.70% 2.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/fluid/vault-t1 17.90% 17.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/frax/sfrxeth 18.00% 18.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/frax/sfrxeth-convertor 37.50% 37.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/generic-arm 24.10% 24.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/generic-simple-rate 32.90% 32.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/gsm-4626 48.70% 48.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/gyroscope/2clp 42.50% 42.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/gyroscope/3clp 43.40% 43.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/gyroscope/eclp 58.90% 58.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/gyroscope/math 2.50% 2.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/hashflow-v3 63.90% 63.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/honey 5.20% 5.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/hyeth 38.80% 38.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/infinifi/gateway 52.00% 52.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/integral 37.40% 37.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/kelp/rseth 11.70% 11.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/kelp/rseth-l2 16.30% 16.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/kuru-ob 3.10% 3.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/lgl-clob 48.40% 48.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/lo1inch 64.20% 64.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/lo1inch/helper 66.90% 66.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/maker/savingsdai 30.50% 30.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/maker/sky-psm 46.60% 46.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/mantle/meth 28.10% 28.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/maverick/v1 66.50% 66.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/maverick/v2 48.60% 48.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/midas 50.00% 50.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/mkr-sky 29.20% 29.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/nabla 36.30% 36.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/nad-fun 3.70% 3.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/nomiswap/nomiswapstable 83.10% 83.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ondo-usdy 23.90% 23.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/order-book 83.20% 83.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/overnight-usdp 29.20% 29.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/pancake/infinity/bin 36.30% 36.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/pancake/infinity/cl 16.20% 16.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/pancake/v3 14.80% 14.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/puffer/pufeth 22.80% 22.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/renzo/ezeth 30.10% 30.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/ringswap 10.60% 10.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/rocketpool/reth 25.50% 25.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/smardex 47.70% 47.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/solidly-v2 32.70% 32.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/staderethx 28.00% 28.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/swell/rsweth 6.20% 6.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/swell/sweth 6.20% 6.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/syncswapv2/aqua 24.00% 24.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/syncswapv2/classic 41.10% 41.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/syncswapv2/stable 48.60% 48.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/tessera 3.70% 3.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/lo 51.20% 51.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v1 12.70% 12.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v2 8.40% 8.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v3 14.70% 14.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4 10.90% 10.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/bunni-v2 48.90% 48.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/bunni-v2/hooklet 16.10% 16.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/clanker 17.10% 17.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/deli 89.40% 89.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/flaunch 75.00% 75.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/idle 100.00% 100.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/uniswap/v4/hooks/renzo 62.50% 62.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/usd0pp 27.30% 27.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velocore-v2/cpmm 54.50% 54.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velocore-v2/math 16.80% 16.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velocore-v2/math/sd59x18 51.90% 51.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velocore-v2/wombat-stable 30.60% 30.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velodrome-v1 32.80% 32.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/velodrome-v2 40.60% 40.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/virtual-fun 39.20% 39.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/wildcat 16.30% 16.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/woofi-v2 52.30% 52.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/liquidity-source/woofi-v21 55.60% 55.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/camelot 40.30% 40.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/aave 66.20% 66.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/base 43.50% 43.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/compound 75.40% 75.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/meta 85.50% 85.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/plain-oracle 38.50% 38.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/tricrypto 74.00% 74.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/curve/two 29.20% 29.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/dmm 30.80% 30.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/equalizer 29.00% 29.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/fraxswap 25.20% 25.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/fulcrom 31.10% 31.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/fxdx 20.70% 20.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/gmx 27.70% 27.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/gmx-glp 26.10% 26.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/iziswap 25.70% 25.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/iziswap/swap 64.20% 64.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/kokonut-crypto 55.60% 55.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/lido 22.80% 22.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/lido-steth 33.30% 33.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/limitorder 51.30% 51.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/liquiditybookv20 25.90% 25.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/liquiditybookv21 38.80% 38.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/madmex 24.90% 24.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/makerpsm 38.40% 38.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/mantisswap 53.10% 53.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/metavault 28.10% 28.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/nuriv2 13.30% 13.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/platypus 26.00% 26.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/pol-matic 19.20% 19.20% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/pool 26.70% 26.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/quickperps 23.70% 23.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/ramsesv2 15.70% 15.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/saddle 63.80% 63.80% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/slipstream 17.60% 17.60% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/solidly-v3 20.70% 20.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/swapbased-perp 31.10% 31.10% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/syncswap/syncswapclassic 67.40% 67.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/syncswap/syncswapstable 81.40% 81.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/synthetix 37.90% 37.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/uniswap 16.50% 16.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/usdfi 45.00% 45.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/velocimeter 46.90% 46.90% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/vooi 37.30% 37.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/wombat/wombatlsd 55.30% 55.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/source/wombat/wombatmain 56.50% 56.50% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/util 3.40% 3.40% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/util/abi 80.00% 80.00% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/util/big256 21.70% 21.70% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/util/bignumber 13.30% 13.30% ✔️
github.com/KyberNetwork/kyberswap-dex-lib/pkg/util/graphql 56.20% 56.20% ✔️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants