Files
mev-beta/tools/math-audit/vectors/default.json
Krypto Kajun 850223a953 fix(multicall): resolve critical multicall parsing corruption issues
- Added comprehensive bounds checking to prevent buffer overruns in multicall parsing
- Implemented graduated validation system (Strict/Moderate/Permissive) to reduce false positives
- Added LRU caching system for address validation with 10-minute TTL
- Enhanced ABI decoder with missing Universal Router and Arbitrum-specific DEX signatures
- Fixed duplicate function declarations and import conflicts across multiple files
- Added error recovery mechanisms with multiple fallback strategies
- Updated tests to handle new validation behavior for suspicious addresses
- Fixed parser test expectations for improved validation system
- Applied gofmt formatting fixes to ensure code style compliance
- Fixed mutex copying issues in monitoring package by introducing MetricsSnapshot
- Resolved critical security vulnerabilities in heuristic address extraction
- Progress: Updated TODO audit from 10% to 35% complete

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-17 00:12:55 -05:00

206 lines
6.5 KiB
JSON

{
"version": "1.0.0",
"timestamp": "2024-10-08T00:00:00Z",
"description": "Default test vectors for MEV Bot math validation",
"exchanges": {
"uniswap_v2": {
"exchange_type": "uniswap_v2",
"pricing_tests": [
{
"test_name": "ETH_USDC_Standard_Pool",
"description": "Standard ETH/USDC pool price calculation",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"expected_price": "2000000000000000000000",
"tolerance": 1.0
},
{
"test_name": "WBTC_ETH_High_Value",
"description": "High value WBTC/ETH pool",
"reserve_0": "50000000000",
"reserve_1": "10000000000000000000000",
"expected_price": "20000000000000000000",
"tolerance": 1.0
},
{
"test_name": "Small_Pool_Precision",
"description": "Small liquidity pool precision test",
"reserve_0": "1000000000000000000",
"reserve_1": "2000000000",
"expected_price": "2000000000000000000000",
"tolerance": 5.0
}
],
"amount_tests": [
{
"test_name": "ETH_to_USDC_Small_Swap",
"description": "Small ETH to USDC swap",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"amount_in": "1000000000000000000",
"token_in": "0",
"fee": "3000",
"expected_amount_out": "1994006985000",
"tolerance": 5.0
},
{
"test_name": "USDC_to_ETH_Large_Swap",
"description": "Large USDC to ETH swap",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"amount_in": "10000000000",
"token_in": "1",
"fee": "3000",
"expected_amount_out": "4975124378109453",
"tolerance": 10.0
}
],
"price_impact_tests": [
{
"test_name": "Large_ETH_Swap_Impact",
"description": "Price impact of large ETH swap",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"swap_amount": "100000000000000000000",
"token_in": "0",
"expected_price_impact": "9.09",
"tolerance": 10.0
}
]
},
"uniswap_v3": {
"exchange_type": "uniswap_v3",
"pricing_tests": [
{
"test_name": "ETH_USDC_V3_Basic",
"description": "ETH/USDC V3 price from sqrtPriceX96",
"sqrt_price_x96": "3543191142285914327220224",
"expected_price": "2000000000000000000000",
"tolerance": 1.0
},
{
"test_name": "WBTC_ETH_V3_Tick",
"description": "WBTC/ETH V3 price from tick",
"tick": 92233,
"expected_price": "20000000000000000000",
"tolerance": 2.0
}
],
"amount_tests": [
{
"test_name": "V3_Concentrated_Liquidity_Swap",
"description": "Swap within concentrated liquidity range",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"amount_in": "1000000000000000000",
"token_in": "0",
"fee": "500",
"expected_amount_out": "1999000000000",
"tolerance": 2.0
}
],
"price_impact_tests": [
{
"test_name": "V3_Cross_Tick_Impact",
"description": "Price impact crossing multiple ticks",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"swap_amount": "50000000000000000000",
"token_in": "0",
"expected_price_impact": "4.76",
"tolerance": 20.0
}
]
},
"curve": {
"exchange_type": "curve",
"pricing_tests": [
{
"test_name": "Stable_USDC_USDT_Pool",
"description": "Stable swap USDC/USDT pricing",
"reserve_0": "1000000000000",
"reserve_1": "1000000000000",
"expected_price": "1000000000000000000",
"tolerance": 0.5
},
{
"test_name": "Imbalanced_Stable_Pool",
"description": "Imbalanced stable pool pricing",
"reserve_0": "2000000000000",
"reserve_1": "1000000000000",
"expected_price": "980000000000000000",
"tolerance": 5.0
}
],
"amount_tests": [
{
"test_name": "Stable_Swap_Low_Impact",
"description": "Low price impact stable swap",
"reserve_0": "1000000000000",
"reserve_1": "1000000000000",
"amount_in": "1000000000",
"token_in": "0",
"expected_amount_out": "999000000",
"tolerance": 1.0
}
],
"price_impact_tests": [
{
"test_name": "Large_Stable_Swap_Impact",
"description": "Large swap in stable pool",
"reserve_0": "1000000000000",
"reserve_1": "1000000000000",
"swap_amount": "100000000000",
"token_in": "0",
"expected_price_impact": "0.5",
"tolerance": 2.0
}
]
},
"balancer": {
"exchange_type": "balancer",
"pricing_tests": [
{
"test_name": "Weighted_80_20_ETH_USDC",
"description": "80/20 weighted pool ETH/USDC",
"reserve_0": "800000000000000000000",
"reserve_1": "400000000000",
"expected_price": "2500000000000000000000",
"tolerance": 2.0
},
{
"test_name": "Weighted_50_50_Pool",
"description": "50/50 weighted pool",
"reserve_0": "1000000000000000000000",
"reserve_1": "2000000000000",
"expected_price": "2000000000000000000000",
"tolerance": 1.0
}
],
"amount_tests": [
{
"test_name": "Weighted_Pool_Small_Swap",
"description": "Small swap in weighted pool",
"reserve_0": "800000000000000000000",
"reserve_1": "400000000000",
"amount_in": "1000000000000000000",
"token_in": "0",
"expected_amount_out": "2475000000000",
"tolerance": 5.0
}
],
"price_impact_tests": [
{
"test_name": "Weighted_Pool_Price_Impact",
"description": "Price impact in weighted pool",
"reserve_0": "800000000000000000000",
"reserve_1": "400000000000",
"swap_amount": "80000000000000000000",
"token_in": "0",
"expected_price_impact": "12.5",
"tolerance": 15.0
}
]
}
}
}