Commit Graph

4039 Commits

Author SHA1 Message Date
Diederik Loerakker c6af2ec687
Code review - apply suggestions to DAS doc
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2021-03-26 22:37:30 +01:00
Danny Ryan a8c9cfbe84
minor cleanups/fixes to shard data avail PR 2021-03-26 22:37:30 +01:00
protolambda a1831940ea
adjustments based on review by @dankrad 2021-03-26 22:37:30 +01:00
Diederik Loerakker 5e57ff0ab1
Update specs/phase1/data-availability-sampling.md
Co-authored-by: dankrad <dankrad@ethereum.org>
2021-03-26 22:37:29 +01:00
protolambda 334c88961c
toc 2021-03-26 22:37:29 +01:00
protolambda a02f856e54
update bit-reverse-ordering/presentation + shard blob signature verification 2021-03-26 22:37:29 +01:00
protolambda 91e935d4f3
more DAS spec work: DAS function signatures, gossip details 2021-03-26 22:37:29 +01:00
protolambda e3a7e169f5
DAS doc 2021-03-26 22:37:29 +01:00
protolambda 6f0b613f08
work in progress DAS network + validator spec 2021-03-26 22:37:29 +01:00
vbuterin be91e59823
DAS phase 1 2021-03-26 22:37:29 +01:00
Danny Ryan 304e87a98c
typo 2021-03-26 22:37:28 +01:00
protolambda be93b03cc8
pending_commitment.votes -> pending_header.votes 2021-03-26 22:37:28 +01:00
Danny Ryan 1192158848
minor cleanups/fixes to shard data avail PR 2021-03-26 22:37:28 +01:00
vbuterin 3e6baf1ef1
Fixed index vs shard and beacon committee getting 2021-03-26 22:37:28 +01:00
vbuterin ca6323866d
Apply suggestions from code review
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: dankrad <dankrad@ethereum.org>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-26 22:37:28 +01:00
Dankrad Feist 0af9e25e6b
Revert hackmd link -- original link was good, just accidentally overwritten 2021-03-26 22:37:28 +01:00
Dankrad Feist ac0686de04
Refactor loop 2021-03-26 22:37:28 +01:00
Dankrad Feist fc4dad6a13
Fix degree proof for length 0 (degree -inf) 2021-03-26 22:37:27 +01:00
Dankrad Feist 29a5d4c836
BLSCommitment -> DataCommitment 2021-03-26 22:37:27 +01:00
dankrad eccae0aa89
Update specs/phase1/beacon-chain.md
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-26 22:37:27 +01:00
Dankrad Feist f216000815
MAX_COMMITTEE_SIZE -> MAX_VALIDATORS_PER_COMMITTEE (missed one) 2021-03-26 22:37:27 +01:00
dankrad 7fc34c801d
Update specs/phase1/beacon-chain.md
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-26 22:37:27 +01:00
Dankrad Feist 41f97162d6
most_recent_confirmed_commitments -> grantparent_epoch_confirmed_commitments 2021-03-26 22:37:27 +01:00
Dankrad Feist f44b7ffe48
Change length proof to degree proof 2021-03-26 22:37:27 +01:00
Dankrad Feist a260dbcf15
Kate -> KZG10 (better in formal contexts) 2021-03-26 22:37:26 +01:00
dankrad 6660262f5d
Update specs/phase1/beacon-chain.md
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2021-03-26 22:37:26 +01:00
dankrad 0408aa52cc
Update specs/phase1/beacon-chain.md
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2021-03-26 22:37:26 +01:00
Dankrad Feist f0fc9c6462
Add modulus 2021-03-26 22:37:26 +01:00
Dankrad Feist 126d07cfb3
MAX_COMMITTEE_SIZE -> MAX_VALIDATORS_PER_COMMITTEE 2021-03-26 22:37:26 +01:00
dankrad 6e249e8932
Update specs/phase1/beacon-chain.md
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-26 22:37:26 +01:00
Dankrad Feist c674a27a25
Fix seed in get_shard_proposer_index 2021-03-26 22:37:26 +01:00
Dankrad Feist 0769b2ca6d
Fill in with zeroes only up to the next power of two, to reduce degrees of polynomials 2021-03-26 22:37:25 +01:00
Dankrad Feist 68844f2e9d
Increase maximum allowable gas price and restrict proposer selection so it is guaranteed to be covered 2021-03-26 22:37:25 +01:00
Dankrad Feist 7d05c42cad
Improve/correct length checking 2021-03-26 22:37:25 +01:00
Dankrad Feist 4348d3b255
Add data availability coding rate as a constant (makes it more explicit what's going on) 2021-03-26 22:37:25 +01:00
vbuterin 315fe92f08
Added size check to include the degree check 2021-03-26 22:37:25 +01:00
vbuterin d3cb261a16
Delta minimum 1 2021-03-26 22:37:25 +01:00
Dankrad Feist 4647a1b6e2
Some small fixes 2021-03-26 22:37:25 +01:00
vbuterin 2abc7a4cf2
pending_headers -> pending_shard_headers 2021-03-26 22:37:24 +01:00
vbuterin 42ad1208a9
Update specs/phase1/beacon-chain.md
Co-authored-by: dankrad <dankrad@ethereum.org>
2021-03-26 22:37:24 +01:00
vbuterin 1bccf9ff02
Update specs/phase1/beacon-chain.md
Co-authored-by: dankrad <dankrad@ethereum.org>
2021-03-26 22:37:24 +01:00
vbuterin badc3eaa8e
Update specs/phase1/beacon-chain.md
Co-authored-by: dankrad <dankrad@ethereum.org>
2021-03-26 22:37:24 +01:00
vbuterin 27dbb5e4a4
Update specs/phase1/beacon-chain.md
Co-authored-by: dankrad <dankrad@ethereum.org>
2021-03-26 22:37:24 +01:00
Hsiao-Wei Wang 3211c11c17
Revert: `BeaconBlockHeader` was not changed 2021-03-26 22:37:24 +01:00
Hsiao-Wei Wang 55d9f62bf2
(OOP SSZ) if the fields are updated, we need to redefine them when defining the new SSZ class with the new field classes 2021-03-26 22:37:23 +01:00
Hsiao-Wei Wang 1ce25c19e8
Minor fixes 2021-03-26 22:37:23 +01:00
vbuterin 2190c13858
Added dependencies to fork choice section 2021-03-26 22:37:23 +01:00
vbuterin ed357b9f9f
Abstracted (Kate commitment, length) into separate object 2021-03-26 22:37:23 +01:00
vbuterin 3d108e7fe2
Made confirmed headers a separate object 2021-03-26 22:37:23 +01:00
vbuterin 623f164bf1
Fixed custom types 2021-03-26 22:37:23 +01:00
vbuterin f75ea377d5
Second pass 2021-03-26 22:37:23 +01:00
vbuterin d02a6422e3
Combing... part 1 2021-03-26 22:37:22 +01:00
vbuterin e17ab8e8de
DAS phase 1 2021-03-26 22:37:16 +01:00
Diederik Loerakker 54279f9e3b
Merge pull request #2281 from ethereum/the-merge
Merge `the-merge` into `dev`
2021-03-26 22:27:41 +01:00
Danny Ryan 223aba3e78
byte-list for opaque transaction payload 2021-03-26 13:50:46 -06:00
Danny Ryan 41a087a78d
minor edits from code review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-26 13:12:53 -06:00
Alex Stokes ccfbf5c70a
Fix use of block root in Altair validator guide 2021-03-26 11:59:01 -07:00
Alex Stokes 875aac4c43
Fix aggregation bits example in Altair validator guide
The sub-index calculation was incorrect when demonstrating how to map a validator in the sync committee to a particular bit in the `aggregation_bits` in the sync committee aggregation scheme. The correct index is given in this commit.
2021-03-26 11:50:48 -07:00
Alex Stokes f9ba7f616e
Fix typo from earlier edit to field name
The field name `aggregation_bits` was changed from `aggregate_bits` to reflect the same usage under the attestation scheme. This PR cleans up left-over references to the old field name in the section header and TOC.
2021-03-26 11:38:47 -07:00
Justin 0481e920f0
Deprecate the use of PROPOSER_REWARD_QUOTIENT 2021-03-26 10:51:29 +00:00
Barnabé Monnot 71d03a411c Scale up weights; use existing constants and new PROPOSER_WEIGHT 2021-03-26 18:36:49 +08:00
Barnabé Monnot 59134fb0ae Modify incentives to preserve invariant 2021-03-26 12:18:51 +08:00
Alex Vlasov 020895e35d
Typing problems fixes (#2271)
* Typing problem fixed: `process_block_header` passes `Bytes32()` to `state_root` of `BeaconBlockHeader`, which type is `Root`

* Typing problem fixed in `initialize_beacon_state_from_eth1`: `len` returns an `int` value, while `deposit_count=uint64` of `Eth1Data` has type `uint64`

* Typing problem fixed in `process_rewards_and_penalties`: `numerator` of type `int` passed to `weight` parameter of `get_flag_index_deltas`, which has type `uint64`

* Typing problem fixed in `process_attestation`; `False` passes as `crosslink_success` parameter of `PendingAttestation`, which has type `boolean`. `False` is an instance of `(python.)bool` and is not an instance of `(ssz.)boolean`

* Typing problem fixed: `shard_data_roots` of `ShardTransition` has type `List[Bytes32]`, but its elements are used as if they were `Root` values, e.g. in `process_chunk_challenge` method: passed to `data_root` of `CustodyChunkChallengeRecord` which has type `Root`

* Typing problem fixed in `process_custody_final_updates`: `index` has type `int`, while `validator_indices_in_records` has type `Set[ValidatorIndex]`, so tesing whether `index in validator_indices_in_records` can be risky, depending on implementation details. `ValidatorIndex(index) in validator_indices_in_records` is a safer variant.

* Typing problem fixed: `slashed` parameter of `pack_compact_validator` has type `(python.)bool`, however in `committee_to_compact_committee` a value of `(ssz.)boolean` is passed as a value of the parameter

* Typing problem fixed: `inactivity_scores` is a `List[uint64,...]`, while it is intialized/appended with values of `(python.)int` type

* fixed according to @protolambda suggestions

* changed types of _WEIGHT constants and appropriate variables/parameters, according to @protolambda suggestions

* revert code formatting back

* Introduced ZERO_ROOT according to @protolambda 's suggestion

* Reverted back to , according to @protolambda comments
2021-03-25 22:03:21 +01:00
Mikhail Kalinin 81a2c2c2b5 Use ByteList[N] and ByteVector[N] types 2021-03-25 18:41:00 +06:00
Mikhail Kalinin 260a0a5273 Polish merge/fork-choice.md 2021-03-25 17:53:15 +06:00
Mikhail Kalinin a23bde347b Bytes1 to byte in ApplicationPayload.logs_bloom 2021-03-25 17:51:32 +06:00
Mikhail Kalinin ee5ecf8e2b Address a new portion of comments and fixes 2021-03-25 17:49:13 +06:00
Mikhail Kalinin 63ae9f2bdb Standardise PowBlock between fork-choice and validator 2021-03-24 20:58:31 +06:00
Mikhail Kalinin ea5f606bd0 Address various cleanups and formatting suggestions 2021-03-24 16:30:29 +06:00
terence tsao d0b1ac1934
Update beacon-chain.md 2021-03-22 16:28:45 -07:00
Danny Ryan d49cddc1d8
Merge pull request #2255 from ralexstokes/update-subcommittee-name
Use different name for constant for sync committee aggregates
2021-03-22 11:34:32 -06:00
Danny Ryan bb85ef5a57
pr cleanup 2021-03-22 10:53:26 -06:00
Mikhail Kalinin 96de910b22 Distinguish invalid and not processed transition block 2021-03-22 21:55:35 +06:00
Mikhail Kalinin 7e6ac4e7f7 Boolean -> boolean 2021-03-22 21:20:05 +06:00
Mikhail Kalinin 83453d212e Simplify merge.BeaconState definition 2021-03-22 21:14:31 +06:00
Mikhail Kalinin 38a455c79f Verify that ApplicationPayload is zeroed before the transition 2021-03-22 20:58:34 +06:00
Mikhail Kalinin 24dc8a277f
Fix block_body variable in is_transition_block
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-22 20:54:44 +06:00
protolambda 493dd17cc4
reduce justification and finalization Altair diff 2021-03-21 04:22:45 +01:00
Mikhail Kalinin 3420e51a0f Verify transition block to be assembled correctly 2021-03-20 21:46:20 +06:00
Mikhail Kalinin 46fc8a196d Strip down the merge to the pure consensus upgrade 2021-03-20 19:21:11 +06:00
Hsiao-Wei Wang 2ce389216d
Executable Altair validator guide 2021-03-19 23:38:59 +08:00
Alex Stokes 484fae3c2b
update constant name 2021-03-19 07:59:49 -06:00
Justin 053661ad20
Update beacon-chain.md 2021-03-19 10:04:46 +00:00
Alex Stokes 208a658305
Use different name for constant for sync committee aggregates 2021-03-18 15:53:57 -06:00
Mikhail Kalinin bf151641a7 Add rebase-to-Altair warning 2021-03-17 22:42:29 +06:00
Alex Stokes c661ddf12c
hoist container definitions to preamble 2021-03-17 09:35:39 -06:00
Mikhail Kalinin b8e16c1610 Remove min(..., ...) in get_evm_beacon_block_roots 2021-03-17 15:59:14 +06:00
Mikhail Kalinin a368f5d224 Lable Added/Remove notes with Merge explicitly 2021-03-17 15:59:14 +06:00
Mikhail Kalinin 3c9cd855a0 Fix spelling
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2021-03-17 15:59:14 +06:00
Mikhail Kalinin 5435324693 Add a line break in get_recent_beacon_block_roots
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2021-03-17 15:59:14 +06:00
Mikhail Kalinin 3fb5f2ec81 Use Vector struct for recent_block_roots field
Co-authored-by: Paul Hauner <paul@paulhauner.com>
2021-03-17 15:59:14 +06:00
Mikhail Kalinin f6f36872d8 Index from GENESIS_SLOT in compute_time_at_slot
Co-authored-by: Paul Hauner <paul@paulhauner.com>
2021-03-17 15:59:14 +06:00
Mikhail Kalinin ee161634b2 Polish beacon chain spec and validator guide 2021-03-17 15:59:14 +06:00
Mikhail Kalinin 0dec828d89 Add initial merge spec 2021-03-17 15:59:14 +06:00
Danny Ryan e2c9a15aaf
Merge pull request #2246 from ethereum/sync_rewards
refactor sync committee rewards
2021-03-16 20:27:04 -06:00
protolambda 0fe5e1ef6e
update of req-resp, v2 sync methods, gossip topics 2021-03-17 00:54:29 +01:00
Alex Stokes 893134d2ab
Add validator guide and initial P2P spec for Altair 2021-03-16 17:37:42 -06:00
Justin Drake 27e88a2484 (WIP) refactor sync committee rewards 2021-03-16 15:30:25 +00:00
Danny Ryan 85d323c227
Merge pull request #2242 from ethereum/sync_aggregate
Define SyncAggregate to bundle sync committee bits and signature
2021-03-15 15:48:20 -06:00
protolambda 1eaa3c1742
Define SyncAggregate to bundle sync committee bits and signature, update tests to better isolate the state-change, introduce helper function for future tests, and update test doc 2021-03-15 21:55:36 +01:00
Danny Ryan 4afb6533a2
suffix ALTAIR on update constants 2021-03-15 11:46:53 -06:00
Hsiao-Wei Wang 8fdc0338ac
Merge pull request #2240 from ethereum/altair-genesis-tests
Enable Altair genesis tests + rename `SpecLightclient` -> `SpecAltair` + disable too slow test
2021-03-16 01:19:14 +08:00
Hsiao-Wei Wang 40fa73a311
Fork to Altair 2021-03-16 00:05:13 +08:00
Justin b4c1520bc2
Minor formatting fix 2021-03-15 15:02:57 +00:00
Danny Ryan b8bf7f0f80
Merge pull request #2236 from ethereum/justin_altair_cleanups
Altair cosmetic cleanups plus a couple substantive changes
2021-03-15 08:57:35 -06:00
Danny Ryan 2a0e0eb119
fix typo 2021-03-15 08:42:50 -06:00
Danny Ryan 6f473af395
Merge pull request #2225 from ethereum/seen-aggregates
remove faulty de-duplication condition for seen aggregates
2021-03-15 07:43:33 -06:00
Danny Ryan 178a994804
Apply suggestions from code review
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-03-15 07:33:14 -06:00
Justin Drake e7ebd08d69 Altair cosmetic cleanups plus a couple substantive changes 2021-03-15 11:08:41 +00:00
protolambda c979e69003
Altair in description and titles 2021-03-14 22:54:30 +01:00
Danny Ryan 65dcf897c2
Merge pull request #2147 from ethereum/lightclient-sync-exe
Make `sync-protocol.md` pass the linter and add basic tests
2021-03-12 07:52:45 -07:00
Hsiao-Wei Wang c34eae33d0
Merge branch 'dev' into lightclient-sync-exe 2021-03-12 00:49:29 +08:00
Danny Ryan 79f351cfca
Merge branch 'dev' into leak-scores 2021-03-11 09:28:58 -07:00
Danny Ryan b9c95b722d
one more hf-1 to Altair conversion 2021-03-11 08:55:55 -07:00
Hsiao-Wei Wang b44e576e95
LIGHTCLIENT_PATCH/HF1 -> ALTAIR 2021-03-11 21:32:00 +08:00
Hsiao-Wei Wang 69489d1541
Rename folders and file names to `altair` 2021-03-11 21:12:46 +08:00
Hsiao-Wei Wang 9d3556668b
Fix domain generation 2021-03-11 21:02:05 +08:00
Hsiao-Wei Wang 86fe6bc094
Fix apply_light_client_update calls 2021-03-11 14:27:23 +08:00
Danny Ryan dd341adc20
remove faulty de-duplication condition for seen aggregates 2021-03-10 18:55:21 -07:00
Danny Ryan 36b6f8c3bf
Merge branch 'dev' into lightclient-sync-exe 2021-03-10 16:25:01 -07:00
Danny Ryan cc191a0e2c
Merge branch 'dev' into leak-scores 2021-03-10 13:18:58 -07:00
Danny Ryan b2a172ab21
@hwwhww review
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-03-10 13:12:48 -07:00
Danny Ryan e2abdb74ae
port testing 2021-03-09 15:41:28 -07:00
Danny Ryan 70a2834058
incorporate justin's pr 2021-03-09 13:21:16 -07:00
Danny Ryan d59f1945e6
port leak-score feature without 64-epoch 2021-03-09 12:56:08 -07:00
Danny Ryan 6bd1efc73b
rename fork files 2021-03-08 17:16:13 -07:00
Alex Stokes e1023f55d1
Fix a small typo 2021-03-05 18:05:15 -08:00
Danny Ryan 8ea5e37608
add another 'modified' tag
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-03-02 07:56:30 -06:00
Danny Ryan deace8768e
port @justindrake's general cleanups from #2212 2021-03-01 19:41:28 -07:00
Danny Ryan 63e014791c
Merge branch 'dev' into dev-merge 2021-02-24 16:23:04 -07:00
Danny Ryan 396d399129
Apply suggestions from code review form @hwwhww
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-02-24 08:53:54 -06:00
Hsiao-Wei Wang b789b10397
Minor update ToC 2021-02-23 16:31:19 -07:00
Danny Ryan 1f7e9fabf2
minor 0x01 PR feedback 2021-02-23 16:16:46 -07:00
Danny Ryan a0ae048395
copy edits 2021-02-23 16:16:46 -07:00
Justin 5992e8ff05
Update deposit-contract.md 2021-02-23 16:16:46 -07:00
Justin 809fc7afaf
Update validator.md 2021-02-23 16:16:45 -07:00
Justin 1f8ca7179f
Update validator.md 2021-02-23 16:16:45 -07:00
Justin 80613a99bd
Update validator.md 2021-02-23 16:16:45 -07:00
Justin 0f94fa51b8
Update validator.md 2021-02-23 16:16:45 -07:00
Justin e93f1e1fa8
Copy-edit deposit-contract.md 2021-02-23 16:16:45 -07:00
Justin 47ebf438b3
Cleaner section title
"Withdrawal prefixes" matches `[BLS]/[ETH1_ADDRESS]_WITHDRAWAL_PREFIX`
2021-02-23 16:16:45 -07:00
Justin 128efdd34d
Fix table for withdrawal credentials prefixes
Minor cosmetic fixes (misformated table, section title).
2021-02-23 16:16:45 -07:00
Danny Ryan 7af50cc827
add eth1 withdrawal credentials to spec 2021-02-23 16:16:35 -07:00
Danny Ryan e35b850181
Merge pull request #2198 from ethereum/hf1-config
update penalty config values for hf1
2021-02-22 18:26:43 -06:00
Danny Ryan 8ec082fcf9
Merge pull request #2149 from ethereum/0x01-creds
Eth1 withdrawal credentials (0x01)
2021-02-16 13:06:34 -06:00
Danny Ryan 7050cb0add
minor 0x01 PR feedback 2021-02-16 11:55:01 -07:00
Danny Ryan c9ba641800
note penalties in hf1 list 2021-02-15 11:22:11 -07:00
Danny Ryan 2b8b0d9e2b
update penalty config values for hf1 2021-02-11 15:55:43 -07:00
Paul Hauner 7d715220bb
Don't propagate blocks with a faulty slot (#2196) 2021-02-10 12:39:42 -07:00
Phong Phan 0fd0db1ffc
Fix some typos (#2195)
* Fix typo for P2P Networking document

* Fix link typo of P2P networking document

* fix typo for light clients beacon chain document
2021-02-06 06:20:35 -07:00