Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge discussion and todos from #2257 #2280

Closed
5 of 9 tasks
djrtwo opened this issue Mar 26, 2021 · 6 comments
Closed
5 of 9 tasks

Merge discussion and todos from #2257 #2280

djrtwo opened this issue Mar 26, 2021 · 6 comments
Labels
Bellatrix CL+EL Merge

Comments

@djrtwo
Copy link
Contributor

djrtwo commented Mar 26, 2021

#2257 got the basic merge spec to a solid footing. The following are the list of discussion points and todos that were not completed within the context of that PR. These are left for future work and discussion.

Note: This is not an exhaustive merge todo list but is instead only open points from #2257

  • Debates around application_state_transition (should the spec know about the ApplicationState or just about its root hash)
  • Consider eliminating uint256 requirement on beacon-chain side in PoWBlock and TD comparison
  • Consider max block size in relation to ApplicationPayload and where should such validation happen. At gossip, inside beacon chain, or just in application gas limit. Max TX size times max txs is 16GB!
  • Consider Union type for transaction list with a single OPAQUE_SELECTOR for first merge fork. More specific, structured selectors for each TX type to follow
  • Post-London add base_fee to ApplicationPayload
  • Add Hash32 type to provide more specificity than Bytes32 and to further disambiguate from Root
  • Modularize components of fork choice in phase 0 to better facilitate code reuse Pure consensus upgrade version of the merge #2257 (comment)
  • Potentially rename Eth1Data -- DepostContractData
  • Consider adding fields to block to ensure there is a clean one-way map from ApplicationPayload to RLP block
@vbuterin
Copy link
Contributor

vbuterin commented Mar 26, 2021

I would also say consider adding some fields back in despite the redundancy. Particularly, adding the block prevhash back in to the ApplicationPayload seems like it could easily do more good than harm around the transition and generally.

It feels like there's important simplifications that can come from making sure that there is a clean pure one-way map from ApplicationPayload to an RLP block.

@mkalinin
Copy link
Collaborator

PR addressing additional fields in ApplicationPayload, #2295

@vshvsh
Copy link

vshvsh commented Jun 17, 2021

Can we pipe becon chain block roots to eth1x as well? Would be very useful for applications that depend on beacon chain, like staking pools, which are forced to use oracle these days.

@mcdee
Copy link
Contributor

mcdee commented Jun 17, 2021

Can we pipe becon chain block roots to eth1x as well? Would be very useful for applications that depend on beacon chain, like staking pools, which are forced to use oracle these days.

The beacon state root would be a useful addition, not sure that individual block roots would gain anything.

@mkalinin
Copy link
Collaborator

There is a plan to introduce BEACONBLOCKROOT opcode after the Merge. Exposing block roots allows for reading data from either a block or a state.

@mkalinin
Copy link
Collaborator

mkalinin commented Jul 1, 2021

(4) Addressed in #2472

@hwwhww hwwhww closed this as completed May 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bellatrix CL+EL Merge
Projects
None yet
Development

No branches or pull requests

6 participants