Document not found (404)
+This URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +diff --git a/README.md b/README.md index d8c8e60..11ada80 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # rescue-ui -[](https://rescuenode.com/) +[](https://rescuenode.ethstaker.cc) -This repository contains the source code for [Rocket Rescue Node](https://rescuenode.com), +This repository contains the source code for [EthStaker Rescue Node](https://rescuenode.ethstaker.cc), a community-run, trust-minimized, and secured fallback node for emergencies and maintenance. This web app uses [wagmi](https://wagmi.sh) + [Web3Modal](https://web3modal.com/) + [Vite](https://vitejs.dev/). @@ -11,6 +11,8 @@ This web app uses [wagmi](https://wagmi.sh) + [Web3Modal](https://web3modal.com/ Run `npm run dev` in your terminal, and then open [localhost:5173](http://localhost:5173) in your browser. +Run `cd docs; make docs; git commit --amend` if the docs were edited. You will need [Docker](https://docs.docker.com/engine/install/) installed and running. + Run `npm run pretty` to normalize style before committing. # Publishing diff --git a/docs/book.toml b/docs/book.toml index 6957027..61519da 100644 --- a/docs/book.toml +++ b/docs/book.toml @@ -1,5 +1,5 @@ [book] -title = "Rocket Rescue Node Docs" +title = "EthStaker Rescue Node Docs" authors = ["jshufro"] language = "en" multilingual = false diff --git a/docs/book/.nojekyll b/docs/book/.nojekyll new file mode 100644 index 0000000..f173110 --- /dev/null +++ b/docs/book/.nojekyll @@ -0,0 +1 @@ +This file makes sure that Github Pages doesn't process mdBook's output. diff --git a/docs/book/404.html b/docs/book/404.html new file mode 100644 index 0000000..ac74ff4 --- /dev/null +++ b/docs/book/404.html @@ -0,0 +1,214 @@ + + +
+ + +This URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +At its {{#title}} core, EthStaker Rescue Node is a community-operated Ethereum node which can be used by node operators as an emergency fallback node during maintenance.
+EthStaker Rescue Node was first created to help Rocket Pool Node Operators survive The Merge in September '22, but quickly proved its lasting utility. +In December 2023, we launched solo validator support.
+We have received a pDAO grant to help ensure its ongoing available to the community.
+Under the hood, EthStaker Rescue Node is actually five nodes to maximize Beacon Client compatibility, a custom reverse-proxy to combat potential malfeasance by its users, and an API and UI to make it easy to access. +For more information, see the Tech Specs.
+Currently, a single Rocket Pool node is restricted to using EthStaker Rescue Node four times per year, for 15 days at a time. +Solo stakers are restricted to using the EthStaker Rescue Node twice per year, for 10 days at a time. +Re-requesting access before the window ends will not consume additional quota nor will it extend your access, unless less than 2 days remain. +Therefore, if you lose your access URL, you can rerequest access to retrieve it, up to 8 or 13 days after it was created.
+The rescue node is currently maintained by:
+The software that secures and powers EthStaker Rescue Node is open source under the AGPL V3 License.
+ + +We are currently requesting donations be directed to the Rocket Pool Grants Management Committee (GMC) Multisig:
+
+
+
0x6efD08303F42EDb68F2D6464BCdCA0824e1C813a
+
+
+EthStaker is providing redundancy for the fallback service for the sake of decentralization. We work closely with the Rocket Pool Rescue Node to maintain this public good in a resilient way.
+Rocket Pool Node operators can use it four times per year.
+Solo stakers can use it twice per year.
Each token is valid for ten or fifteen days, respectively, for solo stakers and Rocket Pool node operators. +If you lose your token, you can simply repeat the request process to retrieve it. +This will not count against your usage limits unless less than 48 hours remain, in which case a new token valid for 10/15 additional days will be issued.
+The Rescue Node only ensures that attestations, proposals, sync committees and other duties are performed- in order to join or leave the smoothing pool, claim rewards, or submit other transactions, you either must have synced local clients, or use infura as a fallback.
+Your Rescue Node URL, from ~/.rocketpool/override/validator.yml will work as a Consensus Client fallback URL in conjunction with an Infura web3 URL configured as an Execution Fallback, if you need to submit a transaction in a pinch.
As of Smartnode v1.11.1, rocketpool node status will contain a message telling you that you are using the Rescue Node, and how much longer you have access.
Addtionally, most validator clients will log a message containing the url. +You can see if it connected by running:
+docker logs rocketpool_validator |& grep rescuenode.ethstaker.cc
+
+If that doesn't work, you can also check the following command to make sure the validator is using the Rescue Node URL:
+docker exec rocketpool_validator env |& grep rescuenode.ethstaker.cc
+
+Follow your validators on beaconcha.in to verify that they are attesting.
+The signed message allows us to enforce our quotas. +We don't save it, or broadcast it, or use it for any other purpose.
+Rocket Pool users who connected with the Smartnode Addon can run rocketpool node status to see when their current username/password will expire.
+All other users can go to this CyberChef page and follow the instructions at the top of the recipe to check their username:password.
Normally, you run three clients. A Validator Client, a Consensus Client, and an Execution Client.
+Prior to connecting to the Rescue Node, your node's architecture looks something like this:
+
+
+
When you connect, you are simply redirecting the Validator Client to point to the Rescue Node instead.
+It doesn't connect directly to a Consensus Client, but instead to an application called rescue-proxy which was custom-built to protect you from the usual dangers of using a public Consensus Client.
After connecting, your node's architecture looks something like this:
+
+
+
This isolates the Validator Client, which is performing your duties, from your Consensus Client and your Execution Client.
+The Execution Client and Consensus Client can now undergo maintenance without any impact on your validation duties.