Commit Graph

259 Commits

Author SHA1 Message Date
Hsiao-Wei Wang 8d60614728
Merge branch 'dev' into altair_incentives 2021-04-06 00:01:11 +08:00
Meredith Baxter 4a1126d916 Fix table formatting 2021-04-05 11:34:06 -04:00
Alex Stokes 9aaf548c37
Fix language with sync committee selection proofs 2021-04-02 18:37:30 -07:00
Justin 48fb9c39c2
Update beacon-chain.md 2021-04-02 15:05:54 +01:00
Justin 88d8f80957
Fix two bugs (and some cleanups)
Fix two bugs:

1) The participant reward (previously known as "inclusion reward") should not be proportional to `effective_balance` because a sync committee member is already chosen with probability proportional to the effective balance. Credit to @vbuterin.
2) The participant reward (previously known as "inclusion reward") was too large by a factor of `len(participant_indices)`, not taking into account the `for` loop.

Fixing these two bugs actually makes the code significantly simpler and cleaner :)

@barnabemonnot: Could you check the logic? :) If confirmed happy to update the tests.
2021-04-02 14:52:32 +01:00
Danny Ryan acfbd9375e
Merge pull request #2293 from ralexstokes/reorder-aggregation-conditions
Reorder Altair gossip validation conditions
2021-04-01 11:25:10 -06:00
Danny Ryan b81c64fa15
Merge pull request #2287 from mbaxter/altair/change-altair-fork-default
Set tmp ALTAIR_FORK_SLOT to max value
2021-04-01 06:39:14 -06:00
Danny Ryan b3f72075cb
Merge pull request #2294 from michaelsproul/sync-committee-balance
Simplify balance calc in `process_sync_committee`
2021-04-01 06:36:41 -06:00
Adrian Sutton 45c764618a
Fix missed rename from aggregate_and_proof to contribution_and_proof 2021-04-01 15:18:31 +10:00
Danny Ryan 28216cbcda
fix lint
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2021-03-31 13:22:45 -06:00
Michael Sproul e8b758f9a6
Simplify balance calc in `process_sync_committee` 2021-03-31 17:21:51 +11:00
Alex Stokes b151adbd4e
Reorder Altair gossip validation conditions
Validate the `selection_proof` selects the incoming validator as an
aggregator before doing other checks like committee inclusion and
(relatively) expensive signature checks.
2021-03-30 16:18:14 -07:00
Hsiao-Wei Wang 2def461298
Merge branch 'dev' into altair_incentives 2021-03-31 00:53:58 +08:00
Danny Ryan ed6358a719
Merge pull request #2248 from hukkinj1/dev
Fix list indentation
2021-03-30 07:32:35 -06:00
Meredith Baxter 4b81cc21f4 Update altair/fork.md 2021-03-29 15:15:53 -04:00
Danny Ryan 41c5f1c4d6
Merge pull request #2279 from ethereum/ralexstokes-patch-2
Fix aggregation bits example in Altair validator guide
2021-03-29 12:37:47 -06:00
Danny Ryan 6f07448883
Merge pull request #2282 from benjaminion/altair-1
Make if condition more precise
2021-03-29 07:59:19 -06:00
Danny Ryan 48d619d299
Merge pull request #2277 from ralexstokes/fix-altair-val-guide
Fix use of block root in Altair validator guide
2021-03-29 07:59:02 -06:00
Danny Ryan ef4a5af645
Merge pull request #2278 from ethereum/ralexstokes-patch-1
Fix typo from earlier edit to field name
2021-03-29 07:55:09 -06:00
Danny Ryan a51c5ee4c2
Apply suggestions from code review
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-03-29 07:51:49 -06:00
terence tsao f73aa2f98d
Fix spelling: negotiatied -> negotiated 2021-03-28 17:06:12 -07:00
Taneli Hukkinen b02aed93a3 Fix another list's indent 2021-03-29 01:17:29 +03:00
Ben Edgington 64fc912ce7 Make if condition more precise 2021-03-27 16:13:46 +00: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
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
protolambda 493dd17cc4
reduce justification and finalization Altair diff 2021-03-21 04:22:45 +01: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
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 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