Commit Graph

36 Commits

Author SHA1 Message Date
Luke Anderson
6cbef7b58b
Undoing changes to ChainSpec. The discrepancies from the Eth2.0 spec are necessary in our case. 2019-09-05 20:06:46 +10:00
Luke Anderson
4339e372c7
Updated the API spec.
- Moved ENR into it's own object
 - Moved the POST request parameters into the requestBody attribute (instead of query)
 - Updated IndexedAttestation to Attestation
 - Updated path for current_finalized_checkpoint
 - Completed the /spec and /spec and /spec/slots_per_epoch endpoints
 - Completed the /beacon/state/genesis endpoint
 - Completed the /spec/eth2_config endpoint
 - Fixed the prometheus example value
 - Added various example values to reflect real world values
 - Fixed incorrect indenting of Eth1Data
 - Added the whole ChainSpec schema
2019-09-05 00:39:54 +10:00
Luke Anderson
777987a49e
Updating the spec to align with what's implemented.
- Filled the OpenAPI spec for some major functions:
  - /beacon/state
  - /beacon/get_finalized_checkpoint
  - /beacon/state_root
 - Created some new schemas in the spec, such as Shard, Checkpoint, Validator, Eth1Data, BeaconState, PendingAttestation, Crosslink
2019-09-03 20:13:26 +10:00
Luke Anderson
c13f27e245
Updating REST API.
- Made /beacon/state return the current 'head' state when no parameters are provided.
 - Added some of the YAML api spec stuff to the /beacon/state endpoint in the rest_api spec.
2019-09-03 16:30:04 +10:00
Luke Anderson
eaec5e7b69
Start implementation of 'get attstation' validator function.
- Created new /beacon/validator/attestation endpoint
 - Updated some small issues with the API spec.
2019-08-29 14:58:49 +10:00
Luke Anderson
b9276da9db
Flesh spec. & update display bugs.
- Add correct string formatting when incorrect parameters provided.
 - Fill /beacon/block and /beacon/block_root endpoints
 - Add 500 error responses to endpoints as appropriate
2019-08-29 13:36:51 +10:00
Luke Anderson
5b5e458938
Flesh out the API spec for the /network endpoints. 2019-08-29 13:12:56 +10:00
Luke Anderson
ca07d72453
Removed methods for 'chain_id', since this is no longer applicable to ETH2. 2019-08-29 12:42:45 +10:00
Luke Anderson
0bd5ce65f4
Renamed the YAML spec document inside the 'docs' folder. 2019-08-28 21:26:18 +10:00
Luke Anderson
77e2f576af
Further aligning the API & implementation.
- Completed implementation of /beacon/head
 - renamed 'latest_finalized_checkpoint' to 'current_finalized_checkpoint' for consistency
 - Reorganised list of endpoints in both spec & router so that they match
 - Fixed the content-type modifications for /metrics
 - Added a new 'RFC' tag to the spec, to tag things that we have not implemented and aren't sure if it's useful.
 - Moved 'deposit_contract' under /spec
2019-08-28 21:25:38 +10:00
Luke Anderson
16ec330a79
Started aligning API spec with implementation.
- Adding some missing fields to structs
 - Rearranged the endpoints in the rest_api router, and renamed, using an 'implementation_pending' function
 - Added 'content-type' headers, to distinguish difference with /node/metrics
 - Updated OpenAPI spec to v0.2.0
    - Split /node/fork into /node/chain_id and /beacon/fork
    - Moved /metrics to /node/metrics
    - Added example to /node/metrics, since it's text/plain
    - Moved /node/network to just /network
    - Added lots of stubs for endpoints which exist in the router
    - Reordered large parts of the OpenAPI spec
    - Moved /chain/beacon/... to just /beacon/...
