Commit Graph

147 Commits

Author SHA1 Message Date
Raul Jordan
ec9240106e
Implement WaitForChainStart RPC Server and Client (#1421) 2019-01-30 13:28:53 +01:00
terence tsao
c0f36e467b
Eliminate Custody Logic for Phase 0 (#1408) 2019-01-30 11:11:13 +01:00
Ivan Martinez
e9cfc08549 Update all beacon constants to latest in spec (#1407)
* Update all beacon constants

* Fix documentation

* Fix sync time in config

* Fix some names
2019-01-29 12:16:50 +08:00
Raul Jordan
ed1c440e0d
Hash Proto Helper Function (#1414)
* hashproto

* fix hash proto

* lint
2019-01-28 17:08:27 +01:00
Jie Hou
4a383de5b4 More Strict Input Length Check when Decoding Struct (#1409) 2019-01-28 11:41:11 +01:00
Nishant Das
1e862511aa
Replace Solidity Contract With Vyper (#1343)
* adding deposit contract

* Adding bindings

* remove unused info

* shifting deploy function over

* new changes

* fixing tests and moving log utils to contract package

* new changes,helpers, fixing tests

* fix failing test

* readme

* contract change

* changes to contract

* new changes,helpers, fixing tests

* missing files

* adding constructor to contract

* lint

* updating with spec

* finally got it fixed

* add in deposit arguments

* new changes

* all tests pass

* addresing raul's and terence's comments

* remove vrc
2019-01-28 16:45:28 +08:00
Ivan Martinez
858231c90c Change baserewardquotient to spec and remove Gwei from config (#1388)
* Change baserewardquotient to spec and remove Gwei from config

* Attempt to fix test

* Fix tests
2019-01-25 15:10:53 +08:00
Ivan Martinez
45e9eda43c Normalize ETH to Gwei client-wide (#1381) 2019-01-24 15:29:04 -08:00
Andrei Ivasko
69c8d9072f Health check for Prometheus service (#1320) 2019-01-23 17:26:25 -08:00
Antoine Toulme
fde3d782ca use little endian for the data length encoding when performing a merkle hash (#1350) 2019-01-23 10:18:45 +08:00
terence tsao
5cb361895d
Rm Shard Committees 2 - Get Crosslink Committees Helpers (#1360) 2019-01-21 23:38:26 -08:00
Nishant Das
7ff544fddf
Fix travis and Other Linter Errors (#1356)
* fix travis and other linter errors

* remove megacheck
2019-01-21 13:35:34 +08:00
Jie Hou
247e8a5f8c SSZ: Switch to Little Endian (#1354)
* Change encode to little endian

* Fix decode
2019-01-21 12:44:17 +08:00
terence tsao
779bccba1e
Rm Shard Committees 1 - Update Protos and Configs (#1353) 2019-01-20 10:26:33 -08:00
Raul Jordan
f89fce9bd7
Implement Basic LMD Ghost Fork Choice Skeleton + Helper Funcs (#1310)
* add fork choice helpers

* LMD GHOST basic implementation

* add todos

* add in the initial test and finalize rest of functions

* added tests

* more simulation, adding trivial case with only one option for a head

* panics

* begin helper function tests

* more helper tests

* higher vote wins

* LMD Ghost full test

* comment

* add types

* optimize

* prepared

* deposits for chain

* lint

* use the hash beacon block util

* rem unnecessary db methods

* comments

* setup works
2019-01-19 10:57:51 +08:00
Preston Van Loon
19d9ad3e37
Revert "add unit test for test broadcast (#1127)" (#1348)
This reverts commit 685e299c45.
2019-01-18 19:27:21 -05:00
Jonathan Gimeno
685e299c45 add unit test for test broadcast (#1127)
* add unit test for test broadcast

* execute goimports

* add import peerstore

* refactor and check message equals expected

* remove not needed sleep

* add function to connect hosts to host

* refactor test for better reading

* refactor to only use one channel

* refactor subs to channel

* close channels instead of sending boolean value

* use goimports

* copy value to avoid race condition

* remove TODO comment

* fix issues with gometalinter

* run gazelle

* reduce sleep time

* add comments to goroutines
2019-01-17 20:43:22 -05:00
terence tsao
463cd58171
Implement Process Penalties and Exit Logic (#1291)
* implemented process pentalties and exit logic

* tests

* add MaxWithdrawalsPerEpoch to config

* preston's feedback, replaced index with idx

* s/e/penalizedEpoch

* removed blank line
2019-01-15 21:52:57 -08:00
Preston Van Loon
592c5c3d92 Refactor hashing of beaconblock to shared (#1315)
* Add beacon block hash function

* Refactor/remove old hash method

* gazelle
2019-01-15 00:41:20 +08:00
terence tsao
e313e97666
Implement Validator Rotation Logic (#1279) 2019-01-13 12:52:31 -08:00
Andrei Ivasko
b29188128d ToBytes32 (#1306) 2019-01-13 09:04:14 -05:00
ratikesh9
99def96cc2 Generic Slices library to support different data types (#1219)
* Generic Slices library to support different data types
** Main module added under slice_generic.go
** Test cases passing
** Modified Bazel Build accordingly to run test suite

* Periods added for the generic slice functions

* Build through gazelle & linter fixes

* Generic library using reflection for set operations

* Improvement in test cases including float 32

* Error Handling using generic error message for unsupported type

* Linter fixes and including more test cases

* Linter fixes

* Linter fixes in Errof function & increasing test coverage

* Test cases corrections

*  Benchmark test added for reflection & non reflection functions
Redundancy removed for various data type
Panic removed from the code & error handled

* documnet linter error removed

* Benchmark done with SSZ for reflection and non-reflection based functions

* Bazel build file updated

* gofmt & golinter error fixes

* Added data type support for uint32,int32,byte,int64,uint64

* Removed the redundant code and condition of error handled

* changes in linter & fixes

* Linter fixes

* Individual error handled for slices

* Removed unwanted variable t

* linter fixes

* Removed unwanted conditions

* linter & test cases fix

* Linter fixes in slice generic

* rebuilding with test
2019-01-13 15:57:39 +08:00
Preston Van Loon
5b14c8695d
Actually test p2p service against the service definition (#1304) 2019-01-12 23:35:00 -05:00
Raul Jordan
3c5f5cfcd3
Advance Beacon State Transition Part 4: Simulate Proposer Slashings (#1297)
* deposit definition according to latest spec

* ssz decode input data tests

* fix todo

* ignore XXX fields in struct

* fix

* timestamp

* gazelle run processing

* process deposit complete

* all logic complete

* verify merkle branch

* gazelle

* process deposit func

* diff cov 1005

* add todo"

* all test cases written down

* most tests complete

* ttl timestamp fail

* 100% code coverage in deposits

* fix params

* encode deposit data helper func

* state transition with no slots failing with panic at calcnewblockhashes

* smaller deposits for chain start

* state advancement benches

* ran go tests

* bazel

* improve the thing

* lint

* works works works

* all conflicts fixed

* edit readme to specify tests format

* edit readme to specify tests format

* skip slots works yay

* gazelle

* edit readme to specify tests format

* wrapped up all randao simulation

* fix

* passing

* goimports

* move to slices pkg

* deadcode

* deposit yaml tests

* created deposit trie implementation in Go

* created deposit trie implementation in Go

* gazelle

* merkle branch generation

* merkle branch generation

* more merkle debugging

* fix deposit trie

* include new merkle trie functions

* update all deposit operations

* capitalize

* advancing deposits fully works, grows the validator set

* wrap up time formatting

* lint fix

* include all information in the README

* edit conf

* revert

* clean up before merge

* successfully e2e test proposer slashings

* fix comments
2019-01-12 10:11:43 +08:00
Raul Jordan
5258f3d3d1
Advance Beacon State Transition Part 2: Simulate Block Randao at Every Slot (#1252) 2019-01-11 18:55:01 +08:00
Raul Jordan
1f11b821ab
Implement PoW Chain Deposit Trie in Go (#1285) 2019-01-11 16:29:30 +08:00
Kushagra Sharma
ef41dcfe3b Documented p2p.Server.Broadcast (#1166)
* Documented Server.Broadcast

* Fixed documentation formatting
2019-01-10 22:56:17 -05:00
Preethesh Puthran
afcfc47273 Added tests for iputils (#1265)
* Added tests for iputils

These tests reference issue #1264 on prysm.
The purpose behind the changes is to validate
results of the return value for the function
ExternalIPv4. Using regular expressions to validate
the ip address. Bazel build configuration has also
been updated.

* Added tests for iputils

These tests reference issue #1264 on prysm.
The purpose behind the changes is to validate
results of the return value for the function
ExternalIPv4. Using regular expressions to validate
the ip address. Bazel build configuration has also
been updated.

* Updated external_ip_test
2019-01-10 20:08:22 -05:00
Preston Van Loon
b23ca60efd
Add simple version to binaries via golink (#1286)
* Add version linking to binaries via --workspace_status_command=./scripts/workspace_status.sh

* dont export some things

* lint and better date

* even better date
2019-01-09 23:19:33 -05:00
Raul Jordan
4bb6196f4f
Wrap Up Data Structure Renaming (#1270)
* spec renames

* fix goimports

* fix items
2019-01-09 03:49:17 -06:00
terence tsao
138bc37a60
Renaming Poc_ and Pow_receipt_ fields (#1271) 2019-01-08 20:42:42 -08:00
Raul Jordan
c86bd54ad1
Simulated Backend State Transition Tests Part 1 (#1221) 2019-01-06 09:25:43 -06:00
terence tsao
141a8dba87
Reformat Configs for Readability (#1256) 2019-01-05 20:36:05 -08:00
Preston Van Loon
aa4f66edeb fix some lint issues (#1239)
* fix some lint issues

* print error

* unname the unused params
2019-01-05 21:12:59 -06:00
terence tsao
074ac07dc8
Replace Validator Status Code With Activation/Exit Slot (#1233) 2019-01-04 22:39:07 -08:00
Raul Jordan
ccc2a4b91f
Process Validator Deposits (#1184) 2019-01-04 23:39:34 -06:00
Raul Jordan
7e1af4fceb
Remove Use of Proto .GetX for Value Getters (#1235) 2019-01-04 21:58:19 -06:00
Jie Hou
e5d92a5e11 Implement SSZ Tree Hash Algorithm (#1211) 2019-01-02 11:14:12 -08:00
terence tsao
d3acd397fb
Implemented Process Validator Registry (#1213) 2018-12-31 10:24:52 -08:00
Jie Hou
b82b80a216 Remove Struct Fields Ordering for SSZ Encoding/Decoding (#1214) 2018-12-30 17:02:06 -08:00
Preston Van Loon
a901a154dc
Health check endpoints for services (#1183)
* /healthz part1

* lint, fix

* lints and todos

* add p2p status test

* Add test for service registry Statuses

* fix my fake errors for the linter

* Test healthz handler

* Run gazelle
2018-12-30 16:20:43 -05:00
Nishant Das
2138e1a838
fix helper (#1198) 2018-12-30 11:03:36 +08:00
Andrei Ivasko
fc97243bbd Remove Explicit Declaration of Repeated Demo Config Values (#1209) 2018-12-29 18:23:00 -08:00
Raul Jordan
2c2b30fa3a Implement Process Deposit Validator Helper Function (#1200) 2018-12-29 14:10:48 -08:00
Raul Jordan
b6052372e3
Implement Verify Merkle Branch (#1199)
* verify merkle branch

* gazelle
2018-12-29 12:46:36 -06:00
terence tsao
b23ccc608c
Update Validator Status and Process Ejections (#1186) 2018-12-29 09:24:11 -08:00
terence tsao
e03355f141
Helpers for Updating Validator Status (#1181) 2018-12-29 08:55:16 -08:00
Raul Jordan
a4e1e8cc08
Ignore XXX Fields in XXX SSZ Encoding (#1195)
* ignore XXX fields in struct

* fix encode
2018-12-28 23:12:27 -06:00
Raul Jordan
f5abc780ab
Verify Block Proposer RANDAO (#1104) 2018-12-27 23:19:32 -06:00
Nishant Das
e95e3ed517
Update State Transitions to Process Block Roots (#1176)
* Adding block root updating functions

* Adding block root updating functions

* Commiting stuff

* Updating test

* permissions

* adding tests

* fixing tests and gazelle

* Revert randao changes

* Comment

* Addressing review

* indenting
2018-12-27 14:48:09 +08:00