Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hive Tests Failures for EIP-7702 #8200

Open
siladu opened this issue Jan 30, 2025 · 1 comment
Open

Hive Tests Failures for EIP-7702 #8200

siladu opened this issue Jan 30, 2025 · 1 comment
Assignees
Labels

Comments

@siladu
Copy link
Contributor

siladu commented Jan 30, 2025

Ran using

./hive --sim "ethereum/eest/consume-engine" --client "besu" --client-file="./besu-fix-code-delegation-issue-wo-clear.yaml" --sim.buildarg fixtures=https://github.com/ethereum/execution-spec-tests/releases/download/pectra-devnet-5%40v1.3.1/fixtures_pectra-devnet-5.tar.gz --client.checktimelimit=60s --sim.parallelism=4 -sim.limit tests/prague/eip7702 -loglevel 5 -docker.output

with besu-fix-code-delegation-issue-wo-clear.yaml:

- client: besu
  nametag: matkt-fix-code-delegation-issue-wo-clear-eip7685
  dockerfile: git
  build_args:
    github: matkt/besu
    tag: fix-code-delegation-issue-wo-clear

and get 8 failures:

tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=2**8-1,r=s=2**256-1]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	6s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=2**8-1]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	7s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=27]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	7s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_multiple_valid_authorization_tuples_first_invalid_same_signer[fork_Prague-blockchain_test_engine]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	8s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=28]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	8s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=35]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	6s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature[fork_Prague-blockchain_test_engine-v=36]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	6s	besu_matkt-fix-code-delegation-issue-wo-clear-eip7685
tests/prague/eip7702_set_code_tx/test_gas.py::test_intrinsic_gas_cost[fork_Prague-blockchain_test_engine-valid_True-single_valid_authorization_eoa_self_sponsored_authority]-besu_matkt-fix-code-delegation-issue-wo-clear-eip7685	✕ Fail	1min 0s	

Also ran using ./gradlew ethereum:referenceTests:referenceTests, using this code #8197:

and get

ExecutionSpecBlockchainTest_55 > execution(String, BlockchainReferenceTestCaseSpec, boolean) > Name: tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_multiple_valid_authorization_tuples_first_invalid_same_signer[fork_Prague-blockchain_test][Prague] FAILED
    org.opentest4j.AssertionFailedError at ExecutionSpecBlockchainTest_55.java:39
...
ExecutionSpecStateTest_38 > execution(String, GeneralStateTestCaseEipSpec, boolean) > Name: tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_multiple_valid_authorization_tuples_first_invalid_same_signer[fork_Prague-state_test]-Prague FAILED
    java.lang.IllegalArgumentException at ExecutionSpecStateTest_38.java:40
