Skip to content

hybrid-echidna crashes with KeyError  #94

Open
@tjade273

Description

@tjade273

Describe the bug
After running for about a minute, hybrid-echidna crashes with

Traceback (most recent call last):
  File "/opt/homebrew/lib/python3.10/site-packages/optik/common/world.py", line 343, in run
    runner = self.contracts[contract_addr]
KeyError: 3638658538924045119126437326771845363306064498

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/homebrew/bin/hybrid-echidna", line 8, in <module>
    sys.exit(main())
  File "/opt/homebrew/lib/python3.10/site-packages/optik/echidna/__main__.py", line 554, in main
    func(sys.argv[1:])
  File "/opt/homebrew/lib/python3.10/site-packages/optik/echidna/__main__.py", line 344, in run_hybrid_echidna_with_display
    raise exc
  File "/opt/homebrew/lib/python3.10/site-packages/optik/echidna/__main__.py", line 321, in run_hybrid_echidna_with_display
    run_hybrid_echidna(args)
  File "/opt/homebrew/lib/python3.10/site-packages/optik/echidna/__main__.py", line 284, in run_hybrid_echidna
    replay_inputs(
  File "/opt/homebrew/lib/python3.10/site-packages/optik/echidna/runner.py", line 85, in replay_inputs
    status = world.run()
  File "/opt/homebrew/lib/python3.10/site-packages/optik/common/world.py", line 345, in run
    raise WorldException(
optik.common.exceptions.WorldException: Transaction recipient is 3638658538924045119126437326771845363306064498, but no contract is deployed there

To Reproduce
Will work on a minimal example, need info about what sort of constructs might cause this

Additional context:
MacOS

> echidna-test --version
Echidna 2.0.4
> slither --version
0.9.1
> python3 --version
Python 3.10.8
> hybrid-echidna . --contract Echidna --config ./contracts/echidna/config.yaml --no-display --debug --logs echidna.log 2> err.log
> cat echidna.log
2022-12-08 10:55:36,645 - �[32mINFO�[0m - Running echidna campaign #1 ...
2022-12-08 10:55:36,645 - �[34mDEBUG�[0m - Echidna invocation cmdline: echidna-test . --sender 10000 --sender 20000 --sender 30000 --contract Echidna --corpus-dir ./tmpjy_p_rmt --test-mode assertion --seq-len 1 --config ./contracts/echidna/config.yaml --test-limit 50000 --contract-addr 00A329C0648769A73AFAC7F9381E08FB43DBEA72 --deployer 30000 --format json
2022-12-08 10:55:57,866 - �[32mINFO�[0m - Running echidna campaign #1 ...
2022-12-08 10:55:57,866 - �[34mDEBUG�[0m - Echidna invocation cmdline: echidna-test . --sender 10000 --sender 20000 --sender 30000 --contract Echidna --corpus-dir ./tmpa7p7tl4z --test-mode assertion --seq-len 1 --config ./contracts/echidna/config.yaml --test-limit 50000 --contract-addr 00A329C0648769A73AFAC7F9381E08FB43DBEA72 --deployer 30000 --format json
2022-12-08 10:56:57,043 - �[34mDEBUG�[0m - Echidna stdout: 
Loaded total of 0 transactions from ./tmpa7p7tl4z/coverage
{"coverage":{"0x4fe01e34142e7e740f51588bae85a0374a5ac9769d765709261567c7a48cd145":[[2,1,2,"ErrorRevert"], 
... (Omitted many similar) ... 
[1690,834,1,"ErrorRevert"]]},"error":null,"gas_info":[],"seed":-1946118301545039283,"success":true,"tests":[{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"},{"contract":"","error":null,"name":"name","status":"fuzzing","transactions":null,"type":"property"}]}
2022-12-08 10:56:57,066 - �[34mDEBUG�[0m - Bytecode for contract Echidna written in /var/folders/9v/kty1x3ld4xg_nqqc73vd9g440000gn/T/optik_contract_17cn8he6.sol
2022-12-08 10:56:57,069 - �[32mINFO�[0m - Replaying 36 new inputs symbolically...
2022-12-08 10:56:57,069 - �[34mDEBUG�[0m - Replaying input: -3276696328732992390.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions