Skip to content

Commit

Permalink
v0.18.0 (#288)
Browse files Browse the repository at this point in the history
* v0.18.0

* Fix build, move post v0.18 (i.e. 18.1) to a beta version (#289)

* fix LP url

* return link back to goerli

---------

Co-authored-by: Oisín Kyne <4981644+OisinKyne@users.noreply.github.com>
  • Loading branch information
HananINouman and OisinKyne authored Nov 29, 2023
1 parent 85e9503 commit 885df23
Show file tree
Hide file tree
Showing 76 changed files with 5,093 additions and 26 deletions.
2 changes: 1 addition & 1 deletion docs/charon/charon-cli-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The `charon` client is under heavy development, interfaces are subject to change

:::

The following is a reference for charon version [`v0.17.1`](https://github.com/ObolNetwork/charon/releases/tag/v0.17.1). Find the latest release on [our Github](https://github.com/ObolNetwork/charon/releases).
The following is a reference for charon version [`v0.18.0`](https://github.com/ObolNetwork/charon/releases/tag/v0.18.0). Find the latest release on [our Github](https://github.com/ObolNetwork/charon/releases).

The following are the top-level commands available to use.

Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/activate-dv.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import TabItem from '@theme/TabItem';
# Activate a DV

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

If you have successfully created a distributed validator and you are ready to activate it, congratulations! 🎉
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/advanced/quickstart-builder-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import TabItem from '@theme/TabItem';
# Run a cluster with MEV enabled

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

This quickstart guide focuses on configuring the builder API for Charon and supported validator and consensus clients.
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/advanced/quickstart-combine.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ Run the following command:

```sh
# Combine a clusters private keys
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 combine --cluster-dir /opt/charon/validators-to-be-combined
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 combine --cluster-dir /opt/charon/validators-to-be-combined
```

This command will create one subdirectory for each validator private key that has been combined, named after its public key.
Expand Down
3 changes: 1 addition & 2 deletions docs/int/quickstart/advanced/quickstart-sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@ import TabItem from '@theme/TabItem';
# Create a DV using the SDK

:::caution

The Obol-SDK is in an alpha state and should be used with caution., particularly on mainnet.
The Obol-SDK is in a beta state and should be used with caution on testnets only.
:::

This is a walkthrough of using the [Obol-SDK](https://www.npmjs.com/package/@obolnetwork/obol-sdk) to propose a four-node distributed validator cluster for creation using the [DV Launchpad](../../../dvl/intro.md).
Expand Down
4 changes: 2 additions & 2 deletions docs/int/quickstart/advanced/quickstart-split.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: Split existing validator keys
# Split existing validator private keys

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).

This process should only be used if you want to split an *existing validator private key* into multiple private key shares for use in a Distributed Validator Cluster. If your existing validator is not properly shut down before the Distributed Validator starts, your validator may be slashed.

Expand Down Expand Up @@ -56,7 +56,7 @@ At the end of this process, you should have a tree like this:
Run the following docker command to split the keys:

```shell
CHARON_VERSION= # E.g. v0.17.1
CHARON_VERSION= # E.g. v0.18.0
CLUSTER_NAME= # The name of the cluster you want to create.
WITHDRAWAL_ADDRESS= # The address you want to use for withdrawals.
FEE_RECIPIENT_ADDRESS= # The address you want to use for fee payments.
Expand Down
4 changes: 2 additions & 2 deletions docs/int/quickstart/alone/create-keys.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import TabItem from '@theme/TabItem';
# Create the private key shares

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

:::info
Expand Down Expand Up @@ -42,7 +42,7 @@ Alternatively, the private key shares can be created in a lower-trust manner wit
Then, run this command to create all the key shares and cluster artifacts locally:<br/><br/>
<pre>
<code>
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 create cluster --name="mycluster" --withdrawal-addresses="{'${WITHDRAWAL_ADDR}'}" --fee-recipient-addresses="{'${FEE_RECIPIENT_ADDR}'}" --nodes="{'${NB_NODES}'}" --network goerli --num-validators=1
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 create cluster --name="mycluster" --withdrawal-addresses="{'${WITHDRAWAL_ADDR}'}" --fee-recipient-addresses="{'${FEE_RECIPIENT_ADDR}'}" --nodes="{'${NB_NODES}'}" --network goerli --num-validators=1
</code>
</pre>
</TabItem>
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/alone/test-locally.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ The default cluster consists of:
FEE_RECIPIENT_ADDR=<ENTER YOUR FEE RECIPIENT ADDRESS HERE>
# Create a distributed validator cluster
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 create cluster --name="mycluster" --cluster-dir=".charon/cluster/" --withdrawal-addresses="${WITHDRAWAL_ADDR}" --fee-recipient-addresses="${FEE_RECIPIENT_ADDR}" --nodes 6 --network goerli --num-validators=1
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 create cluster --name="mycluster" --cluster-dir=".charon/cluster/" --withdrawal-addresses="${WITHDRAWAL_ADDR}" --fee-recipient-addresses="${FEE_RECIPIENT_ADDR}" --nodes 6 --network goerli --num-validators=1
```

These commands will create six folders within `.charon/cluster`, one for each node created. You will need to rename `node*` to `.charon` for each folder to be found by the default `charon run` command, or you can use `charon run --private-key-file=".charon/cluster/node0/charon-enr-private-key" --lock-file=".charon/cluster/node0/cluster-lock.json"` for each instance of charon you start.
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/group/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Run a cluster as a group

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

:::info
Expand Down
8 changes: 4 additions & 4 deletions docs/int/quickstart/group/quickstart-cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: Run one node in a multi-operator distributed validator cluster usin
# Using the CLI

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

The following instructions aim to assist a group of operators coordinating together to create a distributed validator cluster via the CLI.
Expand All @@ -32,7 +32,7 @@ git clone https://github.com/ObolNetwork/charon-distributed-validator-node.git
cd charon-distributed-validator-node

# Create your charon ENR private key, this will create a charon-enr-private-key file in the .charon directory
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 create enr
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 create enr
```

You should expect to see a console output like
Expand All @@ -59,7 +59,7 @@ Finally, share your ENR with the leader or creator so that he/she can proceed to

3. Run the `charon create dkg` command that generates DKG cluster-definition.json file.
```
docker run --rm -v "$(pwd):/opt/charon" --env-file .env.create_dkg obolnetwork/charon:v0.17.1 create dkg
docker run --rm -v "$(pwd):/opt/charon" --env-file .env.create_dkg obolnetwork/charon:v0.18.0 create dkg
```

This command should output a file at `.charon/cluster-definition.json`. This file needs to be shared with the other operators in a cluster.
Expand All @@ -72,7 +72,7 @@ Every cluster member then participates in the DKG ceremony. For Charon v1, this

```
# Participate in DKG ceremony, this will create .charon/cluster-lock.json, .charon/deposit-data.json and .charon/validator_keys
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 dkg
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 dkg
```

>This is a helpful [video walkthrough](https://www.youtube.com/watch?v=94Pkovp5zoQ&ab_channel=ObolNetwork).
Expand Down
4 changes: 2 additions & 2 deletions docs/int/quickstart/group/quickstart-group-leader-creator.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import TabItem from '@theme/TabItem';
# Creator & Leader Journey

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

The following instructions aim to assist with the preparation of a distributed validator key generation ceremony. Select the *Leader* tab if you **will** be an operator participating in the cluster, and select the *Creator* tab if you **will NOT** be an operator in the cluster.
Expand Down Expand Up @@ -52,7 +52,7 @@ Before starting the cluster creation, you will need to collect one Ethereum addr
cd charon-distributed-validator-node

# Create your charon ENR private key, this will create a charon-enr-private-key file in the .charon directory
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 create enr
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 create enr
```

You should expect to see a console output like
Expand Down
4 changes: 2 additions & 2 deletions docs/int/quickstart/group/quickstart-group-operator.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: A node operator joins a DV cluster
# Operator Journey

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

The following instructions aim to assist a group of operators coordinating together to create a distributed validator cluster after receiving an cluster invite link from a leader or creator.
Expand Down Expand Up @@ -35,7 +35,7 @@ git clone https://github.com/ObolNetwork/charon-distributed-validator-node.git
cd charon-distributed-validator-node

# Create your charon ENR private key, this will create a charon-enr-private-key file in the .charon directory
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.17.1 create enr
docker run --rm -v "$(pwd):/opt/charon" obolnetwork/charon:v0.18.0 create enr
```

You should expect to see a console output like
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Quickstart Guides

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

There are two ways to set up a distributed validator and each comes with its own quickstart
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/quickstart-exit.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import TabItem from '@theme/TabItem';
# Exit a DV

:::caution
Charon is in an alpha state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
Charon is in a beta state and should be used with caution according to its [Terms of Use](https://obol.tech/terms.pdf).
:::

Users looking to exit staking entirely and withdraw their full balance back must also sign and broadcast a "voluntary exit" message with validator keys which will start the process of exiting from staking. This is done with your validator client and submitted to your beacon node, and does not require gas. In the case of a DV, each charon node needs to broadcast a partial exit to the other nodes of the cluster. Once a threshold of partial exits has been received by any node, the full voluntary exit will be sent to the beacon chain.
Expand Down
2 changes: 1 addition & 1 deletion docs/int/quickstart/quickstart-mainnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: Run a cluster on mainnet
# Run a DV on mainnet

:::caution
Charon is in an alpha state, and you should proceed only if you accept the risk, the [terms of use](https://obol.tech/terms.pdf), and have tested running a Distributed Validator on a testnet first.
Charon is in a beta state, and you should proceed only if you accept the risk, the [terms of use](https://obol.tech/terms.pdf), and have tested running a Distributed Validator on a testnet first.

Distributed Validators created for goerli cannot be used on mainnet and vice versa, please take caution when creating, backing up, and activating mainnet validators.
:::
Expand Down
6 changes: 3 additions & 3 deletions src/components/HomepageFeatures.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@ const FeatureList: FeatureItem[] = [
alt: "Image courtesy of the Noun Project",
description: (
<>
<Link to="/docs/sc/introducing-obol-managers">Obol Managers</Link> are
smart contracts for the coordination of Distributed Validators.
<Link to="/docs/sc/introducing-obol-splits">Obol Splits</Link> are
smart contracts for the distribution of rewards from Distributed Validators.
</>
),
link: "/docs/sc/introducing-obol-managers",
link: "/docs/sc/introducing-obol-splits",
},
{
title: "Join the Upcoming Testnets",
Expand Down
5 changes: 5 additions & 0 deletions versioned_docs/version-v0.18.0/cg/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"label": "Contribution & Feedback",
"position": 10,
"collapsed": true
}
57 changes: 57 additions & 0 deletions versioned_docs/version-v0.18.0/cg/bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Filing a bug report

Bug reports are critical to the rapid development of Obol. In order to make the process quick and efficient for all parties, it is best to follow some common reporting etiquette when filing to avoid double issues or miscommunications.

## Checking if your issue exists

Duplicate tickets are a hindrance to the development process and, as such, it is crucial to first check through Charon's existing issues to see if what you are experiencing has already been indexed.

To do so, head over to the [issue page](https://github.com/ObolNetwork/charon/issues) and enter some related keywords into the search bar. This may include a sample from the output or specific components it affects.

If searches have shown the issue in question has not been reported yet, feel free to open up a new issue ticket.

## Writing quality bug reports

A good bug report is structured to help the developers and contributors visualize the issue in the clearest way possible. It's important to be concise and use comprehensive language, while also providing all relevant information on-hand. Use short and accurate sentences without any unnecessary additions, and include all existing specifications with a list of steps to reproduce the expected problem. Issues that cannot be reproduced **cannot be solved**.

If you are experiencing multiple issues, it is best to open each as a separate ticket. This allows them to be closed individually as they are resolved.

An original bug report will very likely be preserved and used as a record and sounding board for users that have similar experiences in the future. Because of this, it is a great service to the community to ensure that reports meet these standards and follow the template closely.


## The bug report template

Below is the standard bug report template used by all of Obol's official repositories.

```sh
<!--- Provide a general summary of the issue in the Title above -->

## Expected Behavior
<!--- What should be happening? -->

## Current Behavior
<!--- What happens instead? -->

## Steps to Reproduce
<!--- Provide a concise set of steps to reproduce this bug. -->
1.
2.
3.
4.
5.

## Detailed Description
<!--- Provide some context for the issue you are experiencing. -->

## Specifications
<!--- Provide some information regarding your local system. --->
Operating system:
Version(s) used:

## Possible Solution
<!--- (Optional) Suggest a fix, reason or implementation for the bug. -->

## Further Information
<!--- Anything else to add?
```

Loading

0 comments on commit 885df23

Please sign in to comment.