FOCIL Breakout #044
Transcript
- Jun Song
gm
- Jihoon
- Nico Flaig
our focil-devnet-1 branch works for heze-devnet-2
- Nico Flaig
need to sort out branches
- Jihoon
Reacted to "our focil-devnet-1 branch works for heze-devnet-2" with 👍
- Toni Wahrstätter
when are clients building / publishing ILs?
- Toni Wahrstätter
is there a starting time (seconds into the slot), and a deadline
- Jihoon
@Marc Here is the change you need for 8198 on the EL: https://github.com/ethereum/consensus-specs/pull/5710
- Marc
Reacted to "@Marc Here is the change you need for 8198 on the EL: https://github.com/ethereum/consensus-specs/pull/5710" with ❤️
- Toni Wahrstätter
yes, this race condition can be improved massively by having the ELs apply the BAL only, without execution, and then build the IL based on that updated/optimistic state
- NC
I think we just keep devnet 1 up until devnet 2?
- Jun Song
Reacted to "I think we just keep devnet 1 up until devnet 2?" with 👍
- Rahul Barman
Reacted to "I think we just keep devnet 1 up until devnet 2?" with 👍
- Jihoon
- Nico Flaig
we might need to prepare a heze-devnet-1 branch then that doesn't have any other heze changes
- Jihoon
- https://github.com/ethereum/consensus-specs/pull/5721 - https://github.com/ethereum/consensus-specs/pull/5724 - https://github.com/ethereum/consensus-specs/pull/5727
- Iván | ethrex
Replying to "@Marc Here is the ch..." Also check https://github.com/ethereum/execution-specs/pull/3703
- Marc
Reacted to "Also check https://github.com/ethereum/execution-specs/pull/3703" with 👍🏾
- Jihoon
- Nico Flaig
I can say how my builder does it but I doubt els work that way
- Nico Flaig
how fast can you reseal a payload?
- Toni Wahrstätter
why would engine_forkchoiceUpdated be called multiple times?
- Toni Wahrstätter
would it be called every time a new IL comes in?
- Nico Flaig
Replying to "would it be called e..." not for every IL but we call it again at start of the slot to make sure the payload satisfies all ILs
- Toni Wahrstätter
Replying to "would it be called every time a new IL comes in?" and when you call it again it will have a different payloadAttributes?
- Nico Flaig
Replying to "would it be called e..." yes can be, but mostly for this scenario it's about a new superset of ILs
- Toni Wahrstätter
Reacted to "yes can be, but mostly for this scenario it's about a new superset of ILs" with ❤️
- Nico Flaig
Replying to "would it be called e..." but if head changed, could be completely new payload attributes for a different head if we predicted incorrectly in prev. slot
- Nico Flaig
how many payload revisions do ELs do today on glamsterdam before CL calls getpayload?
- Toni Wahrstätter
so 1s less time for local building?
- Toni Wahrstätter
yeah, hard to tell. there are good reasons to not call it too early or too late
- Toni Wahrstätter
"just appending" won't work as state root + bal need to be updated too + execution traces
- Toni Wahrstätter
but it shouldn't take much time
- Jihoon
Reacted to ""just appending" won't work as state root + bal need to be updated too + execution traces" with 💯
- Nico Flaig
Replying to ""just appending" won..." my builder takes ~5ms to reseal a payload so not big of a deal but depends how els do this
- Toni Wahrstätter
Replying to ""just appending" won't work as state root + bal need to be updated too + execution traces" ah nice, yeah if it's that fast then this shouldn't be a problem
- Toni Wahrstätter
Replying to ""just appending" won't work as state root + bal need to be updated too + execution traces" with reseal you don't consider state root computation though
- Toni Wahrstätter
Replying to ""just appending" won't work as state root + bal need to be updated too + execution traces" or you're just crazy fast :D
- Nico Flaig
Replying to ""just appending" won..." my builder is optimized for this, os yes it's fast, I doubt ELs are optimized for this though
- Jihoon
- https://github.com/ethereum/EIPs/pull/12394 - https://github.com/ethereum/consensus-specs/pull/5698 - https://github.com/ethereum/execution-apis/pull/911
- Iván | ethrex
I’ll take a look asap, couldn’t do it last week and very unlikely I could this week, I’ll let you know
- Toni Wahrstätter
50 regular txs
- Toni Wahrstätter
A few, probably 2-3 privacy txs
- Toni Wahrstätter
No meant standard frame txs
- Toni Wahrstätter
I think 500k gas?
- Toni Wahrstätter
Privacy txs
- Iván | ethrex
Wasn’t ~250k?
- Toni Wahrstätter
Replying to "Wasn’t ~250k?" Yeah very likely you're right
- Toni Wahrstätter
Replying to "Wasn’t ~250k?" I'm often confusing this
- Toni Wahrstätter
Replying to "Wasn’t ~250k?" Adding deposit + withdrawal into one
- Iván | ethrex
Reacted to "Adding deposit + wit..." with 👍
- NC
Do we need focil breakout if we have a heze devnet 2?
- NC
I mean all testing stuff will be discussed on acdt
- Iván | ethrex
So next breakout stays the same, but the one after that is one week earlier?
- Iván | ethrex
Yeah, better on the next one
Call summary
Targets
- •FOCIL devnet 2 — targeting readiness from ethrex, Lodestar, Nethermind, Prysm; no firm date set - 00:04:31
Decisions
- •Keep FOCIL devnet 1 running until devnet 2 is ready - 00:13:39
- •FOCIL Breakout #46 tentatively moved to November 17 instead of November 10; to be confirmed at Breakout #45 - 00:49:00
Highlights
- Spec Updates:
- ·FOCIL EIP rebased from Fulu to Gloas; transaction-interaction with frames not yet included - 00:13:51
- ·Three CL-spec PRs merged: two minor bug fixes, one IL deadline update (discussed at ACDC) - 00:14:26
- Devnet Status:
- ·FOCIL devnet 1 live but missing slots; Lighthouse fork-choice enforcement missing, PR under review - 00:04:31
- ·ethrex ready for FOCIL devnet 2; has EIP-8198 implemented - 00:06:43
- ·Lodestar merged EIPs 8365, 8015, 8198 to trunk; FOCIL branch merge expected within days - 00:09:04
- ·Lodestar bug: ILs created on payload receipt, not after new-payload call (uses fallback path always); fix needed - 00:09:45
- Client Updates:
- ·Prysm joining FOCIL devnet 2; rebasing Terrence's prior FOCIL implementation - 00:08:11
- ·Nethermind needs to assess EIP-8198 EL changes before devnet 2 - 00:09:49
- Organizational:
- ·FOCIL Breakout #45 in two weeks as scheduled; Breakout #46 tentatively moved to November 17 (from November 10) due to DEF CON - 00:45:38
- ·FOCIL breakout will eventually be absorbed into ACDC; timing TBD, likely around FOCIL devnet 2 - 00:47:28
- El Payload Building:
- ·Besu strategy: first iteration builds minimal IL-only block; subsequent iterations add profitable txs; IL txs also sent to mempool - 00:19:14
- ·Open question: how fast can ELs reseal a payload after new ILs arrive at 9s mark? Nico's builder: ~5ms; production ELs likely not optimized - 00:15:42
- Focil Frames Design:
- ·Marc's frames spec: builder commits to a claims object (tx-hash → evaluation index); included in execution payload envelope - 00:31:48
- ·Per-IL max-verified-gas limit (1M gas) enforced on EL; membership bitmap maps IL transactions to source IL - 00:34:38
- ·Alternative design raised: pass full ILs (not IL-txs) to EL via engine API; EL handles deduplication/omission; cleaner but higher bandwidth - 00:39:18
- ·engine_getInclusionListStatus async ID mechanism questioned; may be unnecessary if alternative design adopted - 00:42:09
Action Items
- •ethrex and all CL/EL teams - Review frames spec PRs (EIPs/12394, consensus-specs/5698, execution-apis/911) and provide feedback - 00:35:25
Key decisions
Keep FOCIL devnet 1 running until devnet 2 is ready
Ensuring continuity between devnet 1 and devnet 2.FOCIL Breakout #46 tentatively moved to November 17 instead of November 10; to be confirmed at Breakout #45
Rescheduling due to DEF CON.
AI Disclaimer: Some content or metadata on EIPsInsight may be AI-inferred or automatically compiled. If you find any discrepancy, please contact us at dev@avarch.org.