75 Commits

Author SHA1 Message Date
Danny Ryan
36b6f8c3bf
Merge branch 'dev' into lightclient-sync-exe 2021-03-10 16:25:01 -07:00
Danny Ryan
6bd1efc73b
rename fork files 2021-03-08 17:16:13 -07: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
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
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
Danny Ryan
b08600156e
hww feedback
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2021-02-04 11:05:00 -06:00
Danny Ryan
9313815976
put 'validator' in flags methods 2021-02-04 08:47:46 -07:00
Danny Ryan
34cea67b91
ValidatorFlags -> ValidatorFlag 2021-02-04 08:45:25 -07:00
Danny Ryan
1c1ba5cba2
minor PR feedback 2021-02-02 12:35:00 -07:00
protolambda
b4ba6c57de
linter: first tuple element type is ValidatorFlags, not just int 2021-02-01 22:02:12 +01:00
protolambda
71c28e67a1
toc update 2021-02-01 21:48:55 +01:00
protolambda
3677073812
bitvector[8] -> uint8, for efficient packing in flags merkle tree 2021-02-01 21:46:27 +01:00
Danny Ryan
b029c75d88
must be correct target to get correct head 2021-02-01 07:52:06 -07:00
Danny Ryan
ad01c85ff6
minor reorder to process_epoch calls 2021-02-01 07:06:29 -07:00
Danny Ryan
007a6f0ecc
a couple of hf1 notes 2021-01-29 10:37:19 -07:00
Danny Ryan
46848e4202
Merge branch 'dev' into accounting-reform 2021-01-29 08:49:51 -07:00
Hsiao-Wei Wang
1b00c10ed3
Apply @michaelsproul's feedback 2021-01-27 14:47:52 +08:00
Hsiao-Wei Wang
ae218015b7
Merge branch 'dev' into re_process_final_updates_fix 2021-01-27 03:02:24 +08:00
Hsiao-Wei Wang
fa6094837b
Update lightclient patch and phase1 specs 2021-01-19 22:03:00 +08:00
Justin
12593e8782
Update comments 2021-01-19 12:52:40 +00:00
Hsiao-Wei Wang
f3d7dee71f
Apply @djrtwo's suggestion 2021-01-19 20:44:21 +08:00
Hsiao-Wei Wang
fb0c6d54f8
Add @ralexstokes's fix 2021-01-19 20:27:18 +08:00
Hsiao-Wei Wang
c877d142bd
Add duplicate elements warning to the docstring 2021-01-19 20:24:25 +08:00
Hsiao-Wei Wang
2a6699290f
Revert "Fix SyncCommittee"
This reverts commit b2658f1091482a3993b311696d5c50b744bde51f.
2021-01-14 01:47:40 +08:00
Hsiao-Wei Wang
b2658f1091
Fix SyncCommittee
1. Make `get_sync_committee_indices` do not return duplicate indices
2. Pad default values to Vectors
2021-01-13 20:12:52 +08:00
Hsiao-Wei Wang
a340f30e61
Merge branch 'dev' into accounting-reform 2021-01-13 14:44:17 +08:00
Hsiao-Wei Wang
f113413e5b
Fix ToC 2021-01-11 18:06:37 +08:00
Hsiao-Wei Wang
ce87914326
Fix the 2/3 threshold calculation
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2021-01-07 11:14:32 +08:00
Alex Stokes
a3bf632b4f
Bugfix in sync committee proposer rewards
The variable used to accumulate proposer rewards across the sync committee processing was shadowed by the per-participant proposer reward.

This means the total proposer reward would simply be twice the output of `get_proposer_reward` for the last participant in the sync committee.

