Skip to content

Commit

Permalink
Merge pull request #109 from eth-protocol-fellows/main
Browse files Browse the repository at this point in the history
Update wiki, Mar 21
  • Loading branch information
taxmeifyoucan authored Mar 21, 2024
2 parents fc5286d + f6998bb commit 1b3c2da
Show file tree
Hide file tree
Showing 11 changed files with 108 additions and 11 deletions.
2 changes: 1 addition & 1 deletion docs/_sidebar.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
- [EL Specs](/wiki/EL/el-specs.md)
- Client architecture
- [EVM](/wiki/EL/evm.md)
- [Transaction]
- [Transaction](/wiki/EL/transaction.md)
- [DevP2P]
- [MPT]
- [JSON-RPC](/wiki/EL/JSON-RPC.md)
Expand Down
27 changes: 24 additions & 3 deletions docs/eps/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,28 @@ The first part of the program consists of 5 weeks with introductions to high lev
| March 11 | Testing and security | Mario Vega |
| March 18 | Roadmap and research | Domothy |

The second part of the program offers two distinct tracks focused on development and research with deeper dive into each topic. Detailed schedule coming soon.
The second part of the program offers two distinct tracks focused on development and research with deeper dive into each domain.

| Date | Topic | Speaker | Track |
| -------- | ----------------------------- | -------------------------- | ----------- |
| March 25 | Consensus and Execution specs | Hsiao-Wei Wang, Sam Wilson | Development |
| March 27 | Sharding and DAS | Dankrad Feist | Research |
| April 1 | Execution client architecture | Dragan Pilipovic | Development |
| April 3 | Verkle trees | Josh Rudolf | Research |
| April 8 | Consensus client architecture | Paul Harris | Development |
| April 10 | MEV and censorship | Barnabe Monnot | Research |
| April 15 | Devops and testing | Paritosh | Development |
| April 17 | Purge and Portal Network | Piper Merriam | Research |
| April 22 | Cryptographic precompiles | | Development |
| April 24 | SSF and PoS Upgrades | Francesco D’Amato | Research |
| April 29 | Wrap up | | |


### Streams and recordings

