Skip to content

Commit

Permalink
🔮 Remove Pyth Oracle Query
Browse files Browse the repository at this point in the history
  • Loading branch information
JaredBorders authored Dec 14, 2023
2 parents e9dc3e8 + a4296da commit 2227ddb
Show file tree
Hide file tree
Showing 24 changed files with 630 additions and 810 deletions.
156 changes: 79 additions & 77 deletions .gas-snapshot
Original file line number Diff line number Diff line change
@@ -1,103 +1,105 @@
AccountDelegate:test_isAccountDelegate_account_doesnt_exist() (gas: 26492)
AccountDelegate:test_isAccountDelegate_false() (gas: 391973)
AccountDelegate:test_isAccountDelegate_false() (gas: 391995)
AccountDelegate:test_isAccountDelegate_true() (gas: 389942)
AccountDelegate:test_isAccountDelegate_zero_address_caller() (gas: 23137)
AccountOwner:test_isAccountOwner_account_doesnt_exist() (gas: 25044)
AccountOwner:test_isAccountOwner_false() (gas: 229869)
AccountOwner:test_isAccountOwner_true() (gas: 229792)
AccountOwner:test_isAccountOwner_zero_address_caller() (gas: 10808)
Aggregate:test_aggregate_EIP7412Mock(bytes) (runs: 256, μ: 46959, ~: 46854)
Aggregate:test_aggregate_EIP7412MockRefund(bytes) (runs: 256, μ: 53003, ~: 52900)
AccountDelegate:test_isAccountDelegate_zero_address_caller() (gas: 23159)
AccountOwner:test_isAccountOwner_account_doesnt_exist() (gas: 25088)
AccountOwner:test_isAccountOwner_false() (gas: 229890)
AccountOwner:test_isAccountOwner_true() (gas: 229880)
AccountOwner:test_isAccountOwner_zero_address_caller() (gas: 10829)
Aggregate:test_aggregate_EIP7412Mock(bytes) (runs: 256, μ: 46915, ~: 46810)
Aggregate:test_aggregate_EIP7412MockRefund(bytes) (runs: 256, μ: 53026, ~: 52923)
Aggregate:test_aggregate_EIP7412MockRevert(bytes) (runs: 256, μ: 46046, ~: 45943)
Aggregate:test_aggregate_EIP7412Mock_fail(bytes) (runs: 256, μ: 25958, ~: 25855)
Aggregate:test_aggregate_EIP7412Mock_fail(bytes) (runs: 256, μ: 25935, ~: 25832)
Aggregate:test_aggregate_EIP7412_multiple(bytes) (runs: 256, μ: 33894, ~: 33786)
Aggregate:test_aggregate_MismatchedValue_multiple() (gas: 52945)
Aggregate:test_aggregate_MismatchedValue_single() (gas: 32753)
Aggregate:test_aggregate_TargetNotTrusted() (gas: 17792)
Aggregate:test_aggregate_MismatchedValue_multiple() (gas: 52923)
Aggregate:test_aggregate_MismatchedValue_single() (gas: 32775)
Aggregate:test_aggregate_TargetNotTrusted() (gas: 17834)
Aggregate:test_aggregate_empty() (gas: 6605)
Aggregate:test_aggregate_multiple() (gas: 51443)
Aggregate:test_aggregate_refund() (gas: 38977)
Aggregate:test_aggregate_multiple() (gas: 51400)
Aggregate:test_aggregate_refund() (gas: 38955)
Aggregate:test_aggregate_result() (gas: 55683)
Aggregate:test_aggregate_single() (gas: 15208)
Aggregate:test_aggregate_value_multiple() (gas: 51872)
Aggregate:test_aggregate_value_single(uint256) (runs: 256, μ: 24850, ~: 29208)
CanExecute:test_canExecute_false_insufficent_account_credit() (gas: 414843)
CanExecute:test_canExecute_false_invalid_signature() (gas: 446777)
CanExecute:test_canExecute_false_invalid_signer() (gas: 442066)
CanExecute:test_canExecute_false_maxExecutorFee_exceeded() (gas: 397556)
CanExecute:test_canExecute_false_nonce_used() (gas: 827190)
CanExecute:test_canExecute_false_trusted_executor() (gas: 439522)
CanExecute:test_canExecute_true() (gas: 439161)
CommitOrder:test_commitOrder() (gas: 383122)
CommitOrder:test_commitOrder_insufficient_collateral() (gas: 441342)
CommitOrder:test_commitOrder_invalid_market() (gas: 38479)
Aggregate:test_aggregate_value_multiple() (gas: 51915)
Aggregate:test_aggregate_value_single(uint256) (runs: 256, μ: 24828, ~: 29186)
CanExecute:test_canExecute_false_insufficent_account_credit() (gas: 414818)
CanExecute:test_canExecute_false_invalid_signature() (gas: 446729)
CanExecute:test_canExecute_false_invalid_signer() (gas: 442013)
CanExecute:test_canExecute_false_maxExecutorFee_exceeded() (gas: 397486)
CanExecute:test_canExecute_false_nonce_used() (gas: 827209)
CanExecute:test_canExecute_false_require_verify_condition_not_met() (gas: 51501)
CanExecute:test_canExecute_false_trusted_executor() (gas: 439497)
CanExecute:test_canExecute_true() (gas: 439136)
CommitOrder:test_commitOrder() (gas: 383166)
CommitOrder:test_commitOrder_Unauthorized() (gas: 33210)
CommitOrder:test_commitOrder_insufficient_collateral() (gas: 441323)
CommitOrder:test_commitOrder_invalid_market() (gas: 38435)
Conditions:test_isMarketOpen() (gas: 26596)
Conditions:test_isOrderFeeBelow() (gas: 179759)
Conditions:test_isPositionSizeAbove() (gas: 18801)
Conditions:test_isPositionSizeBelow() (gas: 18740)
Conditions:test_isPriceAbove() (gas: 19098)
Conditions:test_isPriceBelow() (gas: 19070)
Conditions:test_isTimestampAfter() (gas: 7734)
Conditions:test_isTimestampBefore() (gas: 7602)
Context:test_context_trustedForwarder() (gas: 13120)
DeploymentTest:test_deploy() (gas: 3540958)
DeploymentTest:test_deploy_oracle_zero_address() (gas: 422896)
DeploymentTest:test_deploy_perps_market_proxy_zero_address() (gas: 422790)
DeploymentTest:test_deploy_spot_market_proxy_zero_address() (gas: 422813)
DeploymentTest:test_deploy_susd_proxy_zero_address() (gas: 422892)
Deposit:test_depositEth() (gas: 55221)
Deposit:test_depositEth_Account_Doesnt_Exist() (gas: 34292)
Deposit:test_depositEth_event() (gas: 56837)
Deposit:test_depositEth_fuzz(uint256,uint128) (runs: 256, μ: 36335, ~: 34844)
Conditions:test_isOrderFeeBelow() (gas: 179894)
Conditions:test_isPositionSizeAbove() (gas: 18827)
Conditions:test_isPositionSizeBelow() (gas: 18732)
Conditions:test_isPriceAbove() (gas: 196191)
Conditions:test_isPriceBelow() (gas: 195969)
Conditions:test_isTimestampAfter() (gas: 7645)
Conditions:test_isTimestampBefore() (gas: 7579)
Context:test_context_trustedForwarder() (gas: 13142)
DeploymentTest:test_deploy() (gas: 3485101)
DeploymentTest:test_deploy_perps_market_proxy_zero_address() (gas: 422450)
DeploymentTest:test_deploy_spot_market_proxy_zero_address() (gas: 422517)
DeploymentTest:test_deploy_susd_proxy_zero_address() (gas: 422508)
Deposit:test_depositEth() (gas: 55243)
Deposit:test_depositEth_Account_Doesnt_Exist() (gas: 34248)
Deposit:test_depositEth_event() (gas: 56770)
Deposit:test_depositEth_fuzz(uint256,uint128) (runs: 256, μ: 36454, ~: 34866)
DepositCollateral:test_depositCollateral() (gas: 258627)
DepositCollateral:test_depositCollateral_availableMargin() (gas: 266195)
DepositCollateral:test_depositCollateral_collateralAmount() (gas: 259203)
DepositCollateral:test_depositCollateral_insufficient_balance() (gas: 56143)
DepositCollateral:test_depositCollateral_totalCollateralValue() (gas: 263579)
EIP7412Test:test_fulfillOracleQuery(bytes) (runs: 256, μ: 153348, ~: 153344)
EIP7412Test:test_fulfillOracleQuery_refund(bytes) (runs: 256, μ: 161857, ~: 161853)
EIP7412Test:test_fulfillOracleQuery_revert(bytes) (runs: 256, μ: 154898, ~: 154894)
Execute:test_execute_CannotExecuteOrder_invalid_acceptablePrice() (gas: 331759)
Execute:test_execute_CannotExecuteOrder_invalid_settlementStrategyId() (gas: 97680)
Execute:test_execute_CannotExecuteOrder_too_leveraged() (gas: 362398)
Execute:test_execute_event() (gas: 434742)
Execute:test_execute_order_committed() (gas: 431256)
Fee:test_fee_exceeds_account_credit() (gas: 67949)
Fee:test_fee_exceeds_maxExecutorFee() (gas: 67484)
Fee:test_fee_imposed() (gas: 469443)
DepositCollateral:test_depositCollateral_insufficient_balance() (gas: 56208)
DepositCollateral:test_depositCollateral_totalCollateralValue() (gas: 263557)
EIP7412Test:test_fulfillOracleQuery(bytes) (runs: 256, μ: 153304, ~: 153300)
EIP7412Test:test_fulfillOracleQuery_refund(bytes) (runs: 256, μ: 161879, ~: 161875)
EIP7412Test:test_fulfillOracleQuery_revert(bytes) (runs: 256, μ: 154920, ~: 154916)
Execute:test_execute_CannotExecuteOrder_invalid_acceptablePrice() (gas: 331736)
Execute:test_execute_CannotExecuteOrder_invalid_settlementStrategyId() (gas: 97657)
Execute:test_execute_CannotExecuteOrder_too_leveraged() (gas: 362331)
Execute:test_execute_event() (gas: 434764)
Execute:test_execute_order_committed() (gas: 431211)
Fee:test_fee_exceeds_account_credit() (gas: 67862)
Fee:test_fee_exceeds_maxExecutorFee() (gas: 67464)
Fee:test_fee_imposed() (gas: 469423)
MathLibTest:test_abs128() (gas: 425)
MathLibTest:test_abs256() (gas: 480)
MathLibTest:test_fuzz_abs128(int128) (runs: 256, μ: 577, ~: 603)
MathLibTest:test_fuzz_abs256(int256) (runs: 256, μ: 472, ~: 458)
MathLibTest:test_isSameSign() (gas: 999)
NonceBitmapTest:test_fuzz_invalidateUnorderedNonces(uint256) (runs: 256, μ: 52898, ~: 52898)
NonceBitmapTest:test_hasUnorderedNonceBeenUsed() (gas: 54254)
NonceBitmapTest:test_invalidateUnorderedNonces() (gas: 77406)
NonceBitmapTest:test_invalidateUnorderedNonces_Only_Owner_Delegate() (gas: 190580)
NonceBitmapTest:test_invalidateUnorderedNonces_event() (gas: 53592)
ReduceOnly:test_reduce_only() (gas: 433034)
ReduceOnly:test_reduce_only_same_sign() (gas: 73963)
ReduceOnly:test_reduce_only_truncate_size_down() (gas: 433076)
ReduceOnly:test_reduce_only_truncate_size_up() (gas: 409825)
ReduceOnly:test_reduce_only_when_position_doesnt_exist() (gas: 163808)
NonceBitmapTest:test_fuzz_invalidateUnorderedNonces(uint256) (runs: 256, μ: 52942, ~: 52942)
NonceBitmapTest:test_hasUnorderedNonceBeenUsed() (gas: 54209)
NonceBitmapTest:test_invalidateUnorderedNonces() (gas: 77468)
NonceBitmapTest:test_invalidateUnorderedNonces_Only_Owner_Delegate() (gas: 190668)
NonceBitmapTest:test_invalidateUnorderedNonces_Unauthorized() (gas: 30803)
NonceBitmapTest:test_invalidateUnorderedNonces_event() (gas: 53604)
ReduceOnly:test_reduce_only() (gas: 432946)
ReduceOnly:test_reduce_only_same_sign() (gas: 73941)
ReduceOnly:test_reduce_only_truncate_size_down() (gas: 433054)
ReduceOnly:test_reduce_only_truncate_size_up() (gas: 409803)
ReduceOnly:test_reduce_only_when_position_doesnt_exist() (gas: 163763)
ReduceOnly:test_reduce_only_zero_size_delta() (gas: 164392)
VerifyConditions:test_max_condition_size_exceeded() (gas: 45101)
VerifyConditions:test_verifyConditions_InvalidConditionSelector() (gas: 14133)
VerifyConditions:test_verify_conditions_not_verified() (gas: 29707)
VerifyConditions:test_verify_conditions_verified() (gas: 135835)
VerifySignature:test_verifySignature(uint256) (runs: 256, μ: 24994, ~: 24994)
VerifySignature:test_verifySignature_false_private_key() (gas: 24970)
VerifySigner:test_verifySigner() (gas: 25917)
VerifyConditions:test_max_condition_size_exceeded() (gas: 45071)
VerifyConditions:test_verifyConditions_InvalidConditionSelector() (gas: 14081)
VerifyConditions:test_verify_conditions_not_verified() (gas: 129150)
VerifyConditions:test_verify_conditions_verified() (gas: 183733)
VerifySignature:test_verifySignature(uint256) (runs: 256, μ: 24992, ~: 24992)
VerifySignature:test_verifySignature_false_private_key() (gas: 24968)
VerifySigner:test_verifySigner() (gas: 25939)
VerifySigner:test_verifySigner_false() (gas: 28647)
Withdraw:test_withdrawEth() (gas: 52652)
Withdraw:test_withdrawEth_EthTransferFailed() (gas: 93200)
Withdraw:test_withdrawEth_InsufficientEthBalance() (gas: 59867)
Withdraw:test_withdrawEth_Unauthorized() (gas: 59616)
Withdraw:test_withdrawEth_event() (gas: 51896)
Withdraw:test_withdrawEth_fuzz(uint256) (runs: 256, μ: 71047, ~: 71597)
Withdraw:test_withdrawEth_event() (gas: 51878)
Withdraw:test_withdrawEth_fuzz(uint256) (runs: 256, μ: 71114, ~: 71664)
WithdrawCollateral:test_withdrawCollateral() (gas: 353419)
WithdrawCollateral:test_withdrawCollateral_availableMargin() (gas: 354937)
WithdrawCollateral:test_withdrawCollateral_availableMargin() (gas: 354955)
WithdrawCollateral:test_withdrawCollateral_collateralAmount() (gas: 353929)
WithdrawCollateral:test_withdrawCollateral_insufficient_account_collateral_balance() (gas: 274470)
WithdrawCollateral:test_withdrawCollateral_totalCollateralValue() (gas: 354436)
WithdrawCollateral:test_withdrawCollateral_totalCollateralValue() (gas: 354418)
WithdrawCollateral:test_withdrawCollateral_zero() (gas: 266428)
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@ src/
├── Engine.sol
├── interfaces
│ ├── IEngine.sol
│ ├── oracles
│ │ └── IPyth.sol
│ ├── synthetix
│ │ ├── IERC7412.sol
│ │ ├── IPerpsMarketProxy.sol
Expand Down Expand Up @@ -81,7 +79,7 @@ npm run decode-custom-error -- <error hash 0x...>
> project must be compiled first (see step 2)
```
npx hardhat test
npm run test:hh
```

## Deployment Addresses
Expand Down
Loading

0 comments on commit 2227ddb

Please sign in to comment.