I believe we want to sum all contributions to the proposer reward across sync committee participants which is what this PR does.
2021-01-06 08:39:21 -08:00
Danny Ryan
271b9dff83
toc 2021-01-05 14:17:34 -07:00
Danny Ryan
b8d3589b46
remove global quotient penalties from fork spec [temp] 2021-01-05 13:48:26 -07:00
Hsiao-Wei Wang
9c75c3819d
Fix previous_epoch_participation and current_epoch_participation initialization 2021-01-06 02:09:39 +08:00
Hsiao-Wei Wang
53ad66a4e8
Arrange constants and configurations 2021-01-06 01:11:46 +08:00
Hsiao-Wei Wang
39d3a18d48
Fix upgrade_to_lightclient_patch 2021-01-06 00:42:01 +08:00
Hsiao-Wei Wang
958173b5bf
Fix typo 2021-01-05 22:19:08 +08:00
Hsiao-Wei Wang
5cf0514816
Fix ToC and minor linter issues 2021-01-05 22:10:02 +08:00
Alex Stokes
edfd04c212
Refactor sync committee rewards to use helper
This change is functionally equivalent but uses the helper we already have for proposer rewards.

The argument for this change is better encapsulation of the reward which makes it easier in general to reason about properties of the spec ("are the attestation proposer rewards and the sync committee proposer rewards equivalent?") and a single point of maintenance in the event that rewards get refactored in the future (which makes refactoring safer overall).
2020-12-22 10:42:59 -08:00
vbuterin
682f6c02c7
Update specs/lightclient/beacon-chain.md 2020-12-20 18:54:57 +08:00
vbuterin
9e2fa30567
Complete HF1 beacon-chain.md 2020-12-19 07:22:11 +08:00
Danny Ryan
cc9a4cdc46
add base sanity light client tests 2020-12-16 17:14:42 -07:00
Hsiao-Wei Wang
e63c96416a
Add a FIXME comment. 2020-12-16 15:10:54 +08:00
Hsiao-Wei Wang
d01a4ad823
Fix depth calculation...again(!) and add unittests 2020-12-16 15:01:22 +08:00
Hsiao-Wei Wang
cf6933ac45
Fix depth calculation and add get_subtree_index helper 2020-12-15 13:24:53 +08:00
Hsiao-Wei Wang
bcde37c39f
Make sync-protocol.md pass the linter 2020-12-15 13:24:43 +08:00
Hsiao-Wei Wang
acfe49e3f3
executable light client patch: beacon-chain.md (#2141)
* Bump remerkleable to 0.1.18

* Disable `sync-protocol.md` for now. Make linter pass

* Enable lightclient tests

* Use *new* `optional_fast_aggregate_verify`

* Fix ToC and codespell

* Do not run phase1 tests with Lightclient patch

* Fix the Eth1Data casting bug. Add a workaround.

* Fix `run_on_attestation` testing helper

* Revert

* Rename `optional_fast_aggregate_verify` to `eth2_fast_aggregate_verify`

* Apply Proto's suggestion

* Apply Danny's suggestion

* Fixing tests

* Fix after rebasing

* Rename `LIGHTCLIENT` -> `LIGHTCLIENT_PATCH`

* New doctoc

* Add lightclient patch configs

* fix gitignore light client patch generator output

* Upgrade state for light client patch

* Add `lightclient-fork.md` to deal the fork boundary and fix
`process_block_header`

* Misc cleanups

1) Add a summary note for every function that is changed.
2) Avoid changing `process_block` (instead only change `process_block_header`).
3) Rename `G2_INFINITY_POINT_SIG` to `G2_POINT_AT_INFINITY` to avoid `SIG` contraction.
4) Misc cleanups

* Update block.py

* Update beacon-chain.md

* Fix typo "minimal" -> "mainnet"

Co-authored-by: Marin Petrunić <mpetrunic@users.noreply.github.com>

* Use the new `BeaconBlockHeader` instead of phase 0 version

* Update config files

* Move `sync_committee_bits` and `sync_committee_signature` back to `BeaconBlockBody`

Co-authored-by: protolambda <proto@protolambda.com>
Co-authored-by: Justin <drakefjustin@gmail.com>
Co-authored-by: Marin Petrunić <mpetrunic@users.noreply.github.com>
2020-12-15 13:18:20 +08:00
Danny Ryan
3b7c02514b
straightforward light client edits 2020-12-07 08:10:39 -07:00
Justin
b2d25f7454
Nitpicks 2020-11-25 11:59:01 +00:00
vbuterin
5bfe61f865
Embiggened sync committee size and added sub-aggregates 2020-11-25 19:38:45 +08:00