Talks and calls are announced week in advance based on the schedule above. Recordings of all talks can be found on [Youtube](https://www.youtube.com/@ethprotocolfellows) or [StreamEth](https://streameth.org/archive?organization=ethereum_protocol_fellowship) archive.

Apart of these, there are less regular, ad-hoc hangout calls for informal chats and getting to know each other. Join the Discord group to get notified about all the events.

### Streams and recordings

Expand All @@ -40,15 +61,15 @@ Apart of these, there are less regular, ad-hoc hangout calls for informal chats

The first instance of EPF study group is starting in February 2024. It's completely open and permissionless, and it is up to each participant as to how they want to approach it. Whether you want to learn as much as possible, focus only on certain topics or share your knowledge with others, you are welcomed. Although it's opened, [you can register](https://forms.gle/7TqmryC217EPwgqr9) to help us tailor the experience better.

> Join our community [Discord server](https://discord.gg/epfsg)
> Join our community [Discord server](https://discord.gg/addwpQbhpq)
Study group participants will collaboratively develop a comprehensive wiki, serving as an evolving knowledge base for current and future core developers. This will provide students with practical experience in contributing to open source resources, while gaining invaluable experience in documentation and community-driven development.

While this program is designed to act as a precursor to the Ethereum Protocol Fellowship, the study group is for anyone that is interested in learning more about the inner workings of the Ethereum Protocol. Those that have some general knowledge or use of Ethereum and/or blockchains as well as those that have some computer science, technical, or developer experience will get the most from this program.

## Important links

- Discord server: https://discord.gg/epfsg
- Discord server: https://discord.gg/addwpQbhpq
- Weekly talks stream: https://streameth.org/65cf97e702e803dbd57d823f/epf_study_group,
- Sessions calendar: https://calendar.google.com/calendar/u/0?cid=ZXBmc3R1ZHlncm91cEBnbWFpbC5jb20 ([ics format](https://calendar.google.com/calendar/ical/epfstudygroup%40gmail.com/public/basic.ics))

Expand Down
6 changes: 5 additions & 1 deletion docs/eps/nodes_workshop.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ We will only run a client on testnet so the hardware requirements are minimal -
- Additional excercies if there is time
- Systemd service
- Monitoring node

- After the stream, we can switch to [jitsi](meet.ethquokkaops.io/EPFsgWorkshop) for further discussion and troubleshooting

## Additional reading and exercises

Expand All @@ -60,3 +60,7 @@ There are bunch of things we are not going to demostrate during the workshop so
- https://github.com/eth-educators/ethstaker-guides/blob/main/holesky-node.md
- https://notes.ethereum.org/@launchpad/node-faq-merge
- https://www.coincashew.com/coins/overview-eth/guide-or-how-to-setup-a-validator-on-eth2-mainnet/part-i-installation/monitoring-your-validator-with-grafana-and-prometheus




8 changes: 3 additions & 5 deletions docs/eps/week5.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# Study Group Week 5 | Research and Roadmap

Week 5 will provide an overview of the current research landscape and
Week 5 provided an overview of current research ecosystem and updated roadmap. Second part of the week also included a node [workshop](/eps/nodes_workshop.md).

Join the presentation by [Domothy](https://twitter.com/domothy) on [Monday, March 18, 4PM UTC](https://savvytime.com/converter/utc-to-germany-berlin-united-kingdom-london-ny-new-york-city-ca-san-francisco-china-shanghai-japan-tokyo-australia-sydney/mar-18-2024/4pm).
Watch the presentation by [Domothy](https://twitter.com/domothy) on StreamEth or Youtube. Slides are [available here](https://github.com/eth-protocol-fellows/protocol-studies/blob/main/docs/eps/presentations/week5.pdf).

The talk will be streamed live on [StreamEth](https://streameth.org/65cf97e702e803dbd57d823f/epf_study_group) and Youtube, links will be provided before the call in the [Discord server](https://discord.gg/Tg2PryVJ). Discord also serves for the discussion and questions during the stream.

In addition to this regular talk, there will be also a [workshop](/eps/nodes_workshop.md) on running nodes later during week 5.
[recording](https://www.youtube.com/embed/UClaoL12W00?si=F-H6YMD7hgjjP2AM ':include :type=iframe width=100% height=560 frameborder="0" allow="fullscreen" allowfullscreen encrypted-media gyroscope picture-in-picture web-share')

## Pre-reading

Expand Down
27 changes: 27 additions & 0 deletions docs/eps/week6-dev.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Study Group Week 6 | Consensus and Execution spec

The development track of week 6 will provide a deeper insight into consensus and execution layer specification.

Join the presentation by [Hsiao-Wei](https://twitter.com/icebearhww) and [Sam](https://twitter.com/_SamWilsn_) on [Monday, March 25, 2PM UTC](https://savvytime.com/converter/utc-to-germany-berlin-united-kingdom-london-ny-new-york-city-ca-san-francisco-china-shanghai-japan-tokyo-australia-sydney/mar-18-2024/4pm). (Note it's 2 hour earlier than our regular calls!)

The talk will be streamed live on [StreamEth](https://streameth.org/65cf97e702e803dbd57d823f/epf_study_group) and Youtube, links will be provided before the call in the [Discord server](https://discord.gg/addwpQbhpq). Discord also serves for the discussion and questions during the stream.

## Pre-reading

Before starting with the week 6 content, make yourself familiar with resources in previous weeks, especially 1-3.

Additionally, you can read get ready by studying following resources:

- https://github.com/ethereum/consensus-specs
- https://blog.ethereum.org/2023/08/29/eel-spec
- https://github.com/ethereum/execution-specs

## Outline

- HWW on Consensus specs
- Sam on EELS

## Additional reading and exercises

- https://ethereum.org/en/developers/tutorials/yellow-paper-evm/
- https://eth2book.info/capella/annotated-spec/
2 changes: 1 addition & 1 deletion docs/wiki/EL/evm.md
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ The example above shows only a small section of the account's storage. Like memo
Notice that the storage value persists between examples, demonstrating its persistence within the world state. Since the world state is replicated across all nodes, storage operations are gas expensive.

> ℹ️ Note
> Check out the wiki on [transaction](/wiki/protocol/transaction.md) to see EVM in action.
> Check out the wiki on [transaction](/wiki/EL/transaction.md) to see EVM in action.
## Wrapping up

Expand Down
File renamed without changes.
Binary file added notes/Week 2 EPFsg EL Overview Notes.pdf
Binary file not shown.
Binary file added notes/Week 3 EPFsg CL Overview Notes.pdf
Binary file not shown.
Binary file added notes/Week 4 EPFsg Test Security Notes.pdf
Binary file not shown.
47 changes: 47 additions & 0 deletions notes/gorondan_MVEls_notes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# MINIMUM VIABLE ENSHRINEMENT OF LIQUID STAKING (MVE-LS)

## What is MVE-LS?
MVE-LS is the minimum set of measures that could be implemented at protocol level in a short period of time (preferably in parallel with other congruent upgrades being developed and evaluated for inclusion in Pectra hard fork).
It is the quasi-equivalent of Level 1/3 as per the [Rainbow Staking POC](https://ethresear.ch/t/unbundling-staking-towards-rainbow-staking/18683/8) - Enshrined Operator-Delegator separation:

```
[...]enshrining some separation between operator and delegator[...] might be ok with some level of complexity. We could call a basic operator/delegator separation Level 1 [...]
```
[[1]](#resources)

## Feasibility
* Necessity
- There are risks in relying too much on the social layer and morality to protect the protocol against centralization in the staking scene and countering the emergence of a dominant LST with its afferent perils
- We need an interface to integrate further “protocol services” in a plug-and-play manner
- Limitations of current staking-design to ensure future competitive participation of solo stakers in different categories of protocol services (i.e. economic value and/or agency)
- Ethereum needs good trade-offs to SSF
* Opportunity
- enshrining a variant of the already established staking model with two classes of participants: delegators (stakers) and node operators
- enshrining some measure of operator–delegator separation concomitant with other EIPs that are debated and developed right now, could leverage a lot of the work currently done towards specifying these EIPs:
- EIP-6110 [[5]](#resources) allows for an in-protocol mechanism of deposit processing on the Consensus Layer. Also it will add in-protocol mechanism by which large node operators can combine validators without cycling through the exit and activation queues.
- EIP-7251 [[4]](#resources) will allow a single message to carry more stake; enshrining the operator delegator separation would provide a way for the protocol to functionally distinguish “operator stake” from “delegator stake” on such a message.

## Feature set

| **FEATURE** | **title** | **description** |
| :----------: | :-----------: | :-----------: |
|Feature 1|enshrine Quick Staking Key (Q key)|Allow validators to provide two staking keys: the persistent key (P key) and the quick staking key (Q key) - a smart contract that, when called, outputs a secondary staking key during each slot

```
The protocol would give powers to these two keys, but the mechanism for choosing the second key in each slot could be left to staking pool protocols.
```
[[2]](#resources)
## Implementation POC
MVE-LS POC can be done on top of EIP-6110 specification for future validator deposits and of EIP-7251 for backward compatibility (hard fork)

## Resources
[[1] Unbundling staking](https://ethresear.ch/t/unbundling-staking-towards-rainbow-staking/18683)

[[2] Protocol and staking pool changes that could improve decentralization and reduce consensus overhead](https://notes.ethereum.org/@vbuterin/staking_2023_10)

[[3] Should Ethereum be okay with enshrining more things in the protocol?](https://vitalik.eth.limo/general/2023/09/30/enshrinement.html#what-do-we-learn-from-all-this)

[[4] EIP-7215](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7251.md)

[[5] EIP- 6110](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-6110.md)

0 comments on commit 1b3c2da

Please sign in to comment.