2019-08-28 02:05:19 +10:00
Paul Hauner
ce43a59fff
Update env.md (#506)
Resolves #505
2019-08-27 12:19:17 +10:00
Paul Hauner
c4ced3e0d2
Fix block processing blowup, upgrade metrics (#500)
* Renamed fork_choice::process_attestation_from_block

* Processing attestation in fork choice

* Retrieving state from store and checking signature

* Looser check on beacon state validity.

* Cleaned up get_attestation_state

* Expanded fork choice api to provide latest validator message.

* Checking if the an attestation contains a latest message

* Correct process_attestation error handling.

* Copy paste error in comment fixed.

* Tidy ancestor iterators

* Getting attestation slot via helper method

* Refactored attestation creation in test utils

* Revert "Refactored attestation creation in test utils"

This reverts commit 4d277fe4239a7194758b18fb5c00dfe0b8231306.

* Integration tests for free attestation processing

* Implicit conflicts resolved.

* formatting

* Do first pass on Grants code

* Add another attestation processing test

* Tidy attestation processing

* Remove old code fragment

* Add non-compiling half finished changes

* Simplify, fix bugs, add tests for chain iters

* Remove attestation processing from op pool

* Fix bug with fork choice, tidy

* Fix overly restrictive check in fork choice.

* Ensure committee cache is build during attn proc

* Ignore unknown blocks at fork choice

* Various minor fixes

* Make fork choice write lock in to read lock

* Remove unused method

* Tidy comments

* Fix attestation prod. target roots change

* Fix compile error in store iters

* Reject any attestation prior to finalization

* Begin metrics refactor

* Move beacon_chain to new metrics structure.

* Make metrics not panic if already defined

* Use global prometheus gather at rest api

* Unify common metric fns into a crate

* Add heavy metering to block processing

* Remove hypen from prometheus metric name

* Add more beacon chain metrics

* Add beacon chain persistence metric

* Prune op pool on finalization

* Add extra prom beacon chain metrics

* Prefix BeaconChain metrics with "beacon_"

* Add more store metrics

* Add basic metrics to libp2p

* Add metrics to HTTP server

* Remove old `http_server` crate

* Update metrics names to be more like standard

* Fix broken beacon chain metrics, add slot clock metrics

* Add lighthouse_metrics gather fn

* Remove http args

* Fix wrong state given to op pool prune

* Make prom metric names more consistent

* Add more metrics, tidy existing metrics

* Fix store block read metrics

* Tidy attestation metrics

* Fix minor PR comments

* Allow travis failures on beta (see desc)

There's a non-backward compatible change in `cargo fmt`. Stable and beta
do not agree.

* Tidy `lighthouse_metrics` docs

* Fix typo
2019-08-19 21:02:34 +10:00
Paul Hauner
845f336a59
Interop chain start strategies (#479)
* Implement more flexible beacon chain genesis

* Fix compile issues from rebase on master

* Rename CLI flag

* Adds initial documentation for TOML files

* Update docs readme

* Add first version of cli_util

* Dont write cache fields in serde

* Tidy cli_util

* Add code to load genesis YAML file

* Move serde_utils out of tests in `types`

* Update logging text

* Fix serde YAML for Fork

* Make yaml hex decoding more strict

* Update deterministic key generate for interop

* Set deposit count on testing genesis state

* Make some fixes for deposit count

* Remove code fragements

* Large restructure of docs

* Tidy docs

* Fix readme link

* Add interop docs

* Tidy README
2019-08-06 13:29:27 +10:00
Luke Anderson
6de9e5bd6f Spec. for REST API (#455)
* A first run at fleshing full REST API spec.
 - Added a new REST OpenAPI YAML specification to the docs folder, starting from the minimal validator spec.
 - Added a bunch of additional endpoints, including network information and beacon chain information.
 - Current yaml file has not been checked for syntax or any correctness.

* Fixed REST OpenAPI Spec.
 - Updated spelling mistakes, indentation, and incorrect fields.

* Added block_discovery endpoint to REST API spec.

* Added /node/stats endpoint
 - /node/stats endpoint provides information about the running process
 - Added some extra TODOs as reminders.

* Added missing Attestations to REST spec.
 - Added ability to get attestations and pending attestations from chain data.
 - Moved the Attestaion object into its own schema, with reference.
2019-07-29 10:01:56 +10:00
Age Manning
3752a8f860
Merge pull request #459 from adlerjohn/adlerjohn-dev-env-setup-submodules
Fix submodule init command in docs to also update
2019-07-27 11:18:39 +10:00
John Adler
fec7168512
Fix lots of typos. 2019-07-26 15:26:06 -04:00
John Adler
69ad55af19
Fix submodule init command to also update. 2019-07-26 13:31:31 -04:00
Maximilian Ehlers
57c065e915 Update installation.md (#448) 2019-07-22 19:12:13 +10:00
jzaki
1d1ae5c075 Update instructions 2019-07-10 13:15:38 +10:00
jzaki
efcbb16491 Update installation notes to include git-lfs step. 2019-07-09 14:52:05 +10:00
Paul Hauner
d87c84b5c5
Update readme 2019-06-25 14:02:19 +10:00
Luke Anderson
c61c4d93c1
Added a quick 'documentation.md' file, to describe where the Lighthouse technical documentation is, and how it can be updated. 2019-05-01 15:13:30 +10:00
Paul Hauner
ebb7349ee3
Merge pull request #279 from ltfschoen/patch-1
docs: Fix typos
2019-03-05 19:22:18 +13:00
Luke Schoen
2b1549358f
docs: Fix typo 2019-03-04 14:53:52 +01:00
Luke Schoen
0eddfa5556
docs: Fix typos 2019-03-04 14:46:56 +01:00
Paul Hauner
35c914baa6
Revert "Merge pull request #200 from sigp/new-structure"
This reverts commit d7a3545be1, reversing
changes made to 1da06c156c.
2019-02-14 12:09:18 +11:00
Paul Hauner
1b2fcde047
Fix typo 2019-02-13 16:06:41 +11:00
Paul Hauner
c1ec46ef85
First pass of docs update 2019-02-13 16:04:10 +11:00
Chris Natoli
cfb9a1a3ae
Update onboarding docs to point to new docs 2019-01-07 17:06:07 +11:00
Chris Natoli
94a0725032
Add 'lighthouse.md'; Update structure; Move info into relevant files. 2019-01-07 16:57:09 +11:00
Chris Natoli
27c6d14a61
Add serenity doc; Move info from readme/onboarding into serenity doc; 2019-01-07 15:14:48 +11:00
Chris Natoli
4cb2efb042
Start #93; Update documentation. 2018-12-18 11:39:53 +11:00
John Omar
4d58d454b9
Added three more Rust learning resources that I've been using. 2018-11-02 14:13:32 -07:00
John Omar
a49143f1f2
Typo on word usage 2018-10-05 17:20:53 -07:00
John Omar
2770cb4490
create onboarding.md
Added some reading material for people new to Rust and/or Ethereum. My goal is to expand the onboarding docs to include specific guides on getting started on Lighthouse.
2018-10-05 17:19:16 -07:00