Running test: tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_multiple_valid_authorization_tuples_first_invalid_same_signer[fork_Prague-blockchain_test][Prague]
2025-01-30 15:54:34.903+10:00 | Test worker | TRACE | LondonFeeMarket | block #1 parentBaseFee: 0x0000000000000000000000000000000000000000000000000000000000000007 parentGasUsed: 0 parentGasTarget: 50000000000000000 baseFee: 0x0000000000000000000000000000000000000000000000000000000000000007
2025-01-30 15:54:34.903+10:00 | Test worker | TRACE | PragueBlockHashProcessor | Writing to 0x0f792be4b0c0cb4dae440ef133e90c0ecd48cccc 0=%0x4f2e5a1c5d4970cb267df4a8fd1c9788a1bd6150bb2f3a165c377457dc997257
2025-01-30 15:54:34.904+10:00 | Test worker | TRACE | PragueFeeMarket | parentExcessBlobGas: 0x0 blobGasPrice: 0x0000000000000000000000000000000000000000000000000000000000000001
2025-01-30 15:54:34.904+10:00 | Test worker | TRACE | MainnetTransactionProcessor | Starting execution of MessageCall{type=DELEGATE_CODE, nonce=0, maxPriorityFeePerGas=0 wei, maxFeePerGas=7 wei, gasLimit=10000000, to=0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b, value=0x0000000000000000000000000000000000000000000000000000000000000000, sig=Signature{r=13544347884849922586799322466651717039608565289016331173632267043311359749749, s=35493610876895885514112017649337101098905684953081132730809159592117395797429, recId=1}, chainId=1, payload=0x}
2025-01-30 15:54:34.910+10:00 | Test worker | TRACE | MainnetTransactionProcessor | Incremented sender 0x8a0a19589531694250d570040a0c4b74576919b8 nonce (0 -> 1)
2025-01-30 15:54:34.910+10:00 | Test worker | TRACE | MainnetTransactionProcessor | Deducted sender 0x8a0a19589531694250d570040a0c4b74576919b8 upfront gas cost 0x00000000000000000000000000000000000000000000000000000000042c1d80 (0x00000000000000000000000000000000000000000000003635c9adc5dea00000 -> 0x00000000000000000000000000000000000000000000003635c9adc5da73e280)
2025-01-30 15:54:34.910+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001000, nonce=1, signature=Signature{r=101524344544518430003623135709886582433409152755473959523075686200104195411759, s=13446398502653481020806743587039640544650693496816662316789083698014575745282, recId=1}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@5ea24702)}
2025-01-30 15:54:34.910+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.911+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 0, Actual: 1
2025-01-30 15:54:34.911+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001100, nonce=0, signature=Signature{r=83978694783906927503070724582265314328665844799999597898480585698506858342177, s=28646043974582810902323846178501492139428207382678310700799646007451987133148, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@1da2219c)}
2025-01-30 15:54:34.912+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.912+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001200, nonce=0, signature=Signature{r=59739704655918794675740030524969655065975803996423824310497344054977829649797, s=45642774479884525749546578540363074536203898085694025292444862496003178571803, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@49a46f29)}
2025-01-30 15:54:34.912+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.912+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.913+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001300, nonce=0, signature=Signature{r=11971807949985836926523945339768460164931948135846060817278723576195532140037, s=39722747813883354629354632852014790207881077430837019830963609075181239804736, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@7356ec91)}
2025-01-30 15:54:34.913+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.913+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.913+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001400, nonce=0, signature=Signature{r=101185106101908945373862216096295875005440643048904673603885397627725022344206, s=12934994256462352552161220727683677116517475826247885984762568673008847651238, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@3f803fae)}
2025-01-30 15:54:34.914+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.914+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.914+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001500, nonce=0, signature=Signature{r=7968491063191108035999566530016447584037116652045404440722154051452216791415, s=6139116392896167714098954402795077615757848797364912920996846210424646122539, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@33224703)}
2025-01-30 15:54:34.915+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.915+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.915+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001600, nonce=0, signature=Signature{r=44582091968955455308586587889289544732227126524637030878624266989318253848378, s=52664675228746419562004444964677116828989775779137861909879922142244078816976, recId=1}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@5915ab69)}
2025-01-30 15:54:34.915+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.916+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.916+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001700, nonce=0, signature=Signature{r=86261250549671421840694156366401967030676675085790166399185048985613100135095, s=15622934338098870364422101235990384862055878722475992102829035715433680778538, recId=1}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@1d63f6be)}
2025-01-30 15:54:34.916+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.916+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.916+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001800, nonce=0, signature=Signature{r=75199164200457260786177689514150254977834449779677854826312530423871794743087, s=16561083319243746354300360858252291136949686820782503622460102297228184783610, recId=1}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@23a0c7f3)}
2025-01-30 15:54:34.917+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.917+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.917+10:00 | Test worker | TRACE | CodeDelegationProcessor | Processing code delegation: CodeDelegation{chainId=0, address=0x0000000000000000000000000000000000001900, nonce=0, signature=Signature{r=3472535694907024646785993376141757030008867530047847059638489105747593008624, s=22848460434258741512711411176468038146780462003965442019906253324558928597928, recId=0}, authorizerSupplier=Suppliers.memoize(org.hyperledger.besu.ethereum.core.CodeDelegation$$Lambda/0x00000008004d4298@21b96db)}
2025-01-30 15:54:34.917+10:00 | Test worker | TRACE | CodeDelegationProcessor | Set code delegation for authority: 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
2025-01-30 15:54:34.918+10:00 | Test worker | TRACE | CodeDelegationProcessor | Invalid nonce for code delegation. Expected: 1, Actual: 0
2025-01-30 15:54:34.918+10:00 | Test worker | TRACE | MainnetTransactionProcessor | Gas available for execution 9729000 = 10000000 - 271000 (limit - intrinsic)
2025-01-30 15:54:34.919+10:00 | Test worker | TRACE | MessageCallProcessor | Executing message-call
2025-01-30 15:54:34.919+10:00 | Test worker | TRACE | MessageCallProcessor | Message call from 0x8a0a19589531694250d570040a0c4b74576919b8 to 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b has zero value: no fund transferred
2025-01-30 15:54:34.919+10:00 | Test worker | TRACE | MessageCallProcessor | Successful message call of 0x8a0a19589531694250d570040a0c4b74576919b8 to 0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b (Gas remaining: 9706894)
2025-01-30 15:54:34.920+10:00 | Test worker | TRACE | MainnetTransactionProcessor | Gas used by transaction: 293106, by message call/contract creation: 22106
2025-01-30 15:54:34.920+10:00 | Test worker | TRACE | MainnetTransactionProcessor | refunded sender 0x8a0a19589531694250d570040a0c4b74576919b8  0x00000000000000000000000000000000000000000000000000000000040e24ae wei (0x00000000000000000000000000000000000000000000003635c9adc5da73e280 -> 0x00000000000000000000000000000000000000000000003635c9adc5de82072e)
2025-01-30 15:54:34.920+10:00 | Test worker | TRACE | MessageCallProcessor | Executing message-call
2025-01-30 15:54:34.921+10:00 | Test worker | TRACE | MessageCallProcessor | Message call from 0xfffffffffffffffffffffffffffffffffffffffe to 0x0c15f14308530b7cdb8460094bbb9cc28b9aaaaa has zero value: no fund transferred
2025-01-30 15:54:34.921+10:00 | Test worker | TRACE | MessageCallProcessor | Successful message call of 0xfffffffffffffffffffffffffffffffffffffffe to 0x0c15f14308530b7cdb8460094bbb9cc28b9aaaaa (Gas remaining: 29990975)
2025-01-30 15:54:34.921+10:00 | Test worker | TRACE | MessageCallProcessor | Executing message-call
2025-01-30 15:54:34.921+10:00 | Test worker | TRACE | MessageCallProcessor | Message call from 0xfffffffffffffffffffffffffffffffffffffffe to 0x00431f263ce400f4455c2dcf564e53007ca4bbbb has zero value: no fund transferred
2025-01-30 15:54:34.922+10:00 | Test worker | TRACE | MessageCallProcessor | Successful message call of 0xfffffffffffffffffffffffffffffffffffffffe to 0x00431f263ce400f4455c2dcf564e53007ca4bbbb (Gas remaining: 29990975)
2025-01-30 15:54:34.923+10:00 | Test worker | WARN  | MainnetBlockBodyValidator | Invalid block 1 (0x8d2d52cbc926d4f828da70407bbfac3aecf3e687d3023b0bf268963ba3c1b306): gas used mismatch (expected=293106, actual=280606)
2025-01-30 15:54:34.923+10:00 | Test worker | INFO  | MainnetBlockValidator | Invalid block 1 (0x8d2d52cbc926d4f828da70407bbfac3aecf3e687d3023b0bf268963ba3c1b306): Optional[failed to validate output of imported block]
2025-01-30 15:54:34.924+10:00 | Test worker | DEBUG | BadBlockManager | Register bad block 1 (0x8d2d52cbc926d4f828da70407bbfac3aecf3e687d3023b0bf268963ba3c1b306) with cause: BadBlockCause{reason=SPEC_VALIDATION_FAILURE, description=failed to validate output of imported block}
@siladu siladu added the Prague label Jan 30, 2025
@siladu siladu self-assigned this Jan 30, 2025
@siladu
Copy link
Contributor Author

siladu commented Jan 31, 2025

c21f72a resolves ExecutionSpecBlockchainTest_55 > execution(String, BlockchainReferenceTestCaseSpec, boolean) > Name: tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_multiple_valid_authorization_tuples_first_invalid_same_signer[fork_Prague-blockchain_test][Prague] FAILED

6 failures remain with

[libsecp256k1] illegal argument: recid >= 0 && recid <= 3

Can target with

./hive --sim "ethereum/eest/consume-engine" --client "besu" --client-file="./besu-local.yaml" --sim.buildarg fixtures=https://github.com/ethereum/execution-spec-tests/releases/download/pectra-devnet-5%40v1.3.1/fixtures_pectra-devnet-5.tar.gz --client.checktimelimit=60s --sim.parallelism=4 -sim.limit tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_valid_tx_invalid_auth_signature -docker.output --sim.loglevel 5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant