467 Commits

Author SHA1 Message Date
Anton Nashatyrev
8ebc4dece8 Local var should stay uint 2019-01-11 15:07:18 +03:00
Ben Edgington
b75ac05ab6 Fix typo seed -> randao_mix 2019-01-11 11:05:43 +00:00
jonny rhea
d2eca73482 added assertion that n >= 0 2019-01-10 18:09:58 -06:00
Alex Stokes
c141d90f0f
Fix typo with initial generation of latest_penalized_exit_balances
The spec as written is not valid python -- the generator of the list
comprehension must be iterable.

It looks like the author simply meant to `range` over the intended length.

This commit fixes the missing `range` operator
2019-01-10 15:41:15 -06:00
Danny Ryan
5b1f352414
Merge pull request #388 from ralexstokes/add-missing-property-to-merkle-verification
Fixes a few bugs with deposit verification.
2019-01-10 12:15:12 -06:00
terence tsao
c589f8273b
Update 0_beacon-chain.md 2019-01-10 08:19:56 -08:00
Alex Stokes
4cf06d908a
Truncate the index into the Merkle tree to bytes[8]
The beacon chain expects a `uint64` in part to avoid big-int computation.
This commit updates the `Deposit` log so that it broadcasts data of the
appropriate size.
2019-01-09 17:18:15 -06:00
Alex Stokes
d62834654f
Broadcast merkle_tree_index in lieu of the deposit count 2019-01-09 17:02:19 -06:00
Alex Stokes
7a6854aab9
Fix variable name that was lost in botched rebase 2019-01-09 16:52:43 -06:00
Alex Stokes
f49f7eddf9
Use the correct name for the amount field 2019-01-09 14:44:06 -06:00
Alex Stokes
c5de2fe710
Add missing deposit root when performing Merkle verification 2019-01-09 14:37:51 -06:00
Alex Stokes
6f5a865508
Reorder type so the ssz serialization matches other uses
There is an order based on the Vyper deposit contract which should be maintained
here. There is also a reference to it when processing `Deposit` messages.

This commit corrects the order here so all serializations will match.
2019-01-09 14:35:26 -06:00
Justin
4ea430207b
Update 0_beacon-chain.md 2019-01-09 14:12:47 -06:00
Alex Stokes
dff84c00b0
Fixes bugs with description of deposit verification.
1. The order of the `deposit_data` serialization does not match the current
Vyper contract. The description now matches that serialization.

2. The `deposit.merkle_tree_index` was not being used (at least explicitly) so
the text now reflects which inputs are to be used for which parameters in the
pseudocode spec that follows.

3. There seems to be a bug where we want the initial leaf to be the `hash` of
the `DepositData`, not the data itself. The text now reflects this requirement.
2019-01-09 14:08:24 -06:00
Alex Stokes
5f19622f86
Add clarifying comment about where this index is coming from 2019-01-09 14:06:45 -06:00
Ben Edgington
61f7e37eff Replace numeric constant with symbolic in Vyper contract
Vyper v0.1.0-beta.6 supports ranges with symbolic constants.
2019-01-08 19:42:22 +00:00
Danny Ryan
9dfc459849
Merge pull request #406 from terenc3t/patch-29
inclusion_slot and inclusion_distance in its own section
2019-01-08 10:49:14 -07:00
Danny Ryan
197b88df92
Merge pull request #404 from akhila-raju/patch-2
Removes naming conflict in get_shuffling.
2019-01-08 09:57:56 -07:00
Danny Ryan
609082c1af
change slot_num to slot_position 2019-01-08 09:57:15 -07:00
Danny Ryan
78ee210d56
fix seed xor in get_shuffling using bytes32 2019-01-08 09:51:12 -07:00
Danny Ryan
fff0989b8c
fix call to hash (from Hash32) 2019-01-08 09:35:51 -07:00
Danny Ryan
f6453a7455
Merge branch 'master' into JustinDrake-patch-1 2019-01-08 10:09:30 -06:00
Danny Ryan
9f87511632
Merge pull request #372 from terenc3t/patch-25
Rewording Validator Registry Precondition
2019-01-08 08:43:59 -07:00
terence tsao
4dab5fc72c
Update 0_beacon-chain.md 2019-01-07 15:55:05 -08:00
Akhila Raju
b78458bbb2
Removes naming conflict in get_shuffling.
The variable name 'slot' in the for-loop in 'get_shuffling' conflicts with the get_shuffling argument name 'slot'. Renames 'slot' in for-loop to 'slot_num'.
2019-01-07 13:06:44 -05:00
Danny Ryan
14e14ce576
Merge pull request #397 from ralexstokes/fix-merkle-bug
Fixes bug with Merkle proof branch selection
2019-01-07 09:45:42 -07:00
Hsiao-Wei Wang
e772c4da6f
Merge branch 'master' into rename_pow_to_deposit 2019-01-07 14:02:11 +08:00
Alex Stokes
c69fa9a793
Fixes typo in sorted function.
In keeping with the rest of the code in this document we adhere to valid Python
where possible.

