Hsiao-Wei Wang
966363890b
PR feedback from @ericsson49: fix when `len(bytez) > BYTES_PER_CUSTODY_ATOM`
2020-06-30 19:16:18 +08:00
Hsiao-Wei Wang
eaae70b3b3
Minor refactoring
2020-06-30 17:16:48 +08:00
Hsiao-Wei Wang
96b71a19de
Avoid Python-specific negative operation
2020-06-30 16:58:56 +08:00
Hsiao-Wei Wang
2c0595da01
PR feedback from Danny
2020-06-30 00:11:43 +08:00
Hsiao-Wei Wang
4b239e94b7
Mix PR feedback from Danny and Proto
2020-06-29 12:50:01 +08:00
Hsiao-Wei Wang
1d954ee9bd
PR feedback from @ericsson49
...
Co-authored-by: Alex Vlasov <avv49@mail.ru>
2020-06-29 12:33:52 +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
531184f42b
Infer types where possible, e.g. uint64+uint64=uint64
2020-06-26 15:41:47 +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
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
terence tsao
7e04c70ca1
Update beacon-chain.md
2020-06-24 16:53:53 -07: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
021788a634
Merge pull request #1925 from ethereum/hwwhww/shard_state_transition
...
Rework `shard_state_transition` interface + fix #1922
2020-06-24 12:29:31 +08:00
Hsiao-Wei Wang
dbd1d4e589
PR feedback: Enable `verify_shard_block_signature`
2020-06-24 12:22:24 +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
Hsiao-Wei Wang
e52c19896d
Update
...
1. Check on-time attestations fit `attestation.data.shard_transition_root != hash_tree_root(ShardTransition())`
2. Move `attestation.data.shard_head_root` check to after winning root
2020-06-23 18:22:18 +08:00
Hsiao-Wei Wang
db5da9dc97
Fix return type
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-06-23 10:50:41 +08:00
Danny Ryan
05dc8fe9a0
Merge pull request #1922 from terencechain/patch-105
...
Remove shard check in `verify_shard_block_message`
2020-06-22 12:05:32 -06: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
eec1442417
Reorg `shard_state_transition` argument and fix `get_shard_transition_fields`
2020-06-22 23:41:02 +08:00
Hsiao-Wei Wang
4f618fc62d
Rework `shard_state_transition` interface
...
To make `shard_state_transition` similar to phase 0
`state_transition` function
1. Rename old `shard_state_transition` to `process_shard_block`
2. Add `shard_state_transition` with `validate_message` flag, we only
validate it in shard fork choice
2020-06-22 23:21:24 +08:00
ericsson
723784b408
replace `[[]]*num` with `[()]*num` to avoild problems with mutability, as [] or () is copied
2020-06-20 01:02:19 +03:00
ericsson
40b397f53f
use [[]] * num instead of just [] * num
2020-06-20 00:09:59 +03:00
terence tsao
769e1d0339
Update shard-transition.md
2020-06-19 09:06:37 -07: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
c2c2b4c444
Crosslink bugfix
...
1. Fix `is_winning_attestation` condition
2. Fix `process_crosslink_for_shard`: we can only check
`shard_data_roots` if `shard_transition != ShardTransition()`
2020-06-19 22:19:21 +08:00
Hsiao-Wei Wang
76840c9178
Merge branch 'dev' into hwwhww/strict-uint64
2020-06-19 17:01:04 +08:00
terence tsao
3888dc27a9
@djrtwo's feedback
2020-06-18 12:39:48 -07:00
terence tsao
db81f88c4e
Update beacon-chain.md
2020-06-18 10:59:37 -07:00
Danny Ryan
bd61c2686b
PR feedback
2020-06-18 09:45:10 -06: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
Danny Ryan
02d518c9e3
Merge pull request #1919 from ethereum/hwwhww/shard_block_length
...
Fix shard_block_length type in `compute_updated_gasprice`
2020-06-18 09:35:59 -06:00
Danny Ryan
13e7e7986d
Merge pull request #1915 from ethereum/hwwhww/fix-validator-arguments
...
Fix missing arguments of validator guide
2020-06-18 09:34:45 -06:00
Hsiao-Wei Wang
fe47869d5f
Revert `process_crosslinks` and add comment
2020-06-18 23:32:23 +08:00
Hsiao-Wei Wang
35bf3b5290
Refactor `validate_attestation`
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-06-18 23:20:24 +08:00
Hsiao-Wei Wang
8cf0774290
Fix shard_block_length type in `compute_updated_gasprice`
2020-06-18 20:39:29 +08:00
Hsiao-Wei Wang
6aca7afd81
Add notes of active shard count
2020-06-18 17:35:24 +08:00
Hsiao-Wei Wang
7dbecdf904
Fix some missing arguments
2020-06-18 17:35:16 +08:00
Hsiao-Wei Wang
c0b6df8fd0
Merge pull request #1906 from terencechain/patch-102
...
Fix links in phase1 validator doc
2020-06-18 15:10:43 +08:00
Hsiao-Wei Wang
4428a6aedf
Fix table
2020-06-18 13:50:10 +08:00
Hsiao-Wei Wang
0ae11cd70c
Merge pull request #1911 from terencechain/patch-103
...
get_shard_winning_roots uses on_time_slot
2020-06-18 12:28:23 +08:00
Hsiao-Wei Wang
0eeffc47bc
Merge pull request #1909 from ericsson49/fix_process_custody_game_operations
...
Fix typing error in `process_custody_game_operations`
2020-06-18 12:22:35 +08:00
protolambda
41ebd51aff
Merge branch 'dev' into hwwhww/strict-uint64
2020-06-18 02:49:09 +02:00
ericsson
9dc43957e2
a fix according to @protolambda comments
2020-06-18 03:39:51 +03:00
ericsson
e479e96480
lint fix
2020-06-18 02:46:06 +03:00
terence tsao
cc84b49d13
on_time_attestation_slot instead of current_slot
2020-06-17 16:20:46 -07:00
ericsson
adced70c54
use `aggregate.data` instead of hust `data`
2020-06-18 02:04:16 +03:00
ericsson
17c86177d9
Change types of BeaconBlockBody chunk_challenges and
...
chunk_challenge_responses to List[CustodyChunkChallenge, ...]
2020-06-18 01:43:41 +03:00
terence tsao
3eabcddb4c
Update validator.md
2020-06-17 13:24:00 -07:00
protolambda
ce0371a66b
fix comment: committees per slot for given *epoch*
2020-06-17 20:23:26 +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
Danny Ryan
fbf10a0db3
fix tests
2020-06-16 22:32:09 -06:00
Hsiao-Wei Wang
23cbbb1d08
Fix shard number assertion and refactor it
2020-06-17 09:48:47 +08:00
Hsiao-Wei Wang
c8ae7d99f9
Fix after auto-merge
2020-06-17 09:05:44 +08: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
e6e694fad9
Fix toc
2020-06-16 17:35:33 +01:00
Dankrad Feist
58935c19d6
Move constant
2020-06-16 17:23:09 +01:00
Dankrad Feist
df1a932534
Rename misleading variable all_secrets_are_revealed
2020-06-16 15:19:45 +01:00
dankrad
4bc849bcc2
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-16 15:05:12 +01:00
dankrad
4b8b3f2cbc
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-16 15:05:01 +01:00
Dankrad Feist
a4c2950c4a
Phase 1 validator guide stub. This is to start collecting important details with correct validator operation.
2020-06-16 14:48:00 +01:00
Danny Ryan
a0175ca1b3
Merge branch 'dankrad-custody-256bit' into dankrad-custody-0.01bit
2020-06-16 07:15:00 -06:00
Hsiao-Wei Wang
3ee0761d17
Add `shard: Shard` field to `AttestationData`
2020-06-16 00:17:49 +08:00
Hsiao-Wei Wang
50ac8ebb0c
Fix DOMAIN_CUSTODY_BIT_SLASHING
2020-06-15 21:25:40 +08:00
Hsiao-Wei Wang
458d343497
Fix configs and put domain types to the same table
2020-06-15 21:15:11 +08:00
Hsiao-Wei Wang
be607e97f6
Merge branch 'dev' into phase1-validator
2020-06-15 21:09:43 +08:00
Danny Ryan
f62125eaa6
add phase 1 on-time aggregation
2020-06-15 06:54:48 -06:00
Hsiao-Wei Wang
8697b30eea
Fix configuration
2020-06-15 15:30:32 +08:00
Hsiao-Wei Wang
e80f6727dc
Merge branch 'dev' into dankrad-custody-256bit
2020-06-15 15:13:45 +08:00
Danny Ryan
e955e6f6e1
Merge pull request #1884 from paulhauner/patch-25
...
Use parent_root for finalized chain check
2020-06-13 16:09:16 -05:00
Danny Ryan
fdb6f15867
unhandled exceptions do not modify forkchoice store
2020-06-13 15:59:04 -05:00
Danny Ryan
df9b5f18a4
Merge pull request #1885 from paulhauner/patch-26
...
Fork choice: minor formatting change
2020-06-13 15:51:03 -05:00
Dankrad Feist
f6d7dac30c
Change to 2**14 epoch (73 day) custody periods as per #1888
2020-06-13 15:15:37 +01:00
Paul Hauner
7ad1bb508d
Ensure parent is checked before store lookup
2020-06-13 16:04:16 +10:00
Dankrad Feist
42a9f1afdf
Fix Legendre bit computations
2020-06-12 23:44:36 +01:00
Aditya Asgaonkar
993ed5c2c6
Resetting branch to dev and adding single commit
2020-06-12 14:37:07 -07:00
Dankrad Feist
04fb9926e8
Remove custody bits from phase 1 and tests
2020-06-12 17:16:08 +01:00
Dankrad Feist
29c1569251
Merge branch 'dev' into dankrad-custody-256bit
...
# Conflicts:
# specs/phase1/beacon-chain.md
2020-06-12 12:29:57 +01:00
Dankrad Feist
398fc833b8
Fix TOC
2020-06-12 12:07:31 +01:00
Dankrad Feist
59b35afcd9
Refactor universal hash function
2020-06-12 12:04:30 +01:00
Dankrad Feist
65c3417f90
Fix replace_empty_or_append, remove assert False & test
2020-06-12 11:53:32 +01:00
dankrad
7bf491d49d
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-12 11:28:49 +01:00
dankrad
0e8bba2ce3
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-12 11:28:30 +01:00
dankrad
d41b6a5775
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-12 11:18:07 +01:00
dankrad
31654d8bf4
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-12 11:17:44 +01:00
dankrad
7c6280aa8e
Update specs/phase1/custody-game.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-06-12 11:16:19 +01:00
Danny Ryan
67c9c062e0
Merge pull request #1880 from paulhauner/patch-24
...
Fork choice: avoid redundant call to get_ancestor
2020-06-11 10:23:27 -05:00
Paul Hauner
a1a75a38fe
Tidy, add comment
2020-06-11 11:51:18 +10:00
Danny Ryan
85b227da78
Merge branch 'dev' into phase1-validator
2020-06-10 11:34:55 -05:00
Danny Ryan
4b8f132957
pr feedback
2020-06-10 11:32:02 -05:00
Dankrad Feist
e46d5effe4
Add test for slashing after failing to respond to custody chunk challenge
2020-06-10 17:20:42 +01:00
Danny Ryan
1dc6b55617
rearrange fork choice condition for clarity
2020-06-10 09:40:34 -05:00
Hsiao-Wei Wang
479c40450d
Friendly lint fix
2020-06-10 18:16:26 +08:00
Paul Hauner
29d968bb2e
Use parent_root for finalized chain check
2020-06-10 15:09:40 +10:00
Paul Hauner
378d249487
Avoid redundant call to get_ancestor
2020-06-10 11:02:10 +10:00
terence tsao
0f6efcd50d
Update toc
2020-06-09 15:38:40 -07:00
terence tsao
ef11e924fa
Update phase1 beacon-chain config table
2020-06-09 13:34:46 -07:00
Hsiao-Wei Wang
dacf86a5c0
Remove `transition_digest`
2020-06-10 02:43:59 +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
2d895e9388
PR feedback from danny
2020-06-09 00:13:27 +08:00
Hsiao-Wei Wang
3b749d72c8
Merge branch 'dev' into hwwhww/shard_fork_choice
2020-06-08 23:57:19 +08:00
Hsiao-Wei Wang
9b3f45dfd0
Merge pull request #1875 from ethereum/hwwhww/shard_fork_choice_part2
...
Handle `beacon_parent_root` checks
2020-06-08 23:53:31 +08:00
Hsiao-Wei Wang
e03a970eaf
PR feedback from danny: simplify `verify_shard_block_message` params
2020-06-08 23:49:24 +08:00
Danny Ryan
dce82e76bc
Merge pull request #1870 from ethereum/hwwhww-patch-1
...
Use shard_block.slot to get seed for proposer selection
2020-06-08 09:19:23 -06:00
Hsiao-Wei Wang
435505746c
PR feedback from Terence: fix `get_shard_latest_attesting_balance`
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2020-06-08 17:12:46 +08:00
Hsiao-Wei Wang
a4cc189f2b
Apply PR feedback from Danny
2020-06-06 05:19:46 +08: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
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
6f9c290bfb
Add TODO flag of latest message
2020-06-06 02:39:11 +08:00
Hsiao-Wei Wang
f8597d2965
Add `get_pendings_shard_blocks`
2020-06-06 02:39:10 +08:00
Hsiao-Wei Wang
727353c054
Verify shard_block.slot fits the expected offset_slots
2020-06-06 02:39:10 +08:00
Danny Ryan
8a9ccc4f34
clarify attestations as coming from block.body when getting winning roots in validator guide
2020-06-05 12:12:12 -06:00
Danny Ryan
8e5c98ef3c
PR feedback
2020-06-05 12:01:53 -06:00
Danny Ryan
7e44456be5
mod compute_subnet_for_attestation to be usable for lookahead
2020-06-05 09:50:49 -06:00
Danny Ryan
52de25048a
fix lihth client refs in val guide
2020-06-05 09:35:09 -06:00
Michael Sproul
c2b7ff7422
Re-clarify proposer slashing check
...
Fixes a typo from #1871
2020-06-04 16:16:37 +10:00
Hsiao-Wei Wang
8afb93f5a3
Add `shard_block.slot` to seed
2020-06-04 11:19:04 +08:00
Michael Sproul
376c836190
Clarify proposer slashing gossip conditions
2020-06-04 12:51:17 +10:00
Hsiao-Wei Wang
26aae40941
Use epoch of the shard_block.slot for generating seed
2020-06-04 05:31:53 +08:00
Hsiao-Wei Wang
d344521741
Bugfix: should set `shard` for empty proposal
2020-06-04 05:30:13 +08:00
Hsiao-Wei Wang
c0108afe77
Use shard_block.slot to get seed for proposer selection
2020-06-04 05:06:04 +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
Hsiao-Wei Wang
eb21648146
Merge pull request #1858 from ethereum/hwwhww/get_start_shard
...
`get_start_shard` proposal
2020-06-04 00:46:12 +08:00
Danny Ryan
d1647c28e0
Merge branch 'dev' into phase1-validator
2020-06-03 10:43:42 -06:00
Hsiao-Wei Wang
5c5cedd60d
Apply PR feedback from Danny and Terence
2020-06-03 22:31:16 +08:00
Danny Ryan
cc5116bf33
Merge pull request #1837 from status-im/ssz-string
...
Use SSZ types in p2p spec
2020-06-02 16:35:31 -06:00
Danny Ryan
09b387bdc9
Merge pull request #1862 from terencechain/patch-100
...
Tidying up `shard_state_transition`
2020-06-02 14:19:31 -06:00
Diederik Loerakker
e814d52ee5
Merge pull request #1866 from ethereum/tunable-genesis
...
Tunable genesis
2020-06-02 22:19:13 +02:00
Danny Ryan
cf7b9993b5
clarify `head_root` is for a `BeaconBlock`
...
Co-authored-by: Diederik Loerakker <proto@protolambda.com>
2020-06-02 13:51:43 -06:00
Danny Ryan
06dfff022b
add comment about default of 0x00 for genesis finalized checkpoint in p2p spec
2020-06-02 11:22:09 -06:00
Danny Ryan
671fae6efe
change note about genesis delay in p2p spec to match new GENESIS_DELAY config value; fix tests
2020-06-02 11:09:42 -06:00
Raw Pong Ghmoa
34412130c5
phase0: enable a tunable genesis time
2020-06-02 10:55:13 -06:00
terence tsao
24427947b1
Moved transition_digest to last
2020-06-02 08:09:43 -07:00
Hsiao-Wei Wang
142ba17451
PR review from Danny
2020-06-02 18:08:28 +08:00
Paul Hauner
2a125e8497
Update fork-choice.md
2020-06-02 17:22:33 +10:00
Paul Hauner
c6aac16506
Reword fork choice comment
2020-06-02 17:16:25 +10:00
Danny Ryan
d6435d0cbf
Merge branch 'dev' into dankrad-custody-256bit
2020-06-01 18:49:11 -06:00
Danny Ryan
3a4db69a20
Merge branch 'dev' into dankrad-custody-256bit
2020-06-01 18:45:22 -06:00
terence tsao
2a218520a1
Tidying up `shard_state_transition`
2020-06-01 14:31:45 -07:00
Hsiao-Wei Wang
5f10ac13bf
PR feedback from Terence and Danny: refactor `get_committee_count_delta`
2020-06-01 23:22:59 +08:00
Hsiao-Wei Wang
30f72dd696
Fix `get_shard` and `compute_shard_from_committee_index` calls
2020-06-01 23:15:16 +08:00
Hsiao-Wei Wang
9567c238d4
Merge branch 'dev' into hwwhww/get_start_shard
2020-06-01 18:17:58 +08:00
Hsiao-Wei Wang
92db6da508
Apply suggestions from Terence
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2020-06-01 17:56:22 +08:00
Hsiao-Wei Wang
31127b7024
Merge branch 'dev' into hwwhww/phase1_refactor_part2
2020-06-01 17:50:49 +08:00
Hsiao-Wei Wang
6317bd68aa
PR feedback from Danny
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-06-01 17:47:47 +08:00
Hsiao-Wei Wang
8e5db1b49f
Merge pull request #1856 from ethereum/hwwhww/verify_empty_shard_transition
...
Rework `Shard transition processing`
2020-06-01 17:47:00 +08:00
Hsiao-Wei Wang
8f570b461d
Merge pull request #1854 from ethereum/hwwhww/phase1_refactor
...
Some phase1 refactoring
2020-06-01 17:46:16 +08:00
Jacek Sieka
33e115f8c6
Clean up remaining `[]` List syntax
...
..and use List[byte, 256] for error message
2020-05-30 20:59:12 +02:00
Alex Stokes
437b2ebb90
Update fork choice spec comment for clarity
...
I think this change more clearly specifies the intended behavior. Given the terseness of the spec's code representation, I think we should aim for as much clarity as possible.
2020-05-29 18:16:06 -07:00
Hsiao-Wei Wang
63de59d5f6
Merge branch 'dev' into hwwhww/shard_fork_choice_3
2020-05-30 03:57:17 +08:00
Hsiao-Wei Wang
327deb40b2
Adjust function blocks
2020-05-30 03:14:51 +08:00
Hsiao-Wei Wang
cceeab2657
Combine `process_crosslinks` and `verify_empty_shard_transition` into `process_shard_transitions`
2020-05-30 03:13:20 +08:00
Hsiao-Wei Wang
9b9507c138
Merge branch 'dev' into hwwhww/phase1_refactor_part2
2020-05-30 03:11:28 +08:00
Hsiao-Wei Wang
f70224b84e
Extract `compute_committee_source_epoch`
2020-05-30 03:09:42 +08:00
Hsiao-Wei Wang
2dc041807a
Implement `get_start_shard`
2020-05-30 01:26:00 +08:00
Hsiao-Wei Wang
b16e6d7a86
PR feedback from Danny
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-05-29 12:58:19 +08:00
Hsiao-Wei Wang
bd9f983eea
Minor fix
2020-05-29 02:20:38 +08:00
Hsiao-Wei Wang
8ae7f5b6fa
Refactor `is_valid_indexed_attestation`: extract `verify_attestation_custody`
2020-05-29 01:24:17 +08:00
Hsiao-Wei Wang
7509ecb742
Add comments, minor refactoring
2020-05-29 00:13:08 +08:00
Hsiao-Wei Wang
19262888e4
Rename `verify_shard_transition_false_positives` to `verify_empty_shard_transition`
2020-05-28 21:55:49 +08:00
Hsiao-Wei Wang
8c9bbc48d8
Rework `is_shard_attestation`
...
Change it to `is_on_time_attestation` so that it could be reused in
`validate_attestation`.
2020-05-28 21:49:36 +08:00
Hsiao-Wei Wang
ca48963032
Rename `head_shard_root` to `shard_head_root`
2020-05-28 21:38:11 +08:00
Hsiao-Wei Wang
c437578280
Add `shard` field to `ShardBlock`
2020-05-28 21:32:27 +08:00
Alex Stokes
75633cfcf1
Update link so gossipsub encodings match the correct section
2020-05-26 11:00:02 -07:00
Danny Ryan
8eb1d2e940
Merge pull request #1844 from ericsson49/ericsson49/fix_shard_state_transition
...
`compute_shard_transition_digest` expects `Root` as a fourth parameter
2020-05-26 10:17:55 -06:00
Danny Ryan
753a25e5db
Merge pull request #1843 from terencechain/patch-99
...
Use `compute_previous_slot` for `slot - 1` occurrences
2020-05-26 10:02:14 -06:00
Ali Atiia
75787d92a8
broken link
...
broken link to custory-game.md
2020-05-25 16:45:44 -04:00
ericsson
d3c26d6b8b
`compute_shard_transition_digest` expects `Root` as a fourth parameter
2020-05-25 18:45:38 +03:00
terence tsao
ce1d22d71c
Use helper `compute_previous_slot`
2020-05-23 15:22:49 -07:00
Jacek Sieka
56309342c0
Use `Bytes32` for `error_message`
...
`ErrorMessage.error_message` is a leftover from an older version of SSZ
that was able to encode unbounded lists. This is no longer the case -
all collection types now have a fixed upper bound on length.
In general, the `error_message`, just like the `graffitti` field, should
not be interpreted in any particular way except for debugging and vanity
- as such, using the same type, a `Bytes32`, seems reasonable.
An alternative would be `List[byte, 256]` which maybe could be
"reasonably backwards compatible" with whatever clients are are doing
now - depending on how they are dealing with this field type that no
longer exists in the SSZ spec :) It would however be the only place
where `List[uintN, N]` is used in the current spec.
As an exercise, this could be considered a security issue since it's
essentially unbounded and undefined behaviour.
2020-05-21 15:33:47 +02:00
Danny Ryan
96f785e84b
ensure only forward progress with eth1data voting
2020-05-20 13:56:43 -06:00
Danny Ryan
aa6352608e
Merge pull request #1835 from ethereum/strict-block-range
...
Strict block range (Rebase and extend #1827 )
2020-05-20 13:00:29 -06:00
protolambda
522e34efcf
Fix markdown, use multiple lines for change-control, and add step >= 1 case
2020-05-20 20:46:08 +02:00
Danny Ryan
a6d4566f51
Merge pull request #1834 from ethereum/clarify-genesis-safety
...
clarify that eth1 block follow distance for genesis
2020-05-20 12:44:29 -06:00
protolambda
59a43142c2
Rebased on latest BlocksByRange spec, fix conflicts, clarify single chain, even with higher step
2020-05-20 20:39:52 +02:00
Jacek Sieka
a29cbebc0e
cover `step` parameter in stricter range request
2020-05-20 20:29:43 +02:00
Jacek Sieka
607e23949c
require blocks to be ordered consecutively in block range request
...
Per the spec, if I request range 5-10, it is permissible for a client to
answer with block 7, 9 - even if the blocks 5, 6 and 8 exist.
Because blocks 7 and 9 cannot be validated as they arrive in such a
request, it seems better to close this gap - this update adds the spec
language that forbids well-behaving clients from answering this way.
2020-05-20 20:29:37 +02:00
Danny Ryan
4ac2fc7eff
add missing column description fo SECONDS_PER_ETH1_BLOCK
...
Co-authored-by: Diederik Loerakker <proto@protolambda.com>
2020-05-20 12:28:08 -06:00
Danny Ryan
c9f21f1f43
clarify that eth1 blocks must be at a safe fllow distance before being considered for genesis
2020-05-20 10:44:08 -06:00
Danny Ryan
943e51aef1
hww feedback for finality rewards fix
2020-05-20 10:12:57 -06:00
Danny Ryan
95c3295eeb
move proposer negation to inactivity_penalty deltas
2020-05-19 17:17:20 -06:00
Danny Ryan
85e78223dd
ensure when performing optimally that you don't lose money during a leak
2020-05-19 16:51:46 -06:00
Hsiao-Wei Wang
cd91380d80
PR feedback from proto: set `length` back to `int`
2020-05-20 03:05:03 +08:00
Hsiao-Wei Wang
8f70453aef
PR feedback from Proto
2020-05-20 03:04:52 +08:00