Hsiao-Wei Wang
b4c91efdbc
Add __init__.py
2020-07-24 04:25:53 +08:00
Hsiao-Wei Wang
de15960185
Add finality tests to test vectors
2020-07-24 04:23:26 +08:00
Hsiao-Wei Wang
bdde2e5889
Reorg test dir
2020-07-24 03:54:45 +08:00
Hsiao-Wei Wang
e7f070d525
Use `hash_tree_root` to generate `ShardBlockHeader.body_root`
...
Include the mix-in length to the proof.
2020-07-24 02:09:25 +08:00
Danny Ryan
0692ac0172
bump VERSION.txt to 0.12.2
2020-07-23 10:28:02 -06:00
Hsiao-Wei Wang
33e56b5742
Apply Terence's suggestion: refactor on_shard_block interface
2020-07-22 22:48:52 +08:00
Hsiao-Wei Wang
4dcf5e2498
Add test case of different shards
2020-07-17 14:24:11 +08:00
Hsiao-Wei Wang
0b81c967fa
Add notes
2020-07-17 00:46:25 +08:00
Hsiao-Wei Wang
8fb96f1860
Enable more phase 0 tests to be compatible with phase 1
2020-07-17 00:10:04 +08:00
Hsiao-Wei Wang
cf42fd4828
Rename `PHASE_1_GENESIS_SLOT` to `PHASE_1_FORK_SLOT` and set it to `Slot(0)` for testing.
2020-07-16 23:58:47 +08:00
Hsiao-Wei Wang
8e82ca5d1a
Merge branch 'dev' into hwwhww/new_int_to_bytes_dev
2020-07-16 01:36:19 +08:00
Hsiao-Wei Wang
6e3a7ad8f2
Merge branch 'dev' into hwwhww/strict-uint64-2
2020-07-15 23:02:51 +08:00
Hsiao-Wei Wang
f6b1fe6172
Refactor tests and avoiding passing `shart_store` to helper functions
2020-07-15 19:07:39 +08:00
Hsiao-Wei Wang
2da331a345
Rename `test_on_shard_head.py` to `test_on_shard_block.py`
2020-07-15 19:01:20 +08:00
Hsiao-Wei Wang
43ef9aa294
Make ShardLatestMessage per shard per validator
...
1. Add `ShardLatestMessage` dataclass
2. To make it compatible with phase 0 tests and APIs, add `Store.shard_stores: Dict[Shard, ShardStore]`
3. Update `get_forkchoice_store` and `update_latest_messages`
2020-07-14 17:44:01 +08:00
Hsiao-Wei Wang
60f4bd2288
The AttesterSlashing tests for phase1 can be enabled now after #1889
2020-07-09 21:59:01 +08:00
protolambda
3c374b1e16
Update test gen to output phase 1 test vectors. Mainnet disabled for now.
2020-07-07 21:26:35 +02:00
Hsiao-Wei Wang
d608be72c3
Merge pull request #1937 from ethereum/hwwhww/custody-block-test
...
Fix `ShardTransition.shard_data_roots` and add custody game block-level tests
2020-07-02 13:24:07 +08:00
Hsiao-Wei Wang
a681163305
Merge pull request #1938 from ethereum/hwwhww/shard-block-tests-part2
...
Add more tests for `shard_state_transition`
2020-06-30 00:26:24 +08:00
Hsiao-Wei Wang
98a9facab6
PR feedback from Danny
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-06-30 00:16:00 +08:00
Danny Ryan
e06bbd14f7
Merge pull request #1907 from ethereum/fix_deprecated_merkle_util
...
Fix deprecated utility code, avoid wrong helper function name, add tests
2020-06-29 08:31:05 -06:00
Hsiao-Wei Wang
d3f2344e45
Add CustodySlashing block test and fix `get_attesting_indices` cache
2020-06-29 20:56:36 +08:00
Hsiao-Wei Wang
235175d937
Add `CustodyKeyReveal` and `EarlyDerivedSecretReveal` tests
2020-06-29 19:58:14 +08:00
Hsiao-Wei Wang
c871733bf3
Fix yield block
2020-06-29 19:48:07 +08:00
protolambda
3b7617f51a
make extracted byte uint8 for bitshift, do not use negative slice indexing, avoid negative comparison in test
2020-06-26 16:14:27 +02:00
protolambda
3fb0257cbb
update remerkleable for uint and mypy improvements
2020-06-26 15:57:53 +02:00
Hsiao-Wei Wang
a159a2da82
Merge pull request #1928 from ethereum/hwwhww/shard-block-tests
...
Add tests for `shard_state_transition` and some refactorings
2020-06-26 11:54:23 +08:00
Hsiao-Wei Wang
94c231cf98
Fix `ShardTransition.shard_data_roots` and add test
...
1. Fix `ShardTransition.shard_data_roots`: use `get_block_data_merkle_root` helper to calculate it.
2. Rework `get_valid_custody_chunk_response` testing helper: accept
`block_length_or_custody_data`
3. Add `test_with_custody_challenge_and_response` test
2020-06-26 01:46:45 +08:00
Hsiao-Wei Wang
dc02bbc142
Add more shard block tests
2020-06-26 01:44:55 +08:00
Hsiao-Wei Wang
a061758a66
Use `encode_bytes` to implement `int_to_bytes`
...
Rename `bytes_to_int` to `bytes_to_uint64`
Use `encode_bytes` to implement `int_to_bytes`
Rename `int_to_bytes` to `uint_to_bytes` and move it to `ssz_impl.py`
2020-06-25 20:20:39 +08:00
Hsiao-Wei Wang
b239f6108c
Merge branch 'dev' into hwwhww/strict-uint64
2020-06-25 17:18:16 +08:00
Hsiao-Wei Wang
2a7b5f7e68
PR feedback from Danny: nuke optional beacon_parent_state
2020-06-25 11:14:25 +08:00
Hsiao-Wei Wang
79b6bc616d
PR feedback from danny
2020-06-25 10:58:04 +08:00
Hsiao-Wei Wang
661959c13e
Add `process_shard_block` verification
2020-06-24 18:18:50 +08:00
Hsiao-Wei Wang
4a46fb2a8a
Refactor phase 1 block tests a bit and add `shard_state_transition`
...
tests
1. Refacotr phase1/sanity/test_blocks.py
2. Add phase1/sanity/test_shard_blocks.py for testing `verify_shard_block_message` and `verify_shard_block_signature`
2020-06-24 18:08:26 +08:00
Hsiao-Wei Wang
c4973792e2
Make `get_pending_shard_blocks` return `Sequence[SignedShardBlock]`
2020-06-24 12:50:27 +08:00
Hsiao-Wei Wang
e4d4527845
Merge pull request #1921 from ethereum/hwwhww/shard-tests
...
Fix no winning root case + add tests + fix #1881
2020-06-24 11:21:23 +08:00
protolambda
4bf10be4ff
use BLS constant for special signature
2020-06-23 21:14:43 +02:00
protolambda
ddddc4ba99
attester slashing with 0 indices and out of bounds indices
2020-06-23 02:06:27 +02:00
Danny Ryan
e61efc14a3
Merge pull request #1886 from ethereum/fix_store_target_checkpoint_state
...
Fix store_target_checkpoint_state
2020-06-22 11:38:40 -06:00
Hsiao-Wei Wang
5357bddcf8
PR feedback: use `filter_participant_set`
2020-06-23 00:13:48 +08:00
Hsiao-Wei Wang
97d0048eaa
PR feedback: use condition to determine if the test should be skipped
2020-06-23 00:06:35 +08:00
Danny Ryan
a1e3392d2f
add tests for on_attestation ceckpont state fix
2020-06-22 09:47:22 -06:00
Hsiao-Wei Wang
1a5016157a
Fix
...
1. To make it more compatible, update `is_on_time_attestation` argument: replace `attestation: Attestation` with `attestation_data:
AttestationData`
2. Fix `get_sample_shard_transition`
2020-06-19 23:46:01 +08:00
Hsiao-Wei Wang
c28857e4e1
Fix `attestation.data.shard_head_root` bug
2020-06-19 23:34:51 +08:00
Hsiao-Wei Wang
80c6c0b5f1
valid==True for `run_successful_crosslink_tests` helper
2020-06-19 23:07:39 +08:00
Hsiao-Wei Wang
b8caa6ee85
Add `test_wrong_shard_transition_root`
2020-06-19 22:52:38 +08:00
Hsiao-Wei Wang
a9f8411a51
Verify all shard states
2020-06-19 22:42:18 +08:00
Hsiao-Wei Wang
37d1a0750d
Use `get_shard_winning_roots` to verify
2020-06-19 22:29:49 +08:00
Hsiao-Wei Wang
43605eebe8
Add `test_no_winning_root`
2020-06-19 22:21:29 +08:00
Hsiao-Wei Wang
3117cf3140
Refactor
2020-06-19 19:09:11 +08:00
Hsiao-Wei Wang
ea59193157
Rename some `shard_blocks` to `shard_block_dict`
2020-06-19 18:11:28 +08:00
Hsiao-Wei Wang
76840c9178
Merge branch 'dev' into hwwhww/strict-uint64
2020-06-19 17:01:04 +08:00
Danny Ryan
948ad23f96
Merge branch 'dev' into epochwise_committee_count_per_slot
2020-06-18 09:44:02 -06:00
Danny Ryan
05453b786d
Merge pull request #1895 from ethereum/hwwhww/attestation-shard
...
Add `shard: Shard` field to `AttestationData`
2020-06-18 09:37:07 -06:00
Hsiao-Wei Wang
ec25f78632
Update path
2020-06-18 14:55:50 +08:00
Hsiao-Wei Wang
27eb2e2579
Move testing files from */phase_0 to */phase0, */phase_1 to */phase1
2020-06-18 14:54:27 +08:00
Hsiao-Wei Wang
26c540fbf9
Fix `get_min_new_period_epochs` helper
2020-06-18 14:10:49 +08:00
protolambda
41ebd51aff
Merge branch 'dev' into hwwhww/strict-uint64
2020-06-18 02:49:09 +02:00
protolambda
3f765f55ca
Fix deprecated utility code, avoid wrong helper function name, add tests
2020-06-17 22:34:43 +02:00
protolambda
9b60a9b799
Avoid state usage in p2p validation, compute committee count per slot for epoch as a whole
2020-06-17 20:19:32 +02:00
Hsiao-Wei Wang
7117d2e75a
Merge pull request #1896 from lsankar4033/helper_tests
...
Add unit tests for `compute_fork_digest` and `compute_subnet_for_attestation`
2020-06-17 20:52:19 +08:00
Danny Ryan
fbf10a0db3
fix tests
2020-06-16 22:32:09 -06:00
Danny Ryan
a21f93646c
Merge pull request #1878 from ethereum/hwwhww/remove_digest
...
Remove `ShardState.transition_digest`
2020-06-16 16:40:52 -06:00
Danny Ryan
759185632f
Merge branch 'dev' into phase1-validator
2020-06-16 16:07:20 -06:00
Danny Ryan
2e0950560b
PR feedback
2020-06-16 16:03:36 -06:00
Hsiao-Wei Wang
7fba94a73d
Merge branch 'dev' into hwwhww/attestation-shard
2020-06-17 01:58:05 +08:00
Dankrad Feist
8186594dfe
Rename to get_sample_shard_transition
2020-06-16 14:57:06 +01:00
Dankrad Feist
2dee432536
Refactor getting Merkle root of data part of ByteList
2020-06-16 14:43:34 +01:00
Danny Ryan
a0175ca1b3
Merge branch 'dankrad-custody-256bit' into dankrad-custody-0.01bit
2020-06-16 07:15:00 -06:00
lsankar4033
55e17fb1f7
Add compute_subnet_for_attestation unittest
2020-06-15 18:42:15 -07:00
Danny Ryan
01a69288b6
custody 0.01 testing cleanup
2020-06-15 15:33:05 -06:00
Hsiao-Wei Wang
3ee0761d17
Add `shard: Shard` field to `AttestationData`
2020-06-16 00:17:49 +08:00
Hsiao-Wei Wang
be607e97f6
Merge branch 'dev' into phase1-validator
2020-06-15 21:09:43 +08:00
Hsiao-Wei Wang
e80f6727dc
Merge branch 'dev' into dankrad-custody-256bit
2020-06-15 15:13:45 +08:00
Dankrad Feist
f6d7dac30c
Change to 2**14 epoch (73 day) custody periods as per #1888
2020-06-13 15:15:37 +01:00
Dankrad Feist
f857dbfac2
Custody tests
2020-06-12 22:47:45 +01:00
Dankrad Feist
04fb9926e8
Remove custody bits from phase 1 and tests
2020-06-12 17:16:08 +01:00
Dankrad Feist
65c3417f90
Fix replace_empty_or_append, remove assert False & test
2020-06-12 11:53:32 +01:00
Dankrad Feist
bcfaa1b635
Fix tests
2020-06-12 11:07:44 +01:00
Hsiao-Wei Wang
aa75fb0b69
Fix `MAX_SHARDS` and move config files to `configs/{network}/{fork}`
2020-06-12 00:47:36 +08:00
Hsiao-Wei Wang
6502cc1149
Separate config files by phases
2020-06-11 01:04:10 +08:00
Dankrad Feist
e46d5effe4
Add test for slashing after failing to respond to custody chunk challenge
2020-06-10 17:20:42 +01:00
Hsiao-Wei Wang
f0f7bda2ea
Fix tests
2020-06-10 02:44:09 +08:00
Danny Ryan
65a739fe41
Merge branch 'dev' into phase1-validator
2020-06-08 15:50:51 -06:00
Hsiao-Wei Wang
41cfa7fdf6
Merge branch 'dev' into dankrad-custody-256bit
2020-06-09 01:39:51 +08:00
Hsiao-Wei Wang
7e67aaeb35
Rename `build_shard_transitions_till_slot` to `get_shard_transitions`
2020-06-08 18:15:14 +08:00
lsankar4033
ffeecfbca5
Add test for compute_fork_digest
2020-06-05 20:26:11 -07:00
Hsiao-Wei Wang
a4cc189f2b
Apply PR feedback from Danny
2020-06-06 05:19:46 +08:00
Danny Ryan
7f680dfca4
fix tests
2020-06-05 14:09:17 -06:00
Hsiao-Wei Wang
a71c0a5ccc
Per #1704 discussion, remove `on_time_slot`: the given `beacon_state`
...
should be transitioned.
2020-06-06 02:39:47 +08:00
Hsiao-Wei Wang
2afa315cb3
clean leftover
2020-06-06 02:39:47 +08:00
Hsiao-Wei Wang
2d4788fe7d
Fix `verify_shard_block_message`
...
Add check for `block.beacon_parent_root` per Terence's suggestion
Update `get_shard_transition`
1. Disable verification: it will be fix in v-guide
2. Use `on_time_slot` to compute offset_slots
Rework tests
2020-06-06 02:39:47 +08:00
Hsiao-Wei Wang
a154d0c22b
Fix typo
2020-06-06 02:39:11 +08:00
Hsiao-Wei Wang
ab42eee4c0
Update shard fork choice rule to be able to handle mainnet config
2020-06-06 02:39:11 +08:00
Hsiao-Wei Wang
c9a53b8039
WIP test case
2020-06-06 02:39:07 +08:00
Danny Ryan
b1ff00aab0
Merge branch 'dev' into phase1-validator
2020-06-03 12:18:17 -06:00
Danny Ryan
74204f795d
udpate validator guide to work with all updated phase 1 constructions
2020-06-03 12:16:39 -06:00
Hsiao-Wei Wang
e1981a7bfd
`head_shard_root` -> `shard_head_root`
2020-06-04 01:00:52 +08:00
Hsiao-Wei Wang
58e75c27ed
Merge branch 'dev' into hwwhww/shard_fork_choice
2020-06-04 00:56:25 +08:00