Prague Planning

Prague Meta Thread


EIP

Status

T-shirt Size

PR

Besu POC or Champion? 

Notes

Driver? EOF

EIP-3540

EIP-3670

EIP-4200

EIP-4750

CFIXL
Danno Ferrin

Let's us ship faster and include more EIPs while giving Verkle more time to build and test.

Shippable state in Besu right now. Mega EOF branch is nearly up to date. Engineering work mostly worked out. 

Validation rules to be updated. Tests to be updated. 

Testnets need implementations from Vyper/Solidity → needs spec freeze. Need compiler support.

Timing → Q3 for testnet rollout 

Fork gated on time for fuzzing finding nothing. Running week(s) without issue. 

Driver? Verkle TriesCFI

XXL


Karim Taam, Stefan Pingel, Gabriel FukushimaThe longer we delay the transition, the bigger the headache. Tons of value to users and devs, but more complexity. 
EIP-2537 - BLS PrecompileCFIS
Justin FlorentineShip - updated to use Gnark? Signature aggregation for smart contract wallets
EIP-3068 - BN-256 HashToCurveCFIS
Justin FlorentineShip - updated to use Gnark? 
EIP-3074 - AUTH and AUTHCALLCFIM/L
TBD

Should talk to wallet providers 

Danno - View unsafe as no revocation. No inclusion without it.

Justin - Hesitations from MM team and Consensys

EIP-4444 - History ExpiryCFIS/M
Matt Nelson, Gary Schulte

Need to implement Portal proxy in Besu. Entirely optional! 

https://notes.ethereum.org/@Kolby-ML/HJ-9D5aYp

EIP-6110 - In-Protocol DepositsCFIS

5055

5295

5752

Fabio Di Fabio, Simon DudleyShip - reference implementation ready
EIP-6913 - SETCODE OpCodeCFIS
Daniel LehrnerLukewarm - small improvement on status quo  

EIP-7002 - Execution layer triggerable exits

CFIM

6783, 6801,

6883

Lucas SaldanhaShould talk to some staking providers first

EIP-7212 - Precompile for Secp256R1 

CFIS
Matt Nelson

EIP-7251 - Maximum Effective Balance Increase

CFINA
-CL only

EIP-7377 - EOA Upgrade / Migration Transactions

CFI??
Gary Schulte

EIP-7547 - Inclusion lists 

CFIL or XL
Justin Florentine

EIP-7549 - Move committee index outside Attestation

CFINA
-CL only 

Verkle vs. EOF 

EOF First, Verkle Second (Pros & Cons)

Pros

  • Ready to ship this year. Verkle is not 
  • Necessary step to safely increase the code limit sizes 
  • EOF can be safely codesize uncapped 
    • EOF storage and verkle tree → Compatible by chunking into 32bytes and storing in sequence 
    • Jumpdest validation is what causes issues
    • 31 byte in verkle may be overfitting to legacy EVM impl.
  • Good for zk 
    • Dynamic jumps 
    • Only have static jumps in EOF 
    • Static register reallocation 
    • Stack height validation requirements 
    • Cross-compilation
    • No-code introspection in EOF
  • More time to work on Verkle

Cons

  • "Small feature fork scope" might not allow for EOF 
  •  Consensus risk (long period of testing?) 
  • Layer 2 zk development will take time to adopt 

Verkle First, EOF second 

Pros

  • Shorter migration and less state to migrate !!!
  • Less complexity of adding EOF EVM and adding risk
  • Verkle functionality improvements (getting the stuff faster) 
  • More time for L2s to adopt EOF
    • Verkle not mandatory for immediate fork coverage 

Cons

  • More time to work on Verkle if we ship second