The custom comparator keyword argument for `sorted` is `key` so this commit
updates its usage when sorting validators by exit order.
2019-01-06 17:41:11 -06:00
Danny Ryan
fd2cc6956f
Merge branch 'master' into vbuterin-patch-19 2019-01-05 08:53:04 -07:00
Alex Stokes
a0e454d86c
Fixes bug with Merkle proof branch selection
This code determines the order in which the next branch element and the
current value should be hashed to produce the parent node in the Merkle tree.

The existing code fails to verify branches constructed in the standard way.

This patch fixes the spec code so that it works properly by using an appropriate
parity calculation.

Example code here to illustrate it working:
https://gist.github.com/ralexstokes/9d82e188bd3286ff74a1fa1dcb5068e0
2019-01-04 09:48:50 -06:00
vbuterin
c24f907088
Put back spaces 2019-01-04 09:22:59 -06:00
Hsiao-Wei Wang
88de4e35f2
Merge pull request #395 from terenc3t/patch-28
Get shard_block_root from crosslink
2019-01-04 16:04:43 +08:00
Hsiao-Wei Wang
fa08e240c8
Merge branch 'master' into HEAD 2019-01-04 15:55:03 +08:00
Hsiao-Wei Wang
61b2b6392c
bugfix and rename
Use `deposit_root_vote` for `DepositRootVote` object and `deposit_root` for the
deposit root hash.
2019-01-04 15:54:48 +08:00
Danny Ryan
36231e698a
Apply suggestions from code review
Co-Authored-By: hwwhww <hwwang156@gmail.com>
2019-01-04 15:54:35 +08:00
Danny Ryan
d360330f83
Merge pull request #394 from ralexstokes/fix-update-validator-registry-fn
Remove dangling `return` statement from spec function
2019-01-03 21:46:34 -07:00
Danny Ryan
a84dd398e4
Merge pull request #392 from ralexstokes/fix-units-ejection-balance
Fix a type error with units of wei when determining ejection balance.
2019-01-03 21:44:08 -07:00
Danny Ryan
d5e6d84269
Merge pull request #391 from ralexstokes/typo/hash-slot
Change "justified hash" to "justified slot"
2019-01-03 21:43:12 -07:00
terence tsao
97bd04607c
Update 0_beacon-chain.md 2019-01-03 19:40:03 -08:00
terence tsao
c0140d72ee
Update 0_beacon-chain.md 2019-01-03 18:23:23 -08:00
vbuterin
a5b1f2cc0a
Moved comment and changed conditional 2019-01-03 19:44:39 -06:00
vbuterin
3f4be7abb7
Fixed activation slot conditional. 2019-01-03 19:42:59 -06:00
Alex Stokes
19a9582a48
Remove dangling return statement from spec function
This function declares that it returns `None` and instead directly mutates the
state.

There is a dangling return statement that this commit deletes.
2019-01-03 19:42:07 -06:00
Alex Stokes
9a83ad7b9b
Fix a type error with units of wei when determining ejection balance.
`EJECTION_BALANCE` is in units of ETH.

`state.validator_balances[index]` is in units of Gwei.

For the ejection computation to work as desired, we need to convert the
`EJECTION_BALANCE` constant from ETH to Gwei.
2019-01-03 14:28:36 -06:00
Alex Stokes
457f84fa64
Change "justified hash" to "justified slot"
There should be a correspondence here but referring to the slot is more
explicit, especially for those who are not as familiar with the
details of FFG finalization.
2019-01-03 12:06:44 -06:00
Hsiao-Wei Wang
f92735454e
Fix verify_slashable_vote_data
The first field of `AttestationDataAndCustodyBit` should be an `AttestationData` object, not an `SlashableVoteData` object.
2019-01-03 16:19:54 +08:00
Hsiao-Wei Wang
b614595fbe
Merge branch 'master' into vbuterin-patch-19 2019-01-03 00:26:31 +08:00
Hsiao-Wei Wang
af8ed89170
Merge branch 'master' into rename_pow_to_deposit 2019-01-03 00:10:18 +08:00
Hsiao-Wei Wang
78e73633bc
Merge pull request #382 from ethereum/remove_shard_reassignment_record
Remove `ShardReassignmentRecord`
2019-01-02 23:48:04 +08:00
Hsiao-Wei Wang
dcaf510213
Merge branch 'master' into rename_pow_to_deposit 2019-01-02 23:44:12 +08:00