Commit Graph

1707 Commits

Author SHA1 Message Date
vbuterin 85c1654456
Crosslinks store start and end epoch
Solves #1034
2019-05-19 09:33:01 -04:00
Justin 694b31b934
Update 0_beacon-chain.md 2019-05-17 06:11:39 -04:00
Justin f19188816b
Update 0_beacon-chain.md 2019-05-17 06:07:38 -04:00
Justin 05f9dc7baa
Fix #1090
Avoid signed integer
2019-05-17 05:59:01 -04:00
Justin c60635d2c9
Update 0_beacon-chain.md 2019-05-14 06:15:03 +01:00
Danny Ryan 5ba90d68e1
add flag for validate state root 2019-05-13 16:53:28 -04:00
Danny Ryan a0a2aa90de
lint 2019-05-13 16:40:45 -04:00
Danny Ryan 27c8e41b32
Merge branch 'dev' into JustinDrake-patch-14 2019-05-13 16:29:29 -04:00
protolambda 08faa86d70
POC ssz types spec build + update spec defs, typing still needs work 2019-05-12 23:56:53 +02:00
Diederik Loerakker acf07892bb
Merge pull request #1065 from ethereum/linter
Add linter
2019-05-11 16:31:45 +02:00
Ryuya Nakamura ae19521ea8 Update the docstring of initiate_validator_exit (#1072) 2019-05-11 19:41:05 +08:00
Hsiao-Wei Wang a4ba283d67
Limit to 120 characters per line
Limit to 120 characters per line
2019-05-09 14:34:23 +08:00
Justin Drake c37157ead1 Revert exception handling 2019-05-08 19:15:23 +01:00
Danny Ryan 33e5b98f17
Merge branch 'dev' into JustinDrake-patch-10 2019-05-08 08:42:47 -06:00
Danny Ryan af2bb7d6f6
Merge pull request #1044 from ethereum/JustinDrake-patch-21
Crosslink in AttestationData
2019-05-08 08:35:06 -06:00
Justin Drake 62c44ffce3 Refactor to validate_indexed_attestation 2019-05-07 17:34:19 +01:00
Justin Drake ecc6429b9e Address Danny's comment 2019-05-07 15:01:23 +01:00
Justin Drake 22b06d581d Update instances of int_to_bytes 2019-05-07 10:57:41 +01:00
Justin b1520ea967
Update 0_beacon-chain.md 2019-05-07 10:33:51 +01:00
Justin 9eeca0cdbd
Merge branch 'dev' into JustinDrake-patch-14 2019-05-07 10:16:38 +01:00
Justin Drake 50009ea85b Implement HW's exception-handling suggestion 2019-05-07 10:12:33 +01:00
Hsiao-Wei Wang f371daeb20
Update specs/core/0_beacon-chain.md
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-05-07 09:01:07 +01:00
Justin Drake 964e55cd4a block_body_root => body_root 2019-05-07 08:52:56 +01:00
protolambda 3a309155aa
fix deposit domain: forks are ignored for deposit validity, deposits are always accepted, if coming from the correct contract(s). 2019-05-06 22:06:00 +02:00
Justin Drake ea60fb632c More renaming 2019-05-06 20:49:46 +01:00
Justin Drake f4db9ebae0 Renamings triggered by HW comment 2019-05-06 18:26:14 +01:00
Justin Drake 8b1a2edb7c Fix genesis bug 2019-05-06 17:53:49 +01:00
Justin 7ba13aa4c5
Merge branch 'dev' into JustinDrake-patch-21 2019-05-06 17:48:09 +01:00
Justin Drake b15105e1cb Address Danny's comment 2019-05-06 17:34:03 +01:00
Danny Ryan 5c2bca4a0d
Merge pull request #1051 from ethereum/JustinDrake-patch-22
Fix #1050
2019-05-06 10:12:13 -06:00
Danny Ryan 4367a9bb0d
Merge pull request #1049 from ethereum/JustinDrake-patch-20
Cosmetic genesis cleanups
2019-05-06 10:06:15 -06:00
JSON d1c96c1e0d Doc standardization (#1039) 2019-05-06 16:30:32 +01:00
Justin 2c3bbac803
Fix #1050 2019-05-05 19:30:55 +01:00
Justin 6aff277b1a
Update 0_beacon-chain.md 2019-05-05 17:20:25 +01:00
Justin a3bbf20bf7
Update 0_beacon-chain.md 2019-05-05 17:17:18 +01:00
Justin bf20031755
Cosmetic genesis cleanups 2019-05-05 17:15:05 +01:00
Justin Drake 5fb32fd19b Fix tests 2019-05-05 12:10:39 +01:00
Justin a6e825d460
Update 0_beacon-chain.md 2019-05-05 12:04:34 +01:00
vbuterin d5d2f7835a
Rearranging one >= statement to make it more non-underflow-friendly 2019-05-03 22:51:59 -05:00
Danny Ryan f57d6fa28e
Merge pull request #1038 from ethereum/master
backport v0.6.1 into dev
2019-05-03 16:28:24 -06:00
Justin 4c1073fa2f
Update 0_beacon-chain.md 2019-05-03 22:22:19 +01:00
Justin Drake 197a7200ef Add HW and Danny comments 2019-05-03 21:21:42 +01:00
Danny Ryan 6318a21ca6
fix minor typo in attestation rewards 2019-05-03 10:37:39 -06:00
Danny Ryan c24002bb1e
Merge pull request #1025 from terencechain/patch-70
Add comment for `get_churn_limit`
2019-05-03 09:16:39 -06:00
Danny Ryan d15ca4c50c
replace asserts in get_active_index_root and get_randao_mix with comment 2019-05-02 18:11:11 -06:00
Justin 9f2cdd9c78
Update 0_beacon-chain.md 2019-05-02 11:07:25 +01:00
Justin c761fbc318
Clean up verify_indexed_attestation
Cosmetic changes:

* Add 4 lines of comments (now every statement has a comment)
* Avoid unnecessary `assert` (the end goal for me is for `assert`s to be exclusive to the operation processing helpers).
* Merge `return`s into one (increase readability, reduce verbosity)
* Use shorter-named `bit_0_indices` and `bit_1_indices` helper variables

Substantive change:

* Remove the condition that `len(0_indices) + len(1_indices) > 0`. This condition is redundant in the context of `process_attester_slashing` because of `slashed_any`. It is largely artificial in `process_attestation` where validators are incentivised to maximise new attestations.
2019-05-02 09:24:24 +01:00
Danny Ryan b169c42339
fix underflows in generate_seed, get_randao_mix, and get_active_index_roots 2019-05-01 17:44:34 -06:00
terence tsao d28e5e4843
Update 0_beacon-chain.md 2019-05-01 16:26:18 -07:00
Danny Ryan 6242e54c0a
Merge branch 'JustinDrake-patch-11' of github.com:ethereum/eth2.0-specs into JustinDrake-patch-11 2019-05-01 17:06:23 -06:00
Danny Ryan 1bb9397b65
Merge pull request #1014 from ethereum/JustinDrake-patch-10
Add 32-byte graffiti
2019-05-01 16:30:02 -06:00
Danny Ryan ef72b7ec20
Merge branch 'master' into vbuterin-patch-2 2019-05-01 16:19:21 -06:00
Danny Ryan 002e27973c
alter get_winning_crosslink.. to have same function signature as get_crosslink_committee 2019-05-01 15:51:43 -06:00
Justin Drake e85678ac15 restore compute_committee 2019-05-01 15:21:38 +01:00
Justin Drake 7980cf3ef7 Fix 2019-05-01 15:07:55 +01:00
Danny Ryan a25103cefd
Merge pull request #1013 from terencechain/patch-69
Generate seed once for get_beacon_proposer_index
2019-05-01 07:56:57 -06:00
Justin Drake 9b24d06b2c Cleanup 2019-05-01 14:16:55 +01:00
Justin Drake 2e63a9b5a0 clean up 2019-05-01 13:29:03 +01:00
Justin Drake 5df79d7565 Get rid of state_transition.py 2019-05-01 13:14:10 +01:00
Justin Drake 591a2b47c8 Simplify state_transition.py 2019-05-01 12:08:15 +01:00
Justin 8b316c6db4
Start moving state_transition.py to state transitition spec
The state transition spec should be reasonably self-contained, limiting the amount of "magic" outside of it. This PR is a first step in this direction, specifically for operation processing.
2019-05-01 12:04:27 +01:00
Justin f62126d5ee
Update 0_beacon-chain.md 2019-05-01 09:34:09 +01:00
Justin 407902763c
Update 0_beacon-chain.md 2019-05-01 09:33:22 +01:00
Justin 427a53cdae
Remove get_state_root from state transition doc
Remove `get_state_root` from the state transition function spec because it is not used by the state transition function.
2019-05-01 09:24:51 +01:00
Justin bbcf5f0daa
Add 32-byte graffiti
Add 32-byte of arbitrary "graffiti" data in beacon blocks, in a similar vein to `extraData` in Eth1. To be used in wonderful and unpredictable ways (permissionless innovation by block proposers).
2019-05-01 09:19:54 +01:00
Justin Drake a0158c606e Expose get_commitee 2019-05-01 09:09:24 +01:00
Justin Drake a6e76ef9c6 Fix 2019-05-01 08:45:29 +01:00
Justin Drake 2e5ab130c1 Simplify presentation 2019-05-01 07:42:49 +01:00
Danny Ryan b3373a2d71
fix up some PR feedback and testing for #1009 2019-04-30 12:55:14 -06:00
terence tsao c5d6c045e6
Update 0_beacon-chain.md 2019-04-30 11:07:58 -07:00
Justin a40f37b9a2
Update 0_beacon-chain.md 2019-04-30 12:31:11 +01:00
Justin 60888c0c48
Update 0_beacon-chain.md 2019-04-30 12:27:45 +01:00
Justin a23c9f712d
Update 0_beacon-chain.md 2019-04-30 11:44:21 +01:00
Justin adfa014a30
Update 0_beacon-chain.md 2019-04-30 11:38:11 +01:00
Justin 73603f4ed6
Update 0_beacon-chain.md 2019-04-30 11:34:57 +01:00
Justin 66403ad853
Update 0_beacon-chain.md 2019-04-30 11:00:23 +01:00
Justin 09ed9aea98
Update 0_beacon-chain.md 2019-04-30 10:55:09 +01:00
Justin b19e7dbf0d
Update 0_beacon-chain.md 2019-04-30 10:44:29 +01:00
Justin 92140d199e
Update 0_beacon-chain.md 2019-04-30 10:41:09 +01:00
Justin bcd7a83af4
Update 0_beacon-chain.md 2019-04-30 10:39:18 +01:00
Hsiao-Wei Wang 59d7be60db
Fix `is_double_vote` and `is_surround_vote` 2019-04-30 15:19:11 +08:00
vbuterin c13c4c5c7b
Calculate historical start shards from state 2019-04-30 02:09:52 -05:00
Danny Ryan dc458bfd2b
Merge pull request #1004 from ethereum/JustinDrake-patch-10
Fix two effective_balance bugs
2019-04-29 12:06:27 -06:00
vbuterin 77d7aa7630
Attestation committee refactor
* Remove `get_crosslink_committees_at_slot` (that function's ugly man...)
* Make the "base" that everything works off instead be `get_crosslink_committee`
* Attestations store epoch, start shard and shard, no longer slot (slot can be calculated from the other three)
* Retaining start shard in attestations allows `get_attesting_indices` to peek much further back into the past, making it useful for slashings (Phase 1)
* Some two-layer-deep nested loops become one-layer-deep loops
2019-04-29 11:02:39 -05:00
Justin 9dd4b2110a
Fix two effective_balance bugs
* Initialisation bug: initial `effective_balance` be not greater than `MAX_EFFECTIVE_BALANCE`
* Hysteresis bug: do not prevent `effective_balance` to go from `MAX_EFFECTIVE_BALANCE - 1` to `MAX_EFFECTIVE_BALANCE`
2019-04-26 18:46:35 +04:00
Danny Ryan b69423f29b
Merge pull request #996 from ethereum/return_tuple
`_deltas` functions should return `Tuple` instead of `List`
2019-04-26 08:44:51 -06:00
Danny Ryan 48bdfd8642
Merge branch 'master' into hwwhww/clean_up 2019-04-26 08:40:50 -06:00
Hsiao-Wei Wang 649dbfdf6c
bugfix: missing validator 2019-04-26 14:43:05 +08:00
Hsiao-Wei Wang fc7d57eec6
PEP8-ish clean up 2019-04-25 16:03:02 +08:00
Hsiao-Wei Wang 6a92267527
`_deltas` functions should return tuple instead of list 2019-04-25 15:37:05 +08:00
Danny Ryan 777590434b
Merge branch 'dev' into JustinDrake-patch-20 2019-04-24 13:37:50 -06:00
Danny Ryan 2b999a6c7e
fix off by one error for eth1 data voting 2019-04-24 13:15:06 -06:00
Danny Ryan 20d65e040b
pr feedback 2019-04-24 11:31:24 -06:00
Justin b1e1510e21
Update 0_beacon-chain.md 2019-04-24 20:57:31 +10:00
Justin Drake 4734b22883 simplify 2019-04-24 15:32:43 +10:00
Justin Drake b361fdb385 bug 2019-04-24 15:29:46 +10:00
Justin Drake c37789dc5d Tests fixed 2019-04-24 15:27:47 +10:00
Justin Drake 55f042aa71 More fixes 2019-04-24 15:17:25 +10:00
Justin Drake df64eeefa0 Start fixing tests 2019-04-24 14:46:28 +10:00
Justin de01ffd38d
Merge branch 'dev' into JustinDrake-patch-14 2019-04-24 14:35:02 +10:00
Justin f2d885f0d8
Address Danny's comments 2019-04-24 14:23:51 +10:00
Danny Ryan 7b7b867e7d
Merge pull request #936 from ethereum/carl-patch-1
Enables transfers of balance proportions > 32 ETH
2019-04-23 12:24:13 -06:00
JSON cf1c78b241
Update 0_beacon-chain.md 2019-04-23 12:55:15 -05:00
Alex Stokes e26112af37
Update 0_beacon-chain.md
typo fix
2019-04-23 08:36:40 -07:00
Danny Ryan 5619e7df9c
Update 0_beacon-chain.md 2019-04-23 09:21:30 -06:00
terence tsao 2650a2c061
Update 0_beacon-chain.md 2019-04-23 07:16:52 -07:00
Carl Beekhuizen fe01b6f231
Merges dev into carl-patch-1 2019-04-23 13:39:19 +02:00
Danny Ryan 59de05e3e3
Merge pull request #977 from ethereum/JustinDrake-patch-19
Fix activation queue bug
2019-04-22 11:29:42 -06:00
Danny Ryan d9b3021827
Merge pull request #971 from ethereum/vbuterin-patch-2
Signal non-final status of base reward and desired issuance goal
2019-04-22 11:15:10 -06:00
Danny Ryan 706191403c
Merge branch 'dev' into JustinDrake-patch-18 2019-04-22 09:48:43 -06:00
Danny Ryan 0079c635b6
Merge pull request #924 from ethereum/JustinDrake-patch-11
Remove serialization from consensus
2019-04-22 09:41:30 -06:00
Danny Ryan d648b091b5
lint 2019-04-22 09:33:46 -06:00
Danny Ryan 5744fef808
clean up some notes on deposits 2019-04-22 09:18:20 -06:00
Justin Drake 0bdd8e778b Add 0_deposit-contract.md 2019-04-22 23:29:19 +10:00
Justin 9404949015
Split off fork choice in a separate document 2019-04-22 23:18:17 +10:00
Hsiao-Wei Wang 1c5cc1299a
Update specs/core/0_beacon-chain.md
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-04-22 20:49:07 +10:00
Justin 81ee59bca8
Update 0_beacon-chain.md 2019-04-22 16:34:50 +10:00
Justin 6903f2eec7
Update 0_beacon-chain.md 2019-04-22 16:17:14 +10:00
Justin Drake c123fb1b97 Single effective balance per review by Vitalik—significant simplification 2019-04-22 16:13:46 +10:00
Justin dc275f024d
Update 0_beacon-chain.md 2019-04-22 15:16:34 +10:00
Justin 0da60ba90d
Fix activation queue bug
Fix bug [flagged by @NIC619 and @hwwhww](https://github.com/ethereum/eth2.0-specs/pull/850#issuecomment-485275575) whereby the `activation_epoch` of validators dequeued since the finalized epoch was overwritten.

Cosmetic changes:

1) Remove `activate_validator` (there is no overlap between genesis and non-genesis activations)
2) Improve comments related to activation queue
2019-04-22 15:12:30 +10:00
terence tsao 08d921a6c9 Make crosslink_data_root comment more explicit (#973) 2019-04-21 15:48:02 +10:00
Diederik Loerakker 75fae6f311 Change sorted[-1] to max() (#972) 2019-04-20 18:13:45 +10:00
Justin Drake d6644edcc9 Fix test 2019-04-20 17:12:40 +10:00
vbuterin a2a737b728
Signal non-final status of base reward and desired issuance goal 2019-04-20 01:45:18 -05:00
Justin Drake 7642abf114 Fix| 2019-04-20 16:36:34 +10:00
Justin Drake e184f0b3fe Fix 2019-04-20 16:35:02 +10:00
Justin Drake 06f475a844 Fixes 2019-04-20 16:32:41 +10:00
Justin Drake d700ea4406 Fixes 2019-04-20 16:10:25 +10:00
Justin Drake f07b94e77c Fixes 2019-04-20 15:37:12 +10:00
Justin Drake 356ef15166 Merge branch 'JustinDrake-patch-14' of github.com:ethereum/eth2.0-specs into JustinDrake-patch-14 2019-04-20 15:31:19 +10:00
Justin Drake 4d26ae255a Bug fix 2019-04-20 15:31:15 +10:00
Justin d067a9fcf2
Merge branch 'dev' into JustinDrake-patch-14 2019-04-20 15:19:21 +10:00
Justin Drake f908c8d3e0 Revamped balances and incentivisation 2019-04-20 15:17:33 +10:00
Justin 39d0822602
Sane SSZ object default values (#963) 2019-04-19 18:26:54 +10:00
Justin fad9b4672a
Disallow transfers
As discussed in yesterday's call, temporarily disable transfers until the network is deemed stable enough. We can consider doing a "test-run hard fork" changing this constant prior to the phase 1 hard fork.
2019-04-19 18:09:29 +10:00
Hsiao-Wei Wang 408ef7e6eb
Merge branch 'dev' into carl-patch-1 2019-04-19 14:50:48 +08:00
Danny Ryan 523800819b
Merge branch 'dev' into vbuterin-patch-2 2019-04-18 21:17:29 -06:00
Hsiao-Wei Wang 7a435d2e1a
Merge branch 'dev' into JustinDrake-patch-14 2019-04-19 09:37:11 +08:00
Carl Beekhuizen 26afa077fd Resolves conflicts and merges in dev 2019-04-18 23:17:53 +02:00
Danny Ryan faa6a46f15
Merge branch 'dev' into JustinDrake-patch-11 2019-04-18 11:45:45 -06:00
Danny Ryan 741a74a02c
re-add crosslink tests and ensure pass 2019-04-18 11:16:50 -06:00
Carl Beekhuizen d6e616d4fe Merge branch 'dev' into carl-patch-1
* dev:
  Cleanup per-epoch processing presentation (#959)
2019-04-18 12:02:10 +02:00
Justin fb641bc05f
Merge branch 'dev' into JustinDrake-patch-14 2019-04-18 19:51:17 +10:00
Justin Drake 7a016489c1 Moar 2019-04-18 19:33:38 +10:00
Justin 857d9b2ed9
Merge branch 'dev' into prev-cur-crosslinks 2019-04-18 19:09:41 +10:00
Justin d4ce0d20a0
Cleanup per-epoch processing presentation (#959) 2019-04-18 19:08:34 +10:00
Justin Drake 172e106b48 merge 2019-04-18 18:59:44 +10:00
Justin Drake 4244db92ad More cleanups 2019-04-18 18:53:22 +10:00
Hsiao-Wei Wang 743193aa7d
nitpicks 2019-04-18 16:53:02 +08:00
Justin Drake cae5c22718 Simplify get_crosslink_committee_for_attestation and move to test helpers 2019-04-18 18:15:20 +10:00
Justin 6975288254
Merge branch 'dev' into carl-patch-1 2019-04-18 17:52:56 +10:00
Justin 72f4e2d3b6
Update 0_beacon-chain.md 2019-04-18 17:51:50 +10:00
Justin 40a898f125
Update 0_beacon-chain.md 2019-04-18 17:46:31 +10:00
Justin d9afb67e29
Update 0_beacon-chain.md 2019-04-18 17:45:28 +10:00
Alex Stokes 4bca7f984d Add the prefix `state` when accessing the latest deposit count (#961) 2019-04-18 17:43:22 +10:00
Justin Drake 40b55cf433 More fixes 2019-04-18 14:43:24 +10:00
Justin 9ecafb2a1c
Update 0_beacon-chain.md 2019-04-18 14:33:45 +10:00
Justin fbaf771b1a
Update 0_beacon-chain.md 2019-04-18 14:20:34 +10:00
Justin 443786017f
Further decouple justification and finalisation (#958)
Addresses @djrtwo's comment [here](https://github.com/ethereum/eth2.0-specs/pull/925#issuecomment-484123950).
2019-04-18 13:31:19 +10:00
Danny Ryan 8c5f7a571d
Merge branch 'dev' into prev-cur-crosslinks 2019-04-17 20:27:25 -06:00
Justin 91921d8e86
Update 0_beacon-chain.md 2019-04-18 11:52:14 +10:00
Justin 71e1a598d2
Update 0_beacon-chain.md 2019-04-18 11:09:30 +10:00
Justin 3f9a65f1c8
Update 0_beacon-chain.md 2019-04-18 10:59:15 +10:00
Justin 0f8b1c5f3a
Update 0_beacon-chain.md 2019-04-18 10:56:15 +10:00
Hsiao-Wei Wang 5f9e625774
Merge branch 'dev' into start-at-zero 2019-04-18 08:50:50 +08:00
Hsiao-Wei Wang 02cbb35c8a
Merge pull request #957 from ethereum/finality-bug
fix finalization bug
2019-04-18 08:49:08 +08:00
Justin 9c14900c77
Update 0_beacon-chain.md 2019-04-18 10:45:22 +10:00
Danny Ryan 00a40d037d
Merge pull request #955 from ethereum/JustinDrake-patch-15
Remove custody_bitfield from PendingAttestation
2019-04-17 16:25:39 -06:00
Danny Ryan ca8bc77f96
Merge pull request #858 from ralexstokes/update-get-block-root-text
Update the descriptive text to refer to the correct type of root
2019-04-18 04:56:16 +10:00
Danny Ryan c783cdb2f4
fix bug and add transfer tests 2019-04-17 12:31:00 -06:00
Danny Ryan d118eb03c9
Merge branch 'dev' into carl-patch-1 2019-04-17 11:18:29 -06:00
Danny Ryan 5531adcdd1
remove old assertion in get_beacon_proposer_index 2019-04-17 09:41:23 -06:00
Danny Ryan af4d06c8bf
only run justification/finalization after 2 epochs 2019-04-17 09:38:10 -06:00
Danny Ryan 73bd821417
bug fix 2019-04-17 09:26:23 -06:00
Danny Ryan 4bffa87646
fix finalization bug 2019-04-17 08:57:23 -06:00
Danny Ryan 2cb8f1c520
Merge branch 'dev' into start-at-zero 2019-04-17 08:39:25 -06:00
Danny Ryan ef14396532
Merge branch 'dev' into prev-cur-crosslinks 2019-04-17 08:33:13 -06:00
Justin a4d87d44fb
Remove custody_bitfield from PendingAttestation
I don't think we need it :)
2019-04-17 22:22:53 +10:00
Justin cc92ee9f67
Update 0_beacon-chain.md 2019-04-17 15:53:24 +10:00
Hsiao-Wei Wang a93d34b8e4
Merge branch 'dev' into start-at-zero 2019-04-17 12:32:46 +08:00
Justin 57e5409383
Simplify Eth1Data voting (#938)
Remove `Eth1DataVote` object and simplify logic throughout.
2019-04-17 14:30:03 +10:00
Justin 6f56c379d6
Simplify get_justification_and_finalization_deltas
Cosmetic changes related to `get_justification_and_finalization_deltas`:

* Review naming of misc helper functions and variables
* Abstract away common logic and rework for readability
* Add `MAX_FINALITY_LOOKBACK` and `BASE_REWARDS_PER_EPOCH` constants
* Rescale `INACTIVITY_PENALTY_QUOTIENT`

Substantive changes:

* Make logic relative to `previous_epoch` throughout (as opposed to mixing `current_epoch` and `previous_epoch`)
* Replace inclusion delay bonus by an inclusion delay penalty
2019-04-17 14:06:28 +10:00
Hsiao-Wei Wang cc68df8346
Merge branch 'dev' into prev-cur-crosslinks 2019-04-17 12:01:40 +08:00
Hsiao-Wei Wang 587193076e Minor adjustments (#948)
1. Rename `earliest_attestation` to `get_earliest_attestation` to
avoiding conflicting to variable name
2. Extract `proposer_index` out of
`process_proposer_attestation_rewards` loops
2019-04-17 13:35:37 +10:00
Danny Ryan 882937b537 attesation proposer rewards to block processing (#920) 2019-04-17 12:32:50 +10:00
Justin 24492aa36f
Update 0_beacon-chain.md 2019-04-17 10:16:01 +10:00
Carl Beekhuizen ae0afe389f
Cleaner assertion 2019-04-16 20:11:51 +10:00
Carl Beekhuizen ed28515a95 Enables transferes of BAL > 32 ETH 2019-04-16 16:16:13 +10:00
Justin f84818f19c
Decouple justification and finalization processing (#925) 2019-04-16 14:59:35 +10:00
Justin b6b82ae494
Update 0_beacon-chain.md 2019-04-15 08:15:20 +10:00
Justin a25c436b78
Update 0_beacon-chain.md 2019-04-15 08:14:33 +10:00
Justin 9eba123e2e
Remove serialization from consensus
Consensus now only cares about Merkleisation (i.e. `hash_tree_root`), not about serialization (i.e. `serialize`). This simplifies consensus code by a few tens of lines, is conceptually cleaner, and is more future proof.

A corresponding change is required in the deposit contract.
2019-04-15 07:54:08 +10:00
Alex Stokes 40d6a2635a Update 0_beacon-chain.md (#923)
Fix another typo w/ the withdrawal ~> exit queue PR
2019-04-15 07:03:47 +10:00
Diederik Loerakker 2a88dff2be
Merge pull request #919 from ethereum/JustinDrake-patch-10
Cleaner dust checking in transfers
2019-04-14 23:04:12 +10:00
Alex Stokes c01fb1eea6 Update 0_beacon-chain.md (#922)
More clean up on recent switch to exit queue
2019-04-14 22:56:01 +10:00
Alex Stokes bcf10ecf11 Update 0_beacon-chain.md (#921)
Fix typo to set the right property on the correct object
2019-04-14 22:55:38 +10:00
Hsiao-Wei Wang 3c8d1b23a5 Update specs/core/0_beacon-chain.md
Co-Authored-By: djrtwo <dannyjryan@gmail.com>
2019-04-14 22:12:39 +10:00
Justin a376b6607f
Cleaner dust checking in transfers
Inspired by [this](https://github.com/ethereum/eth2.0-specs/pull/916#commitcomment-33170877).
2019-04-14 21:53:32 +10:00
Danny Ryan 3555ab8c36
Merge branch 'dev' into prev-cur-crosslinks 2019-04-14 20:05:35 +10:00
Danny Ryan 0656817346
Merge branch 'dev' into start-at-zero 2019-04-14 19:46:21 +10:00
Danny Ryan 7840d29f2d
Merge pull request #850 from ethereum/vbuterin-patch-13
Withdrawal queue -> exit queue
2019-04-14 19:21:52 +10:00
Diederik Loerakker be86f966f8 fix transfer invariant, credits to @holiman for finding the edge case (#916) 2019-04-14 19:18:00 +10:00
Justin 3394368a66
Update 0_beacon-chain.md 2019-04-14 19:14:27 +10:00
Justin 875b2ba00d
Update 0_beacon-chain.md 2019-04-14 19:11:40 +10:00
Justin 0908ffa653
Update 0_beacon-chain.md 2019-04-14 19:01:53 +10:00
Danny Ryan 704ea7c301
Merge branch 'vbuterin-patch-13' of github.com:ethereum/eth2.0-specs into vbuterin-patch-13 2019-04-14 18:52:19 +10:00
Danny Ryan 06807cf520
fix tests and off by one error 2019-04-14 18:50:05 +10:00
Justin 0b770121fe
Update 0_beacon-chain.md 2019-04-14 18:23:30 +10:00
Justin 229af3deda
Update 0_beacon-chain.md 2019-04-14 18:10:44 +10:00
Justin 7705ecf89c
Update 0_beacon-chain.md 2019-04-14 17:28:45 +10:00
Justin 15bb9676d5
Update 0_beacon-chain.md 2019-04-14 17:04:36 +10:00
Justin d01fb80fd4
Update 0_beacon-chain.md 2019-04-14 17:02:04 +10:00
Justin 0d6448303d
Update 0_beacon-chain.md 2019-04-14 16:49:17 +10:00
vbuterin f85e7ac447
Added churn limit logic 2019-04-13 22:14:05 -05:00
Danny Ryan 37004404d0
add exit queue test 2019-04-14 09:13:53 +10:00
Danny Ryan f7c5b0a1c6
set activation_eligibility_epoch during process_deposit 2019-04-14 08:30:13 +10:00
Danny Ryan eafcab7e58
check crosslinks validity root against previous 2019-04-14 08:24:54 +10:00
Justin 30fe6f5657
Update 0_beacon-chain.md 2019-04-14 00:47:14 +10:00
vbuterin cc2d005917
Merge branch 'dev' into vbuterin-patch-13 2019-04-13 06:18:54 -05:00
Danny Ryan a6b3b11356
ensure no reward for crosslinks taht can't form a chain 2019-04-13 17:49:25 +10:00
Danny Ryan 0a5a5b77d5
Merge branch 'dev' into prev-cur-crosslinks 2019-04-13 15:40:05 +10:00
terence tsao 710bacad75
Update 0_beacon-chain.md 2019-04-13 11:56:55 +10:00
Alex Stokes b34c41c525 Update 0_beacon-chain.md (#911)
Fix prose around state transition functionality
2019-04-13 09:56:19 +10:00
JSON ee1578d22a Update 0_beacon-chain.md (#908) 2019-04-13 09:33:53 +10:00
Danny Ryan a3b020384f
add tests for finality through the first few epochs 2019-04-12 23:17:57 +10:00
Danny Ryan 3c55854072
clean up 2019-04-12 21:16:34 +10:00
Justin 1e32661c4f
Remove references and copyright
Licensing is done at the repo level. The listed references are awkwardly incomplete (only the Python implementation was listed when we have ~10 implementations, and only the Casper paper was listed where we could add many ethresear.ch posts).
2019-04-12 19:54:33 +10:00
Danny Ryan a374e29184
Merge pull request #902 from ralexstokes/fix-ordering-of-process-deposits
Move the ordering of the definition of `process_deposit`.
2019-04-12 19:26:30 +10:00
Danny Ryan c119565d8b
Merge pull request #903 from ralexstokes/update-verify-indexed-attestation
Avoid materializing the merged list.
2019-04-12 19:07:01 +10:00
Alex Stokes 4824b34df3
Avoid materializing the merged list.
Fixes #901.
2019-04-12 19:02:16 +10:00
Danny Ryan ce0f52b52d
Merge pull request #890 from ethereum/proto-fix-justification-bitfield
limit bit-length of justification bitfield to strict 64
2019-04-12 18:59:42 +10:00
Alex Stokes c954eab96d
Move the ordering of the definition of `process_deposit`.
This move matches the symmetry of the other operation processing definitions.
2019-04-12 18:57:55 +10:00
Alex Stokes b966041ddb formatting fix (#899) 2019-04-12 18:56:55 +10:00
terence tsao 38b6e71bd5
Update 0_beacon-chain.md 2019-04-12 15:06:23 +10:00
Justin e9a44545be
Update 0_beacon-chain.md 2019-04-12 13:38:58 +10:00
Justin 47b9cdbb36
Update 0_beacon-chain.md 2019-04-12 13:18:10 +10:00
protolambda 7ffcdcfd7c
bitfield length limit style improvement 2019-04-12 09:12:37 +10:00
Danny Ryan 6ca550489e
prevent underflow of previous epoch in all cases 2019-04-11 22:48:27 +10:00
Danny Ryan 8c32128ffb
initial pass on genesis slot == 0 2019-04-11 22:28:42 +10:00
Danny Ryan 9c662ec4c3
fix shard delta for latest shard change 2019-04-11 18:48:05 +10:00
Danny Ryan b6158e080a
Merge branch 'dev' into vbuterin-patch-17 2019-04-11 18:36:15 +10:00
Hsiao-Wei Wang e2dc12e9f6 Update specs/core/0_beacon-chain.md
Co-Authored-By: ChihChengLiang <chihchengliang@gmail.com>
2019-04-10 16:24:05 +08:00
protolambda 509354582c
limit bit-length of justification bitfield to strict 64, prevent SSZ encoding crash due to too large integer size 2019-04-10 11:14:22 +10:00
vbuterin 7a1b38a6ad
Homogenised start shard
Alternative presentation to #884, should be substantively equivalent
2019-04-09 05:52:32 -05:00
Danny Ryan e246c3fb04
source_crosslink_root to previous_crosslink_root 2019-04-08 12:59:42 +10:00
Chih Cheng Liang ffccf742bd
replace signed_root with signing_root 2019-04-08 09:57:04 +08:00
Danny Ryan 42dc003e91
add previous_crosslink_root and enforce crosslinks form a chain 2019-04-07 17:55:38 +10:00
Danny Ryan 26df4f4bc8
Merge branch 'dev' into prev-cur-crosslinks 2019-04-07 16:26:42 +10:00
Danny Ryan 2baa242ac0
Merge pull request #877 from ethereum/sydney-test-format
A new more complete test format for ETH 2.0 testing
2019-04-07 16:23:04 +10:00
protolambda 117e157f29
update comment, fix net naming 2019-04-07 16:21:50 +10:00
Justin 47464f28dc
Update 0_beacon-chain.md 2019-04-07 08:45:43 +10:00
Hsiao-Wei Wang ebba3f5891
Fix typo 2019-04-07 01:59:10 +11:00
Hsiao-Wei Wang 8958cf86bb
Merge branch 'dev' into vbuterin-patch-13 2019-04-06 22:27:35 +08:00
Hsiao-Wei Wang 5ea5746fdd
Fix `get_genesis_beacon_state` and minor refactoring 2019-04-07 01:24:50 +11:00
Justin 63412d9b9e
Update 0_beacon-chain.md 2019-04-06 22:13:56 +11:00
Justin 7f0a93fc3e
Update 0_beacon-chain.md 2019-04-06 21:07:03 +11:00
Justin 169579ce3b
Update 0_beacon-chain.md 2019-04-06 20:45:11 +11:00
vbuterin 199e7849da Clarify lexicographic hash favoring (#881) 2019-04-06 13:07:26 +04:00
Danny Ryan f677af2179
Merge branch 'dev' into prev-cur-crosslinks 2019-04-05 19:55:47 +11:00
Danny Ryan dc325f7682
clean up a few things from PR 2019-04-05 19:39:03 +11:00
terence tsao 5a77e61160
Update 0_beacon-chain.md 2019-04-04 08:11:12 -07:00
Justin a790afa891
Update 0_beacon-chain.md 2019-04-04 08:23:48 +04:00
Justin d1af9144bc
Update 0_beacon-chain.md 2019-04-03 23:40:54 +04:00
Justin 6ca3c64526
Update 0_beacon-chain.md 2019-04-03 23:24:46 +04:00
Justin 76893cafaa
Missing typehint for `convert_to_indexed`
And some minor cleanups
2019-04-03 23:22:27 +04:00
Justin 2529cb1d74
Update 0_beacon-chain.md 2019-04-03 22:53:41 +04:00
Danny Ryan 1fa88fb6d1
remove previous crosslink check from process_crosslinks 2019-04-03 16:56:13 +11:00
protolambda 96ab5a334d
Add note on configuration of constants 2019-04-03 13:35:40 +11:00
Danny Ryan 39b4ef3892
Merge branch 'dev' into prev-cur-crosslinks 2019-04-03 11:57:07 +11:00
Danny Ryan 2f1ab491f9
Merge branch 'dev' into vbuterin-patch-2 2019-04-03 11:15:58 +11:00
Danny Ryan 75f0af45bb
Merge pull request #873 from ethereum/validator-indices-bug
minor bug `process_attester_slashings`
2019-04-02 18:07:30 -06:00
Danny Ryan 014138baab
pr feedback 2019-04-03 11:04:12 +11:00
Danny Ryan d8df789a70
simplify get_winning_root logic 2019-04-03 10:13:05 +11:00
Justin 37fc79cb94
Update 0_beacon-chain.md 2019-04-02 22:30:26 +04:00
Danny Ryan 529cf4223e
add previous and current crosslinks 2019-04-02 16:00:36 +11:00
Danny Ryan 06d005999a
fix validator_indicies issue in process_attester_slashing 2019-04-02 13:50:06 +11:00
Justin c2edcebee3
Update 0_beacon-chain.md 2019-03-31 20:48:44 +04:00
Justin 79d1f9fb76
Update 0_beacon-chain.md 2019-03-31 20:45:57 +04:00
vbuterin b6be9e1830
Possible aesthetic rework to get_domain
In general I dislike how domains, which should be an unobtrusive out-of-the-way thing that we don't think about much, are taking up so much space in code to express, to the point of them being the single thing preventing `bls_verify` from being expressed in one line of code. Here I reorder arguments and add a default, and make `bls_verify` a one-liner.

Not necessarily convinced that exactly this approach is the way to go, but IMO it's worth considering.
2019-03-31 04:55:24 -05:00
Justin e4c3c556d5
Rename "transaction" to "operation"
Fix #822.
2019-03-31 09:02:10 +04:00
vbuterin 15498f22ef
Fixed exit epoch conditional 2019-03-30 19:26:44 -05:00
Alex Stokes 6f0f2a8f53
Update the descriptive text to refer to the correct type of root 2019-03-30 16:21:09 -07:00
Hsiao-Wei Wang a2dae9a8e0
Fix after merging 2019-03-29 15:26:26 +08:00
Hsiao-Wei Wang 9c4e034bed
Merge branch 'dev' into vbuterin-patch-13 2019-03-29 13:36:00 +08:00
Danny Ryan bad03ba554
Merge pull request #848 from wmpea/patch-1
Minor copyedits to 0_beacon-chain.md
2019-03-28 13:16:01 -06:00
Danny Ryan 66d5026ffe
minor copy edit 2019-03-28 13:15:38 -06:00
Danny Ryan 901478e148
Merge branch 'dev' into JustinDrake-patch-11 2019-03-28 12:14:13 -06:00
Danny Ryan 30e29324e9
Merge pull request #831 from ethereum/vbuterin-patch-3
Merge attestation verification logic
2019-03-28 11:33:34 -06:00
Danny Ryan ba47a8f4c4
remove unused set_bitfield_bit hlper 2019-03-28 11:29:45 -06:00
Danny Ryan 1f657cfec5
remove custody_bitfield from indexedattestation. add two separate arrays for 0 and 1 bit 2019-03-28 11:26:04 -06:00
Hsiao-Wei Wang aa4bbcc1c8
Bugfix 2019-03-29 00:43:28 +08:00
vbuterin deb0e32590
Fixes to make Justin happy 2019-03-28 10:51:36 -05:00
vbuterin 1aaa0030fc
Withdrawal queue -> exit queue 2019-03-28 08:58:18 -05:00
William M Peaster 458eb99133
Minor copyedits to 0_beacon-chain.md
Approximately a dozen minor copyediting fixes of non-code text for improved clarity, consistency, and accuracy.
2019-03-27 14:15:50 -05:00
William M Peaster b5bf56376b
Minor copyediting corrections to 0_beacon-chain.md
A handful of minor editing changes made to non-code text for the purposes of improved clarity, consistency, and accuracy.
2019-03-27 14:00:28 -05:00
Danny Ryan fbb09795ed
fix convert_to_indexed custody bitfield bug 2019-03-27 08:31:56 -06:00
Danny Ryan e9cdcac29e
Merge branch 'dev' into JustinDrake-patch-11 2019-03-26 14:09:07 -06:00
Danny Ryan 63e7346cfb
standaline -> indexed 2019-03-26 13:40:19 -06:00
Danny Ryan 81e0e494a8
Merge branch 'dev' into vbuterin-patch-3 2019-03-26 13:30:33 -06:00
Danny Ryan 654351faea
Merge branch 'dev' into vbuterin-patch-16 2019-03-26 13:04:18 -06:00
Danny Ryan 2c5a68b5b5
remove registry_change options from shuffling functions 2019-03-26 12:32:24 -06:00
Danny Ryan a8410b8b84
add some attestation tests. fix genesi crosslink bug 2019-03-26 11:27:07 -06:00
Danny Ryan 2c8e9a11e7
Merge branch 'dev' into vbuterin-patch-18 2019-03-26 10:13:17 -06:00
Danny Ryan c5f1db27f5
Merge branch 'dev' into JustinDrake-patch-7 2019-03-26 07:38:39 -06:00
Justin 87d2618a49
Update 0_beacon-chain.md 2019-03-26 13:21:49 +00:00
Danny Ryan 7f53f257cd
Merge branch 'dev' into JustinDrake-patch-4 2019-03-26 07:14:34 -06:00
Danny Ryan 0121adea38
fix beacon proposer function and mod v-guide to not have lookahead for proposing 2019-03-26 07:09:48 -06:00
Danny Ryan fcc1c64acb
Merge branch 'dev' into vbuterin-patch-13 2019-03-26 06:45:40 -06:00
Danny Ryan fceebeec4e
backport 839 into dev 2019-03-25 11:25:33 -06:00
Justin acc5f314ac
Update 0_beacon-chain.md 2019-03-25 14:54:43 +00:00
Justin fb837400b2
Can't spell (thanks continuous integration!) 2019-03-25 14:49:35 +00:00
Justin b7441e8ab7
Generalise `slash_validator` for phase 1
Make `slash_validator` friendly to phase 1. This is a cosmetic change in the context of phase 0.
2019-03-25 14:30:59 +00:00
Hsiao-Wei Wang 80e2553afd
Update specs/core/0_beacon-chain.md
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-22 09:32:21 -04:00
vbuterin ce18bde5c9
Simplified sorted index check 2019-03-22 06:20:38 -05:00
vbuterin 3ee9fc0cc7
Merge attestation verification logic
Also rename slashable attestation to standalone attestation to reflect its broader functionality in phase 1.
2019-03-22 06:10:44 -05:00
vbuterin e8257db320
Removed hanging min 2019-03-22 05:40:41 -05:00
Hsiao-Wei Wang b34858c67b
Refactor `get_justification_and_finalization_deltas` 2019-03-22 14:21:33 +08:00
Hsiao-Wei Wang ae67e9513b
Fix type hinting and add docstrings 2019-03-22 12:56:54 +08:00
Hsiao-Wei Wang 512ceff1bb
Merge branch 'dev' into vbuterin-patch-20 2019-03-22 11:58:32 +08:00
Danny Ryan 64e3db09d4
Merge branch 'dev' into JustinDrake-patch-19 2019-03-21 16:25:31 -06:00
Danny Ryan d8ad56f759
Merge pull request #828 from ethereum/vbuterin-patch-20-1
Small cosmetic change to slashable attestations
2019-03-21 15:50:08 -06:00
vbuterin 3ece05ccc1
Small cosmetic change to slashable attestations 2019-03-21 16:36:31 -05:00
vbuterin 3b403909e8
Cosmetic improvement to reward/penalty functions 2019-03-21 16:29:14 -05:00
vbuterin 38a5c3640b
Re-added some penalization in case of failure to finalize 2019-03-21 15:13:13 -05:00
vbuterin d1d1b73fb1
Simplify justification and finalization accounting logic
Much of the simplification is cosmetic. The following changes are substantive:

* Inactivity leak penalty specifically on missing the target, not both the target and the source
* Even outside of quadratic leak scenarios, slashing victims suffer offline penalties
2019-03-21 15:11:05 -05:00
Danny Ryan f6da42ffb3
fix markdown issues 2019-03-21 10:04:20 -06:00
Danny Ryan c99fe3fb38
Merge branch 'dev' into vbuterin-patch-3 2019-03-21 08:47:19 -06:00
Danny Ryan fd6d80fcb6
remove get_split_offset from phase 1 doc 2019-03-21 08:24:26 -06:00
vbuterin fdcfc91008
Add docstring into get_split_offset 2019-03-21 07:38:25 -05:00
Hsiao-Wei Wang 2215988415
Merge branch 'dev' into JustinDrake-patch-19 2019-03-20 21:59:40 +08:00
vbuterin fff76749d2
Merge branch 'dev' into vbuterin-patch-3 2019-03-20 08:05:22 -04:00
Justin 833691b8af
Update 0_beacon-chain.md 2019-03-20 08:16:39 +00:00
Danny Ryan a8e2b8cd1d
Merge branch 'dev' into vbuterin-patch-11 2019-03-19 16:06:33 -06:00
Danny Ryan acd7fdd762
add a few voluntary exit tests 2019-03-19 16:00:27 -06:00
Danny Ryan 9d7c2b264e
Merge branch 'dev' into JustinDrake-patch-20 2019-03-19 15:06:36 -06:00
Danny Ryan 2afbd8a02d
Merge branch 'dev' into JustinDrake-patch-8 2019-03-19 14:44:25 -06:00
Justin b664453a34
Update 0_beacon-chain.md 2019-03-19 20:43:05 +00:00
Danny Ryan ef0b3d2948
Merge branch 'dev' into JustinDrake-patch-20 2019-03-19 14:26:38 -06:00
Danny Ryan be13fa8ec3
Merge branch 'dev' into JustinDrake-patch-14 2019-03-19 14:20:12 -06:00
Danny Ryan 574fd8d63c
Merge branch 'dev' into JustinDrake-patch-18 2019-03-19 14:14:35 -06:00
Danny Ryan 23ef802da5
fix small bug in sytax 2019-03-19 13:25:34 -06:00
Danny Ryan cf06cb59c3
Merge branch 'dev' into JustinDrake-patch-13 2019-03-19 12:40:58 -06:00
Danny Ryan 054a1e3126
Merge branch 'dev' into JustinDrake-patch-12 2019-03-19 12:25:50 -06:00
Danny Ryan bdfc01cf93
Merge branch 'dev' into JustinDrake-patch-11 2019-03-19 12:13:42 -06:00
Danny Ryan f7fab30772
minor adjustment to not repeat committe count calc 2019-03-19 11:40:24 -06:00
Danny Ryan f5826e7f1c
small lint 2019-03-19 11:34:49 -06:00
Danny Ryan c8e9073414
define get_split_offset and squash a couple of bugs 2019-03-19 11:24:36 -06:00
Danny Ryan 009563b2c3
fix a few bugs in testing compute_committee 2019-03-19 11:15:51 -06:00
Justin b50e148642
Update 0_beacon-chain.md 2019-03-19 17:13:25 +00:00