-
Notifications
You must be signed in to change notification settings - Fork 38
/
dialyzer.ignore-warnings
92 lines (86 loc) · 106 KB
/
dialyzer.ignore-warnings
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#Function-related ignored errors.
The created fun has no local return
Function encode_to_map/1 has no local return
Function insert_call/2 has no local return
Function get_call_gas_used/4 has no local return
Function process_chainstate/6 has no local return
Function handle_info/2 has no local return
The created fun has no local return
Function oracle_query/2 has no local return
Function broadcast_new_block_added_to_chain_and_new_mined_tx/1 has no local return
Function do_call_contract/3 has no local return
Function init_chain/2 has no local return
Function create/4 has no local return
Function known_chain/1 will never be called
Function identify_chain/1 will never be called
Function do_get_header_by_height/3 will never be called
Function work_on_sync_task/2 will never be called
Function work_on_sync_task/3 will never be called
Function post_blocks/1 will never be called
Function post_blocks/3 will never be called
Function agree_on_height/7 will never be called
Function fill_pool/4 will never be called
Function fetch_block/2 will never be called
unction fetch_block_ext/2 will never be called
apps/aecore/lib/aecore/account/account_state_tree.ex:5: Overloaded contract for 'Elixir.Aecore.Account.AccountStateTree':get/2 has overlapping domains; such contracts are currently unsupported and are simply ignored
apps/aecore/lib/aecore/chain/block.ex:31: The call maps:put(#{#<116>(8, 1, 'integer', ['unsigned', 'big']), #<114>(8, 1, 'integer', ['unsigned', 'big']), #<97>(8, 1, 'integer', ['unsigned', 'big']), #<110>(8, 1, 'integer', ['unsigned', 'big']), #<115>(8, 1, 'integer', ['unsigned', 'big']), #<97>(8, 1, 'integer', ['unsigned', 'big']), #<99>(8, 1, 'integer', ['unsigned', 'big']), #<116>(8, 1, 'integer', ['unsigned', 'big']), #<105>(8, 1, 'integer', ['unsigned', 'big']), #<111>(8, 1, 'integer', ['unsigned', 'big']), #<110>(8, 1, 'integer', ['unsigned', 'big']), #<115>(8, 1, 'integer', ['unsigned', 'big'])}#,Vserialized_txs@1::[any()],Vserialized_header@1::binary()) will never return since it differs in the 3rd argument from the success typing arguments: (any(),any(),map())
apps/aecore/lib/aecore/chain/worker.ex:452: The call 'Elixir.Aeutil.Serialization':remove_struct(Vblocks_info@1::'not_found' | {'error',_} | {'ok',map()}) breaks the contract ([map()]) -> [any()]
; (map()) -> map() in the 1st argument
The call 'Elixir.Aecore.Chain.Worker':transform_chainstate('to_chainstate',Vchainstate@1::map()) will never return since the success typing is (any(),{'error',_} | {'ok',map()}) -> any() and the contract is (any(),{'error',any()} | {'ok',map()}) -> any()
The call 'Elixir.Aecore.Chain.Worker':transform_chainstate('to_chainstate',Vchainstate@1::map()) will never return since the success typing is (any(),{'error',_} | {'ok',_}) -> any() and the contract is (atom() | any(),{'error','Elixir.String':t()} | {'ok',map()}) -> map()
The pattern Verror@1 = {'error', _} can never match the type 'false'
Overloaded contract for 'Elixir.Aeutil.PatriciaMerkleTree':new/1 has overlapping domains; such contracts are currently unsupported and are simply ignored
The pattern <'pool_txs', Vbody@1, _headers@1> can never match the type <'default',_,[any()]>
The pattern #{'data':=#{'payload':=#{'query_data':=Vquery_data@1, 'oracle_address':=#{'value':=Vvalue@1}, 'response_ttl':=Vresponse_ttl@1, 'query_ttl':=Vquery_ttl@1, 'query_fee':=Vquery_fee@1}, 'fee':=Vfee@1}} can never match the type #{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}
The pattern {'ok', _} can never match the type 'error'
The pattern {'ok', Vremaining_signatures@1} can never match the type 'error'
Invalid type specification for function 'Elixir.Aecore.Tx.SignedTx':'signature_valid_for?'/2. The success typing is (#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[any()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>map(), 'contract'=>map(), 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | map(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | map(), 'payload'=>binary(), 'poi'=>map(), 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | map(), 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>map(), 'ttl'=>map(), 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[map()] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=_, _=>_},#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}) -> 'false'
The call 'Elixir.Aecore.Keys':verify(Vdata_binary@1::binary(),Vsignature@1::any(),Vpubkey@1::#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}) will never return since the success typing is (binary(),binary(),binary()) -> boolean() and the contract is (message(),signature(),pubkey()) -> boolean()
The pattern <'raw_blocks', Vbody@1, _headers@1> can never match the type <'acc_txs' | 'default' | 'info',_,[any()]>
The call 'Elixir.Aehttpserver.Web.Notify':broadcast_new_transaction_in_the_pool(Vtx@1::#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}) will never return since it differs in the 1st argument from the success typing arguments: (#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=atom() | binary() | [any()] | map(), 'nonce':=atom() | binary() | [any()] | map(), 'payload':=atom() | binary() | [any()] | map(), 'senders':=[any()], 'ttl':=atom() | binary() | [any()] | map(), 'type':=atom() | binary() | [any()] | map(), _=>_}, 'signatures':=[any()], _=>_})
Guard test '/='(Verror@1::'nil','nil') can never succeed
The call 'Elixir.Exexec':send(Vospid@1::non_neg_integer(),'eof') breaks the contract (pid() | os_pid(),binary()) -> 'ok'
Invalid type specification for function 'Elixir.Aecore.Oracle.Tx.OracleResponseTx':process_chainstate/6. The success typing is (#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()},#{'oracle_cache_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={_,_}, 'root_hash':=binary()}, 'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={_,_}, 'root_hash':=binary()}},integer(),#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleResponseTx', 'query_id':=binary(), 'response':=atom() | map(), _=>_},#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'senders':=[map(),...], _=>_},_) -> {'ok',{map(),map()}}
The inferred type for the 4th argument of process_chainstate/6 (#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleResponseTx', 'query_id':=binary(), 'response':=atom() | map(), _=>_}) is not a supertype of #{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'oracle_address'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_data'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'query_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'response_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
The inferred type for the 1st argument of 'is_minimum_fee_met?'/3 (#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=number(), 'payload':=#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleQueryTx', 'oracle_address':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'query_fee':=_, 'query_ttl':=#{'ttl':=number(), 'type':='absolute' | 'relative', _=>_}, _=>_}, _=>_}) is not a supertype of #{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
Invalid type specification for function 'Elixir.Aecore.Oracle.Tx.OracleQueryTx':'is_minimum_fee_met?'/3. The success typing is (#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=number(), 'payload':=#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleQueryTx', 'oracle_address':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'query_fee':=_, 'query_ttl':=#{'ttl':=number(), 'type':='absolute' | 'relative', _=>_}, _=>_}, _=>_},#{'oracle_cache_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}, 'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}},_) -> boolean()
Invalid type specification for function 'Elixir.Aecore.Oracle.OracleStateTree':enter_oracle/2. The success typing is (#{'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}, _=>_},#{'__struct__':='Elixir.Aecore.Oracle.Oracle', 'expires':=_, 'owner':=atom() | #{'value':=binary(), _=>_}, 'query_fee':=_, 'query_format':=_, 'response_format':=_}) -> #{'oracle_cache_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}, 'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}}
Invalid type specification for function 'Elixir.Aecore.Oracle.OracleStateTree':insert_oracle/2. The success typing is (#{'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}, _=>_},#{'__struct__':='Elixir.Aecore.Oracle.Oracle', 'expires':=_, 'owner':=atom() | #{'value':=binary(), _=>_}, 'query_fee':=_, 'query_format':=_, 'response_format':=_}) -> #{'oracle_cache_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}, 'oracle_tree':=#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()}}
The call 'Elixir.Aecore.Oracle.Oracle':refund_sender(Vquery@1::#{'__struct__':='Elixir.Aecore.Oracle.OracleQuery', 'expires':=integer(), 'fee':=integer(), 'has_response':=boolean(), 'oracle_address':=binary(), 'query':=binary(), 'response':=atom() | map(), 'response_ttl':=integer(), 'sender_address':=binary(), 'sender_nonce':=integer()},Vaccounts_state@1::any()) will never return since it differs in the 1st argument from the success typing arguments: (#{'__struct__':='Elixir.Aecore.Oracle.OracleQuery', 'fee':=_, 'has_response':=boolean(), 'sender_address':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=_, _=>_}, _=>_},any())
The pattern <Voracles_state@1, _where@1> can never match since previous clauses completely covered the type <_,'oracle' | 'oracle_query'>
Invalid type specification for function 'Elixir.Aecore.Oracle.Oracle':refund_sender/2. The success typing is (#{'__struct__':='Elixir.Aecore.Oracle.OracleQuery', 'fee':=_, 'has_response':=boolean(), 'sender_address':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=_, _=>_}, _=>_},_) -> any()
Invalid type specification for function 'Elixir.Aecore.Naming.Tx.NameUpdateTx':encode_to_list/2. The success typing is (#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'client_ttl':=non_neg_integer(), 'expire_by':=non_neg_integer(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'pointers':=_, _=>_},#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()},...], 'ttl':=non_neg_integer(), _=>_}) -> [any(),...]
Invalid type specification for function 'Elixir.Aecore.Naming.Tx.NameUpdateTx':process_chainstate/6. The success typing is (_,#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()},integer(),#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'client_ttl':=integer(), 'expire_by':=non_neg_integer(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'pointers':=[any()], _=>_},_,_) -> {'ok',{_,{'error',<<_:64,_:_*8>>} | #{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={_,_}, 'root_hash':=binary()}}}
The inferred type for the 4th argument of process_chainstate/6 (#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'client_ttl':=integer(), 'expire_by':=non_neg_integer(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'pointers':=[any()], _=>_}) is not a supertype of #{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'oracle_address'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_data'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'query_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'response_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
Invalid type specification for function 'Elixir.Aecore.Naming.Tx.NameUpdateTx':preprocess_check/6. The success typing is (#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()},#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()},_,#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'expire_by':=_, 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, _=>_},#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=number(), 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_},...], _=>_},_) -> 'ok' | {'error',<<_:64,_:_*8>>}
Invalid type specification for function 'Elixir.Aecore.Naming.Tx.NameUpdateTx':validate/2. The success typing is (#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'client_ttl':=_, 'expire_by':=_, 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'pointers':=_, _=>_},#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'senders':=_, _=>_}) -> 'ok' | {'error',<<_:64,_:_*8>>}
The return type atom() in the specification of get_chain_state_name/0 is not a subtype of 'accounts' | 'calls' | 'channels' | 'contracts' | 'naming' | 'oracles', which is the expected return type for the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
The pattern #{'data':=#{'payload':=#{'query_data':=Vquery_data@1, 'oracle_address':=#{'value':=Vvalue@1}, 'response_ttl':=Vresponse_ttl@1, 'query_ttl':=Vquery_ttl@1, 'query_fee':=Vquery_fee@1}, 'fee':=Vfee@1}} can never match the type #{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}
The call 'Elixir.Aehttpserver.Web.Notify':broadcast_new_transaction_in_the_pool(Vtx@1::#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}) will never return since it differs in the 1st argument from the success typing arguments: (#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=atom() | binary() | [any()] | map(), 'nonce':=atom() | binary() | [any()] | map(), 'payload':=atom() | binary() | [any()] | map(), 'senders':=[any()], 'ttl':=atom() | binary() | [any()] | map(), 'type':=atom() | binary() | [any()] | map(), _=>_}, 'signatures':=[any()], _=>_})
Invalid type specification for function 'Elixir.Aecore.Tx.SignedTx':'signature_valid_for?'/2. The success typing is (#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[any()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>map(), 'contract'=>map(), 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>map(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | map(), 'payload'=>binary(), 'poi'=>map(), 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | map(), 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>map(), 'ttl'=>map(), 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[map()] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=_, _=>_},#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}) -> 'false'
The variable _@3 can never match since previous clauses completely covered the type <<_:32>>
Cons will produce an improper list since its 2nd argument is <<_:32>>
The pattern <Vchain_state@1, Vheight@1, Vtx@1 = #{'payload':=#{'contract':=Vtarget@1, 'caller':=Vcontract_key@1}, '__struct__':='Elixir.Aecore.Tx.DataTx', 'nonce':=Vnonce@1}> can never match the type <atom() | #{'accounts':=_, 'contracts':=_, _=>_},pos_integer(),#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[any()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>map(), 'contract'=>map(), 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>map(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | map(), 'payload'=>binary(), 'poi'=>map(), 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | map(), 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>map(), 'ttl'=>map(), 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[map()], 'ttl':=non_neg_integer(), 'type':=atom()}>
The call 'Elixir.Aecore.Naming.Name':create(_@1::any(),_@2::any(),_@3::any(),_@4::any(),<<_:16>>) breaks the contract (binary(),'Elixir.Aecore.Keys':pubkey(),non_neg_integer(),non_neg_integer(),[any()]) -> 'Elixir.Aecore.Naming.Name':t()
Invalid type specification for function 'Elixir.Aecore.Naming.Name':create/3. The success typing is (binary(),_,number()) -> #{'__struct__':='Elixir.Aecore.Naming.Name', 'client_ttl':=0, 'expires':=number(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'owner':=_, 'pointers':=<<_:16>>, 'status':='claimed'}
Overloaded contract for 'Elixir.Aecore.Naming.NameUtil':validate_label_length/1 has overlapping domains; such contracts are currently unsupported and are simply ignored
The call 'Elixir.Aecore.Naming.NamingStateTree':put(#{'__struct__':='Elixir.MerklePatriciaTree.Trie', 'db':={atom(),_}, 'root_hash':=binary()},Vclaim_hash@1::binary(),Vclaim@1::#{'__struct__':='Elixir.Aecore.Naming.Name', 'client_ttl':=0, 'expires':=number(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'owner':=_, 'pointers':=<<_:16>>, 'status':='claimed'}) breaks the contract ('Elixir.MerklePatriciaTree.Trie':t(),binary(),'Elixir.Aecore.Channel.ChannelStateOnChain':t() | 'Elixir.Aecore.Contract.Contract':t() | 'Elixir.Aecore.Contract.Call':t() | 'Elixir.Aecore.Naming.Name':t() | 'Elixir.Aecore.Naming.NameCommitment':t() | 'Elixir.Aecore.Account.Account':t()) -> 'Elixir.MerklePatriciaTree.Trie':t() | {'error','Elixir.String':t()}
The call erlang:byte_size(Vcommitment@1::#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}) will never return since it differs in the 1st argument from the success typing arguments: (bitstring())
The inferred type for the 4th argument of process_chainstate/6 (#{'__struct__':='Elixir.Aecore.Naming.Tx.NameUpdateTx', 'client_ttl':=integer(), 'expire_by':=non_neg_integer(), 'hash':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'pointers':=[any()], _=>_}) is not a supertype of #{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'oracle_address'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_data'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'query_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'response_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
The inferred type for the 1st argument of 'is_minimum_fee_met?'/3 (#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=number(), 'payload':=#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleQueryTx', 'oracle_address':=#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'value':=binary(), _=>_}, 'query_fee':=_, 'query_ttl':=#{'ttl':=number(), 'type':='absolute' | 'relative', _=>_}, _=>_}, _=>_}) is not a supertype of #{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
The inferred type for the 4th argument of process_chainstate/6 (#{'__struct__':='Elixir.Aecore.Oracle.Tx.OracleResponseTx', 'query_id':=binary(), 'response':=atom() | map(), _=>_}) is not a supertype of #{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'oracle_address'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_data'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'query_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'response_ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, which is expected type for this argument in the callback of the 'Elixir.Aecore.Tx.Transaction' behaviour
The pattern {'ok', #{'block':=Vblock@1}} can never match the type {'error',_} | {'ok',#{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}
# sync related ignores
The call 'Elixir.Aecore.Sync.Task':set_sync_task(#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[#{'hash':=binary(), 'height':=non_neg_integer()}], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'pool':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'workers':=[{pid(),pid()}]}]},Vstate@1::#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=_, _=>_}) will never return since the success typing is (#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[map()], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'pool':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'workers':=[{pid(),pid()}]},#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()}], _=>_}) -> #{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()} | #{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=_, 'agreed':=_, 'chain':=_, 'id':=_, 'pending':=_, 'pool':=_, 'workers':=_}], _=>_} and the contract is ('Elixir.Aecore.Sync.Task':t(),'Elixir.Aecore.Sync.Sync':t()) -> 'Elixir.Aecore.Sync.Sync':t()
The pattern {'error', Vreason@1} can never match the type {'ok',reference()}
The pattern {'inconclusive', Vchain@1, {'get_header', Vchain_id@1, Vpeers@1, Vblock_height@1}} can never match the type {'inconclusive',#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[any()], 'chain_id':=reference(), 'peers':=[any()]}} | {'new',#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[], 'chain_id':=reference(), 'peers':=[any()]},reference()}
The call 'Elixir.Aecore.Sync.Jobs':delayed_run_job(Vpeer_id@1::pid(),Vtask_id@1::reference(),'sync_task_workers',Vfun@1::fun(() -> 'ok' | {'error','sync_abort'}),250) breaks the contract (peer_id(),'Elixir.Aecore.Sync.Task':t(),queue(),fun(),delay()) -> {'Elixir.Aecore.Sync.Task':t(),{'change_worker',peer_id(),pid(),pid()}}
The pattern {'ok', 'true', Vblock@1} can never match the type {'error',_} | {'ok',#{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=map(), 'txs':=[any()]}}
The pattern {'ok', #{'header':=Vheader@1}} can never match the type {'error',_} | {'ok',#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}}
The pattern {'ok', #{'hashes':=[]}} can never match the type {'error',_} | {'ok',[#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}]}
The pattern {'ok', #{'hashes':=Vhashes@1}} can never match the type {'error',_} | {'ok',[#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}]}
The call 'Elixir.Aecore.Sync.Task':set_sync_task(#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[#{'hash':=binary(), 'height':=non_neg_integer()}], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'pool':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'workers':=[{pid(),pid()}]}]},Vstate@1::#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=_, _=>_}) will never return since the success typing is (#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[map()], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'pool':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'workers':=[{pid(),pid()}]},#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()}], _=>_}) -> #{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()} | #{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=_, 'agreed':=_, 'chain':=_, 'id':=_, 'pending':=_, 'pool':=_, 'workers':=_}], _=>_} and the contract is ('Elixir.Aecore.Sync.Task':t(),'Elixir.Aecore.Sync.Sync':t()) -> 'Elixir.Aecore.Sync.Sync':t()
The pattern {'ok', #{'block':=Vblock@1}} can never match the type {'error',_} | {'ok',#{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}
The call 'Elixir.Aecore.Sync.Task':set_sync_task(#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[#{'hash':=binary(), 'height':=non_neg_integer()}], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'pool':=[{non_neg_integer(),binary(),'false' | {'ok' | pid(),'local' | #{'__struct__':='Elixir.Aecore.Chain.Block', 'header':=#{'__struct__':='Elixir.Aecore.Chain.Header', 'height':=non_neg_integer(), 'miner':=binary(), 'nonce':=non_neg_integer(), 'pow_evidence':=_, 'prev_hash':=binary(), 'root_hash':=binary(), 'target':=non_neg_integer(), 'time':=non_neg_integer(), 'txs_hash':=binary(), 'version':=non_neg_integer()}, 'txs':=[#{'__struct__':='Elixir.Aecore.Tx.SignedTx', 'data':=#{'__struct__':='Elixir.Aecore.Tx.DataTx', 'fee':=non_neg_integer(), 'nonce':=non_neg_integer(), 'payload':=#{'__struct__':=atom(), 'amount'=>non_neg_integer(), 'call_data'=>binary(), 'call_stack'=>[non_neg_integer()], 'channel_id'=>binary(), 'channel_reserve'=>non_neg_integer(), 'client_ttl'=>non_neg_integer(), 'code'=>binary(), 'commitment'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'contract'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'deposit'=>non_neg_integer(), 'depositing_account'=>binary(), 'expire_by'=>non_neg_integer(), 'gas'=>non_neg_integer(), 'gas_price'=>non_neg_integer(), 'hash'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'name'=>binary(), 'name_salt'=>integer(), 'offchain_tx'=>'empty' | #{'__struct__':='Elixir.Aecore.Channel.ChannelOffChainTx', 'channel_id':=binary(), 'sequence':='nil' | non_neg_integer(), 'signatures':={binary(),binary()}, 'state_hash':='nil' | binary(), 'updates':=[#{'__struct__':='Elixir.Aecore.Channel.Updates.ChannelCreateUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelDepositUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelTransferUpdate' | 'Elixir.Aecore.Channel.Updates.ChannelWithdrawUpdate', 'amount'=>non_neg_integer(), 'channel_reserve'=>non_neg_integer(), 'from'=>binary(), 'initiator'=>binary(), 'initiator_amount'=>non_neg_integer(), 'locktime'=>non_neg_integer(), 'responder'=>binary(), 'responder_amount'=>non_neg_integer(), 'to'=>binary()}]}, 'payload'=>binary(), 'poi'=>#{'__struct__':='Elixir.Aecore.Poi.Poi', 'accounts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'calls':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'channels':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'contracts':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'naming':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}, 'oracles':=#{'__struct__':='Elixir.Aecore.Poi.PoiProof', 'db':=map(), 'root_hash':='empty' | binary()}}, 'pointers'=>binary(), 'query_fee'=>non_neg_integer(), 'query_format'=>binary(), 'query_id'=>binary(), 'receiver'=>binary() | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'responder_amount'=>non_neg_integer(), 'response'=>binary(), 'response_format'=>binary(), 'sequence'=>non_neg_integer(), 'state_hash'=>binary(), 'target'=>#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl'=>#{'ttl':=non_neg_integer(), 'type':='absolute' | 'relative'}, 'version'=>non_neg_integer(), 'vm_version'=>integer(), 'withdrawing_account'=>binary()}, 'senders':=[#{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}] | #{'__struct__':='Elixir.Aecore.Chain.Identifier', 'type':='account' | 'channel' | 'commitment' | 'contract' | 'name' | 'oracle', 'value':=binary()}, 'ttl':=non_neg_integer(), 'type':=atom()}, 'signatures':=[binary()]}]}}}], 'workers':=[{pid(),pid()}]}]},Vstate@1::#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=_, _=>_}) will never return since the success typing is (#{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'agreed':='nil' | #{'hash':=binary(), 'height':=non_neg_integer()}, 'chain':=#{'__struct__':='Elixir.Aecore.Sync.Chain', 'chain':=[map()], 'chain_id':=reference(), 'peers':=[pid()]}, 'id':=reference(), 'pending':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'pool':=[{non_neg_integer(),binary(),'false' | {_,_}}], 'workers':=[{pid(),pid()}]},#{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()}], _=>_}) -> #{'__struct__':='Elixir.Aecore.Sync.Sync', 'sync_tasks':=[{pid(),pid()} | #{'__struct__':='Elixir.Aecore.Sync.Task', 'adding':=_, 'agreed':=_, 'chain':=_, 'id':=_, 'pending':=_, 'pool':=_, 'workers':=_}], _=>_} and the contract is ('Elixir.Aecore.Sync.Task':t(),'Elixir.Aecore.Sync.Sync':t()) -> 'Elixir.Aecore.Sync.Sync':t()
Guard test _@1::'ok' =:= 'false' can never succeed
Guard test _@2::'ok' =:= 'false' can never succeed