ChainSafe / ChainSafe/lodestar
Ephemery Testnet Configs
- Dominant language
- TypeScript
- Stars
- 1.4k
- Forks
- 483
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 156
Description
### Problem description
Include configs to easily connect to the ephemeral testnet, "ephemery".
Description of Ephemery, its behaviour and the integration plans by @taxmeifyoucan :
[Ephemery](https://ephemery.dev/) is a new kind of testnet which is intended for short term testing use cases. It automatically resets back to genesis after every given period which enables reclaiming faucet funds, clearing validator set and keeping small state.
Ephemery runs since December 2022 but is mostly run by external tooling. There is ongoing effort to implement specs also within clients, not only externally. All resources for using the testnet are here: https://github.com/ephemery-testnet/ephemery-resources.
Current specs for client requirements can be found in [the draft EIP](https://github.com/taxmeifyoucan/EIPs/blob/d298cdd8eaf47a21e7770e5c6efef870587c924d/EIPS/eip-6916.md).
### Solution description
Add the `--ephemery` config.
Add additional flags for developer options related to downloading / generating genesis (see below).
### Additional context
**Add Ephemery to the Lodestar network options (cli and config packages)**
- [x] Add ephemery flag
**Additional genesis options**
Default: load genesis from a URL (checkpointz server). Additional [developer] options currently envisaged:
- [x] Use backup download URL (ephemery.dev)
- [x] Use flag to override with custom path to a `genesis.ssz` file provided by user
- [ ] Use flag to generate genesis with script at `packages/ephemery`. Note: user dependency [eth2-testnet-genesis](https://github.com/protolambda/eth2-testnet-genesis).
**Reset**
- [ ] Research phase ongoing for ephemery reset.
Contributor guide
Research direction
Start in Lodestar's CLI and config packages by reviewing the existing --ephemery option and genesis-loading behavior. Read packages/ephemery, the linked draft EIP, and the ephemery resources; done means the remaining genesis-generation and reset requirements are resolved and the relevant developer options work as documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100