terence tsao
141a8dba87
Reformat Configs for Readability ( #1256 )
2019-01-05 20:36:05 -08:00
Raul Jordan
7e1af4fceb
Remove Use of Proto .GetX for Value Getters ( #1235 )
2019-01-04 21:58:19 -06:00
terence tsao
1314077a4d
Code Clean Up Part 1 - Core Package ( #1216 )
2019-01-01 09:17:44 -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
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
Raul Jordan
952dbe983e
Integrate Block Operations Into State Transition ( #1135 )
2018-12-26 21:15:12 -06:00
Nishant Das
9db1002d87
Updating Genesis Block to Spec ( #1172 )
...
* Updating to spec
* addressing review comments
2018-12-25 14:47:07 +08:00
Raul Jordan
5d26efcfaa
Deprecate types.BeaconState with pb.BeaconState Generated Proto ( #1164 )
2018-12-23 16:51:04 -06:00
Raul Jordan
e49a190754
Replace Types of Block Primitives With Proto Generated Types ( #1137 )
...
* refactor repo to use protos
* removed block successfully in types
* db package updated
* db, core passing
* chain service done
* no more block instances
* all pass
* deprecate all block protos
* tests pass
2018-12-20 17:00:38 -05:00
Raul Jordan
6125c304ba
Remove Deprecated Spec Logic ( #1138 )
...
* no more deprecated stuff
* remove incentive functions
* rem deprecated
* remove funcs
2018-12-19 20:45:21 -05:00
Nishant Das
e92032346f
Partial Implementation of the Slot Processing Routine ( #1083 )
2018-12-19 00:18:42 -05:00
terence tsao
122ad6ef3c
Implemented Get_block_root Helper Function ( #1096 )
2018-12-13 11:35:11 -08:00
terence tsao
b8a9e839e7
clean up BeaconBlock's validator fields ( #1037 )
2018-12-03 19:05:22 -08:00
terence tsao
121654ff12
Removed Deprecated BeaconBlock Fields ( #1035 )
2018-12-03 08:10:47 -08:00
Preston Van Loon
7cd6223755
Rename recent block hashes ( #1029 )
...
* update beacon-state proto to new spec
* AttestationData
* use bazel's pb.go
* boundry -> boundary
* Rename RecentBlockHashes to LatestBlockHashes
2018-12-02 15:25:55 -05:00
Raul Jordan
a99de08562
Merge Active/Cystallized State ( #1019 )
2018-12-01 16:09:12 -06:00
Preston Van Loon
14f5c732c8
Fix error message lint issues ( #824 )
...
* Getting ready to turn up the linter
* fix test
2018-11-19 00:33:05 +08:00
Raul Jordan
f6c1864d6d
Cleanup of Miscellaneous Items Around the Repo ( #790 )
2018-11-16 12:01:41 -05:00
terence tsao
a0569ee7ad
Fixed Validator Shuffling ( #749 )
...
* fixed parent hashes copy bug
* use data
2018-11-14 15:24:34 -05:00
Jie Hou
0de655eaab
Move BlockVoteCache out of ActiveState ( #739 )
2018-11-11 08:54:17 -08:00
Yutaro Mori
8235c35e07
Various Fixes to Allow State Recalculation to Succeed ( #733 )
...
* Allow state recalculations to correctly advance
* fixes
* comments
2018-11-08 19:13:50 +01:00
Raul Jordan
6476fb54af
Dynamic Chain Test Language Package With YAML Parser ( #681 )
2018-11-07 14:07:41 -05:00
Yutaro Mori
278a81032f
Always pass an item through channel when processing blocks ( #728 )
2018-11-06 21:48:11 +01:00
terence tsao
8dc3fb5c85
Removed Demo Debug Flags ( #680 )
2018-11-05 18:35:50 +01:00
Yutaro Mori
4db3a3f2d1
Properly clean up attestations during state transitions ( #705 )
2018-11-03 16:50:14 +04:00
Yutaro Mori
7caedbaf27
Miscellaneous Fixes for Demo ( #694 )
...
* Various fixes to get code in line with demo
* more fixes
2018-10-23 11:07:43 -05:00
Yutaro Mori
4c5099c8ba
Miscellaneous Cleanup Around Block Processing Logic ( #684 )
...
* Cleanup code around block processing
* gazelle
* gofmt
2018-10-22 16:04:17 -05:00
Raul Jordan
81ff9fd7e3
Implement GHOST Beacon Chain Fork Choice Rule ( #643 )
2018-10-17 23:23:18 -05:00
Yutaro Mori
c00a1d3132
Replace LevelDB with Bolt ( #666 )
2018-10-17 01:11:24 -05:00
Nishant Das
5117e6d195
Refactor Crystallized State ( #641 )
2018-10-15 06:17:07 -07:00
Yutaro Mori
8bffae1316
Various cleanup and bugfixes around validator/RBC interaction ( #657 )
2018-10-14 10:29:57 -05:00
Yutaro Mori
b00cdb656a
Cleanup simulator service ( #653 )
2018-10-13 16:22:36 +09:00
Yutaro Mori
d1eefa5cc7
Use consistent hash formatting ( #650 )
2018-10-12 08:35:49 -07:00
Nishant Das
c67a084b55
Clean Up Todos and Add in Issue Checker ( #640 )
2018-10-11 13:52:09 -05:00
Yutaro Mori
724ae3c999
Implement Precise Ticker For Slot Interval ( #635 )
2018-10-10 11:17:48 -05:00
Yutaro Mori
ce99bd7605
Refactor to Create DB Package ( #582 )
2018-10-05 13:14:50 -04:00
Preston Van Loon
8bcddf5fdc
Migrate dependencies on @com_github_ethereum_go_ethereum//event ( #601 )
...
* Add go-ethereum's event and
* remove swp file
* goimports
* remove unused code
* fix gazelle
2018-10-02 21:49:01 -04:00
Raul Jordan
593e3dcdf9
Beacon Node Determines Slot From Genesis Block if ChainState Detected ( #606 )
2018-10-02 15:07:33 -05:00
terence tsao
d5bf733948
Fixed Simulator Can't get ParentSlot ( #602 )
2018-10-02 13:34:26 -05:00
Raul Jordan
1abed55bdd
Update Beacon/Validator Flags to Disable Reward/Cross-Link Checking by Default ( #597 )
...
* flag updates
* enable att validity, cross links, rewards
* tests all pass
* fix race
* fix cov
* fix flag
* fix conf
* fix race
* fix gazelle
2018-10-02 10:04:37 +08:00
Preston Van Loon
6e2b6229fe
Revert "Fixed Sync With Simulator ( #588 )" ( #600 )
...
This reverts commit 085b45626e
.
2018-10-01 20:54:45 -04:00
terence tsao
085b45626e
Fixed Sync With Simulator ( #588 )
2018-10-01 14:14:10 -05:00
terence tsao
d65e2a4157
Implemented Dev Flag to Use Demo Config ( #586 )
2018-09-27 23:48:39 -07:00
Raul Jordan
e10baf7c80
Validator Assignment RPC Beacon Node Stream ( #563 )
2018-09-26 21:34:35 -05:00
terence tsao
b59a4eef4e
Fixed Bugs after Crosschecking 2.1 Spec ( #564 )
2018-09-23 22:36:51 -07:00
terence tsao
1aeb0e6b10
Part 1 of Attestation Service - [sync -> blockchain -> rpc] ( #548 )
...
* Revert "Add Skip Coverage Condition in Coverage.sh (#416 )"
This reverts commit 72a5dd1cf4
.
* add coverage.sh back
* beginning sig aggregation routine
* fixed errors
* fixed existing tests
* merged master
* add attestation build.bazel
* private visibility
* tests for attestation service
* lint
* bazel gazelle
* add validator beacon file
* lint
* tests for sync service
* removed tmp.go
* bazel gazelle
2018-09-24 09:22:09 +08:00
terence tsao
1988dd0d5d
Change Default Validator Balance to Big Int ( #559 )
2018-09-22 13:15:39 -07:00
Raul Jordan
419cff2512
--Dev Mode Flag for Local Demo/Development ( #537 )
2018-09-21 16:02:17 -05:00
Raul Jordan
fa96e57ca2
Re-Add Block Validity Checks ( #541 )
2018-09-21 14:33:53 -05:00
Raul Jordan
190a976d3d
Validator Clients Use an Internal Clock to Determine Slot Responsibility ( #467 )
2018-09-21 09:32:20 -05:00
Raul Jordan
4bc2176898
Refactor Block Processing + UpdateHead to Use Slot Numbers ( #474 )
2018-09-18 09:06:28 -04:00
Nishant Das
cddae7a306
Implement RPC Messaging Between Validators ( #475 )
...
* Adding Proto files
* Move to shared package
* adding attestation sub
* gazelle
* attestation check
* proposal finished
* Add in attesters responsibilities
* fixing dependency issues
* adding topics
* refactoring tests
* Adding more tests
* adding more changes
* gazelle
* removing attester p2p
* remove mock
* changing to new proposer model
* changing tests
* making changes
* gazelle
* adding gomock
* adding rpc methods, reverting changes to other proto files
* gazelle and test changes
* adding tests
* adding mocks and tests
* gazelle
* fixing merge issues
* lint
* lint
2018-09-16 09:12:36 +08:00
terence tsao
ae84cfcfa2
Implement Proposer Attestation Check for Block Validity ( #508 )
2018-09-15 07:51:17 -07:00
Jie Hou
be11f2f103
Check attestation slot number ( #515 )
2018-09-13 22:07:30 -07:00
terence tsao
9639161fcc
Aligning With Latest 2.1 Spec ( #513 )
2018-09-13 17:36:57 -07:00
terence tsao
593c1ec9fc
Filled in ContainsBlock for Blockchain Service ( #512 )
...
* Revert "Add Skip Coverage Condition in Coverage.sh (#416 )"
This reverts commit 72a5dd1cf4
.
* add coverage.sh back
* filled in contains block to not always return false
* fixed lint
* lint
2018-09-13 23:24:18 +08:00
terence tsao
a630abae59
Dynasty Transition During Block Processing ( #498 )
2018-09-11 20:17:20 -07:00
terence tsao
861b960ed9
Implement Attester Responsibilities for Demo ( #487 )
2018-09-11 10:08:31 -07:00
Yutaro Mori
f312c013fc
beacon-chain: Refactor Beacon Chain To Simplify Block Processing ( #473 )
2018-09-11 07:09:41 +02:00
terence tsao
b0f5ef0da0
Save Attestation and AttestationHashes to DB ( #472 )
2018-09-08 18:52:18 -07:00
terence tsao
d4209b7357
beacon: Process Crosslink During Cycle Transition ( #482 )
...
* Revert "Add Skip Coverage Condition in Coverage.sh (#416 )"
This reverts commit 72a5dd1cf4
.
* add coverage.sh back
* save attestations to db
* added tests
* use them in service.go
* process crosslink records
* revert
* revert
* revert
* test
2018-09-08 17:20:06 +02:00
terence tsao
fe3c647c45
Skip Block if Attestation is Bad ( #455 )
2018-09-04 16:18:55 -07:00
Nishant Das
42d93812ce
beacon: Implement Sync Handler for Block Requests By Slot Number ( #461 )
...
* Persist Dag
* Add schema
* Add new message
* add mapping
* Adding check to save block
* Removing blocks mapping
* Make changes to block processing
* Change from mapping to a slice of hashes
* Adding tests to core
* adding more tests
* Fixing service test
* Add comments and fix bazel
* fix lint
* fix conflicts
* addressing review comments
* Removing references to active
* fixing tests with active state
* Protytype for #440 : Persist blocks and latest state in DB
* simplify code
* removing block registry
* fix test
* adding block removal/iterator
* Addressing review comments
* Addressing comments
* Adding block request
* removing extra line
* making vars private and adding canonical key
* fix lint
* splitting methods
* adding more changes
* lint
* improving coverage
* removing decodeslotnumber
* Able to search for and send blocks
* adding core tests
* adding tests
* adding documentation
* addressing raul's comments
* lint and gazelle
* addressing yutaro's comments
* improving coverage
* improve coverage
* improving coverage
2018-09-04 10:48:07 -04:00
Nishant Das
4891f68929
Persist Blocks and State in DB ( #440 )
...
* Persist Dag
* Add schema
* Add new message
* add mapping
* Adding check to save block
* Removing blocks mapping
* Make changes to block processing
* Change from mapping to a slice of hashes
* Adding tests to core
* adding more tests
* Fixing service test
* Add comments and fix bazel
* fix lint
* fix conflicts
* addressing review comments
* Removing references to active
* fixing tests with active state
* Protytype for #440 : Persist blocks and latest state in DB
* simplify code
* removing block registry
* fix test
* adding block removal/iterator
* Addressing review comments
* Addressing comments
* removing extra line
* making vars private and adding canonical key
* fix lint
* splitting methods
* adding more changes
* lint
* improving coverage
* removing decodeslotnumber
* gazelle
* remove todos
* addressing preston's comments
* remove slotnumber
* lint
2018-09-03 00:44:03 +08:00
Ivan Martinez
d30d81a608
Rename all mentions of height to slot ( #456 )
...
#442
2018-09-01 12:01:53 -04:00
Yutaro Mori
f0abbf6f26
Refactor Validator Shuffling Logic ( #444 )
...
* Refactor and fix bugs for validator shuffling logic
* fix lint errors
* fixes
* address pr comments
* comments
* typo
* fix tests
* better readability
* gofmt
2018-08-30 22:55:52 -04:00
terence tsao
366e5168ba
Initialize New Cycle during Block Processing ( #443 )
2018-08-29 16:21:15 -07:00
terence tsao
f37a59d2f8
Part 5 of Aligning Beacon Chain with Latest 2.1 - Block Vote Cache ( #436 )
2018-08-28 17:55:56 -07:00
terence tsao
6389877154
Part 4 of Aligning Beacon Chain with Latest 2.1 - Bootstrapping Genesis ( #430 )
2018-08-25 11:59:46 -07:00
terence tsao
1598ae8605
Part 3 of Aligning Beacon Chain with Latest 2.1 - Processing Attestations ( #423 )
2018-08-24 09:07:23 -07:00
Raul Jordan
4a1b5db07b
beacon: Store Incoming Blocks and Calculated States in DAG ( #422 )
...
* begin with a block/state dag approach in prep for fork choice
* add TODOs for fork choice items, add data structure for forks
* remove syncing and processing states for incoming block sync
* simulator only broadcasts blocks now, no more state simulation
* fix sim tests, no more state sim
* bazel rerun
* naive fork choice
* split update head routine
* pesky race conditions
* fork choice rule works
* dag + fork choice working
* canonical head storage across sessions
* todo: save dag
* no more stalling after 10 blocks, using event feeds
* address review
* sync instead uses event feed
* refactored pure funcs into casper package
* tests pass
* fix lint
* refactor get blockhash
* refactor blockhashforslot
* event feed for incoming blocks in chainservice
* use config
* addressed all comments
* fix typo
* address yutaro comment
* using db interface
* check if parent hash in previous slot DAG
* works
* tests
* drop ffg suffix
* bazel gazelle
* full cov validators by height shard
* gazelle
* state tests
* all state tests
* 100% cov types and 99% cover casper
* cov up
* 80% blockchain cov
* fix lint
2018-08-23 22:09:59 -06:00
terence tsao
e1f727cbb2
Implement Beacon Node Validator and Observer Entry Points ( #414 )
2018-08-20 08:50:11 -07:00
Raul Jordan
d3b5a7c67b
beacon: Implement Beacon Node gRPC Server Streams ( #400 )
...
* remove client helper in internal
* tidying up the sharding client project
* update all docs
* implementing beacon rpc server methods
* address prs
* begin coverage
* regen proto
* include announcement chans
* tests pass, announcing as canonical only after block has passed all processing
* system functioning yay
* tests pass
* bootstrap validators
* default balance params
* fix lint
* fix all tests
* increasing cov
* 100% test cov rpc
* build file for internal
* typo
* graceful stop
* merge with Terence's PR
* address review comments
* fixed blockchain tests and lint
* added ethdb
* persists last simulated session
* cov
* ready
* fix lint
* fix cov tests
* fix lint
* config options for args
* fix lint
* lint fix
2018-08-17 21:34:56 -06:00
terence tsao
06ca8e758f
beacon: Improve Test Coverage for Beacon Chain Package ( #402 )
2018-08-14 22:49:59 -06:00
terence tsao
1f56c4304d
Part 1 of Aligning Core Blockchain Package with Latest 2.1 Spec ( #371 )
2018-08-13 17:58:37 -07:00
Raul Jordan
cd90598a90
client: Update Attester to Use Beacon Node RPC, Replacing SMC Completely ( #365 )
2018-08-09 17:54:59 -05:00
Ivan Martinez
390ac62ed8
Update docs client/beacon-chain wide ( #386 )
2018-08-09 11:25:48 -07:00
terence tsao
7841c53db0
Each Service Should Run a Single Main Routine ( #382 )
2018-08-07 12:56:28 -05:00
Nishant Das
2cf7fa0174
Check Last Finalized Epoch ( #357 )
...
* Adding proto topics
* Adding crystallized state request
* Reverting shanges to proto
* Adding db checks
* get crystallised state
* Finalize epoch for mapping
* more changes
* cleaning up main routine
* adding tests
* fix test
* Adding ability to save blocks
* Adding block fetcher
* Another test for setting finalized epoch
* adding final tests
* finished tests
* adding comments
* gazelle
* Making requested changes
* Fixing lint
* stop sync from exiting
* fixing lint
* lint
* Adding new request type to proto
* Making changes to block/state requests
* Change tests
* fixing error messages
* gazelle and lint
* adding back crystallised state
* fix tests
* Fixing merge conflicts
* Addressing review comments
* Changing back to one service
* removing case
2018-08-07 20:12:10 +08:00
terence tsao
0a5e091ad3
Fixed Deficiency in Apply Reward & Refactored Blockchain Functions ( #367 )
2018-08-02 10:47:49 -07:00
terence tsao
2c4bfeeef0
sync functions for active and crystallized states ( #358 )
2018-07-31 18:13:54 -07:00
Raul Jordan
cccd675a84
beacon: Initial Sync Network Simulator ( #341 )
2018-07-30 23:41:27 -05:00
Yutaro Mori
f9d23da2dd
Decouple Database From the ServiceRegistry ( #335 )
2018-07-29 23:14:50 -07:00
Nishant Das
d7a88dffa4
Implemeting Validator Rewards and Penalties ( #323 )
...
* Adding Validator Rewards
* Addressing review comments
* Adding Penalties
* Adding changes
* Breaking up functions
* Cleaning up
* Adding slashing conditions
* Adding slashing condition boiler plate
* Adding tests
* Adding comments
* Adding comments
* Add in Pubkey
* Adding more tests
* Adding more unit tests and making name changes
* Add beacon chain test helper and fix references to it
* Adding rewards test
* Adding all tests
* Addressing review comments
* Remove slashing conditions
* fix lint
* Fixing merge issues
* removing commented function
* removing newline
* fix golint
2018-07-30 00:22:15 +08:00
Raul Jordan
9ab02849b6
beacon: Initial Beacon P2P Protobufs, Subscriptions ( #327 )
2018-07-28 15:53:02 -04:00
Yutaro Mori
09ca832a5f
beacon: Beginning the Sync Service for the Beacon Chain ( #322 )
2018-07-25 11:57:44 -05:00
Raul Jordan
d46f1f6502
beacon: Block Processing Validity Conditions ( #310 )
2018-07-23 12:54:41 -04:00
terence tsao
3abfb77b87
Outline for Active State Transition Function ( #309 )
2018-07-22 13:00:10 -04:00
Raul Jordan
b6cd890a67
Log Verbosity Flags + Logrus Package Level Logs With Fields ( #304 )
...
Former-commit-id: f7344b7d3fb2fa07f0fd421c5ed3721f6c7a9258 [formerly e678ab2f1681d9492c0e1b142cd06ee08a462fdb]
Former-commit-id: d942da3d5cfcde921bebb149c26edd5c4ed178dd
2018-07-21 12:51:18 -05:00
Raul Jordan
92af8bc351
Rename Entire Project to Repo, Change Import Paths and Readmes ( #298 )
...
Former-commit-id: b7b8bbd10777012ae6f7d30eb6b05c3b1c3ec5d3 [formerly 06e1112fa0e1092a7137186d3a386972daa2effe]
Former-commit-id: ff2bc760c9dafb6250f056606eb2cbf96b6afa5b
2018-07-20 16:31:26 -05:00
Raul Jordan
4d5d229f0f
beacon: Define a Core Blockchain Package and Persisted Structure for Beacon ( #278 )
...
Former-commit-id: bbd5b46e7f64f762350d6fb496492207e70d7130 [formerly 43a37f7139b7d1d90f0c27a7406b63bdf390ad96]
Former-commit-id: bb7a2ff0a7619f8de0bd38cd2c9eb0de7c189edb
2018-07-19 11:31:50 -05:00