Katya:Hello.
Transcript
Jihoon:Hello!
Jihoon:You can wait just a few more minutes.
Jihoon:Alright, I think we can just begin. It doesn't seem like we're gonna spring more people.
Jihoon:So, can you guys hear me okay?
Jihoon:Alright, thank you.
Jihoon:Okay, so hello everyone, welcome to FOCIL Breakout 28.
Jihoon:Today we can share a little bit about
Jihoon:The Hegota status, and then share some development updates, as always.
Jihoon:So, for the Hegota side, we proposed a fossil for a Hegota for Hegota.
Jihoon:Slightly after the last breakout call, we made a proposal.
Jihoon:Here's the link in case anyone missed it.
Jihoon:And to my understanding, we'll be deciding the CL Hegota in the next ACDC, which is on the 19th, so please check that call if you are available.
Jihoon:Alongside with it, I'm currently working on to updating FOCIL spec.
Jihoon:starting from the CL spec, and then…
Jihoon:Execution spec and engine API spec.
Jihoon:The CL spec should be ready by next, say, CDC, that's our plan.
Jihoon:Yeah, so for the CL spec, I'm thinking about two main changes there.
Jihoon:So, one is about IL bit list inclusivity check, and the second one is about, IL compliance check.
Jihoon:Yeah, actually, I was thinking about…
Jihoon:how can I explain this nicely? And I made a… short scrape, so,
Jihoon:Let me share my screen.
Jihoon:Let's see, okay, so, won't be long, don't be afraid. Can you guys see my screen?
Katya:Yes. Yeah.
Jihoon:Okay, cool, thank you.
Jihoon:So, there are two main changes, and I just wanted to explain what that is, because it's a little bit different from what we
Jihoon:Start back in the days, so… Let's start off.
Jihoon:with IL bit list inclusivity check. So, we want to add the IL bit list in the bid, so builders
Jihoon:build in this bit list indicating which ILS they've considered
Jihoon:When building a block. And this serves as a good signal for a proposal.
Jihoon:whether the payload will satisfy the IR constraints.
Jihoon:It's not a guarantee, so builders can provide with
Jihoon:an IL-incompliant block at the end, but if you see a bid that has an inclusive IL bit list, you'd expect the corresponding payload
Jihoon:would be IR compliant.
Jihoon:And here, inclusive means the IL place is a super superset of your local IL view, so…
Jihoon:If your view is, let's say, 11101, which means you didn't see the fourth IL, you expect bits with 11101 or 11111.
Jihoon:And this inclusivity check can be done by either attesters or PTC.
Jihoon:The trade-off here is what to reorg when it's not inclusive.
Jihoon:If we go with our testers, we will gonna reorg become blocked, while PTC will reorg the envelope.
Jihoon:But here, reorging Beacon Block gives us more…
Jihoon:made bigger impact, because we were not gonna… we were gonna miss the whole slot, basically. So I think using PTC here is better.
Jihoon:And my next question was, can we do better? So…
Jihoon:Do we have to reorg envelope if the bit list is not inclusive? And my current thinking is it doesn't have to be, because the payload can be IL compliant.
Jihoon:Even when the petlist is not inclusive.
Jihoon:This can happen when the ILs overlap, so the missing IL doesn't really add any new transaction. And this is not unlikely, especially when an IL is able to include most of transactions in the public manpool.
Jihoon:So, my current proposal is to let's add IL leads to the bid, and let PTC do vote for inclusivity.
Jihoon:But we didn't use it in the fork choice.
Jihoon:So, the IL bid list itself is informational purpose, so if you found a builder.
Jihoon:That makes a bid with not inclusive bid list.
Jihoon:or they make the bid with inclusive bit lists, but with non… I mean.
Jihoon:ILN-compliant block. You can downscore them, for example.
Jihoon:But I'm not… but I'm not 100% sure if this is the way we have to go, so if you have any better idea or feedback, please let me know.
Jihoon:So, that was for…
Jihoon:the IL bit less, and the second one is IL compliance check. So, when a tester for slot N receive an envelope for slot N-1, they check if it satisfies the IL constraints. In this case, let's assume that
Jihoon:It did… it's not IL compliant, so it misses this yellow transaction.
Jihoon:Then, a tester stored this payload as ILN compliant, and when they receive a PICOM block for slot N, they expect it to extend the envelope for slot
Jihoon:N minus 2, not N minus 1. They vote for the beacon block, or if it correctly reuse the IL-compliant envelope, so…
Jihoon:This is it, so these two changes will be the main changes of the CL spec on top of Capella.
Jihoon:And… Yeah, sorry, I… I didn't see the, the… the raise then. Yes, Justin?
Justin Florentine (Besu):That's okay. I actually had a question on the, the bit list being a superset of what was in the beacon block, and maybe this is a stupid question.
Justin Florentine (Besu):how does the… how does the view merge allow for that? Like, aren't we saying that there are additional transactions that, not everybody may have seen?
Jihoon:Oh, so, that's…
Justin Florentine (Besu):Go ahead. Yes, Bluth, go ahead.
Justin Florentine (Besu):No, I'm just… what I don't under… I guess, let me try to elaborate on the question a little bit. What I don't understand is that, we have a bit list of various inclusion lists, yeah? And that adds up to a list of transactions that need to be included, but…
Justin Florentine (Besu):If what you're proposing is a superset of what was merged by the committee, couldn't you be asking to include transactions that not everybody has seen?
Jihoon:Or… For Builder, I guess, right? Because, like, when…
Jihoon:Yeah, build… but I think it doesn't hurt, because the builder ends up including more transactions than you expect, and it doesn't violate any of the fossil mechanisms, so what could go wrong is when…
Jihoon:a builder gives you non-supperset IL view, then you probably don't want to accept a bid, because it might contain, it might not contain
Jihoon:I.O. transaction.
Justin Florentine (Besu):Okay, so we check inclusion against the committee's subset inclusion list.
Jihoon:Not against what the actual proposer saw. Got it.
Justin Florentine (Besu):That makes sense.
Justin Florentine (Besu):Sorry, thank you.
Jihoon:Yes, so, yeah, yeah, so, when, testers validate the,
Jihoon:IR constraints, they use their local IL view, not the one in the bit list. So…
Jihoon:The bit list could be super sad, because proposer…
Jihoon:Our builder have one more second to receive and update their IL view? Yeah.
Justin Florentine (Besu):So they have no idea that the extra transaction was somebody's inclusion list, they just see it as an extra transaction, they don't care.
Jihoon:They actually receive… they might receive an inclusion list that a tester hasn't seen yet.
Jihoon:Because they have some extra time to update their IL view. But the… when you are validating,
Jihoon:I.O. constraints.
Jihoon:what you carry is actually a set of transactions, not the number of ILs. So, there might be a case that… yeah, so that's why I think
Jihoon:It is better to not use IL BitLays inclusivity in our fork choice, because there could be a case that it is not a superset, but the payload itself is actually IL compliant.
Justin Florentine (Besu):Got it.
Justin Florentine (Besu):Thank you.
Jihoon:Thank you.
Jihoon:Do we have any other question?
Mehdi Aouadi:Yeah, I'd like to ask a question, about the difference between the, PTC,
Mehdi Aouadi:Checks on the attester checks.
Mehdi Aouadi:So correct me if I'm wrong, but,
Mehdi Aouadi:if we go with the, PTC checks, does that mean that there will be, no…
Mehdi Aouadi:Impact on the fork choice, because in my understanding, rearguing the envelope is done earlier, right?
Jihoon:Reworking the envelope.
Jihoon:Yes, because PTC doesn't… They… I mean, PTC vote doesn't say anything about
Jihoon:whether the payload is IL compliant or not.
Jihoon:But actually, so what… what I'm proposing is, let PTC to vote for the IL list inclusivity.
Jihoon:So, whether the IL is in the bid was a superset to their local IL view. But actually, it doesn't have to be PTC. I think you made the right point. It could be done by our testers.
Jihoon:Because, yeah, I need to think a little bit more about this, because,
Jihoon:It's not… it's not set in stone yet, so…
Mehdi Aouadi:Okay.
Jihoon:Yeah, the… I think the Gist…
Jihoon:that I wanted to convey is that, we want to add IR bit list to signal proposal that this corresponding payload would satisfy the IR constraint or not.
Jihoon:But… And we also wanna ask testers or PTC to vote for ILB Middle East inclusivity.
Jihoon:But we don't want to… I think it's better to not use that information in our fork choice. But whether testers or PTC vote for that inclusivity check is something that we have to think a little bit more, so yeah.
Mehdi Aouadi:Okay, I see. Yeah, thanks.
Jihoon:Thank you.
Jihoon:Do we have any other question, or anything's unclear, or seems weird?
Jihoon:Alright, I'm planning to make a PR
Jihoon:By the end of this week, so…
Jihoon:I think we can have more productive discussion once we have the code ready.
Jihoon:So, yeah, I'm pretty sure that we're gonna revisit this topic in the next breakout, so if my explanation was not clear enough, it's okay, we can just revisit it later.
Jihoon:And, yeah, so that was… all that I wanted to share.
Jihoon:Do we have any other updates or something to discuss?
Jihoon:Yes, Tyler?
Pelle Krabbenhoeft:Yeah, I guess I can go over some of the research I've been doing on the different delays with the inclusion list.
Pelle Krabbenhoeft:The data's a little messy with using the Excel data, from PandaOps, but, it's pretty much what everyone assumed with the current setup, with zero delay. 20% are…
Pelle Krabbenhoeft:20% of the transactions in the inclusion list are getting added to the next block,
Pelle Krabbenhoeft:Regardless, so essentially, it's a wasted space, and when we move the delay to 1 and 2, it only increases by about 0.1%. It's still pretty messy, because there's a lot of spam transactions, and I can't check the state, since it's all historical data, but…
Pelle Krabbenhoeft:Other than that, and the censorship-only IOs, which are just transactions that have been flagged as censored, as you can expect, the delay doesn't really affect them, so…
Pelle Krabbenhoeft:I think a one, slot delay, as talked earlier, wouldn't be too bad, but…
Pelle Krabbenhoeft:I got some new data that I'm gonna go over soon from, Block Native, so hopefully that gives me a little bit more resolution, but yeah.
Jihoon:So… if I understood you correctly, delaying it by one slot would give us better results, because
Jihoon:It gives us extra 1%.
Pelle Krabbenhoeft:Gives us extra 0.1%, so there's not much of a difference.
Pelle Krabbenhoeft:Yeah, I'm not quite sure if it would really look like this, on, like, a live node with ILS implemented, because we are having such a low inclusion rate of
Pelle Krabbenhoeft:the mock inclusion list. So we're building a mock inclusion list and then checking how many of those transactions get added into the next block.
Pelle Krabbenhoeft:And obviously, the IL is not actually being applied, and that's only about 20% of the mock IL with the current mempool data I have.
Pelle Krabbenhoeft:So, I've been trying a bunch of things to filter it out better, but, right now, it still also seems like it's a good idea to just fill the include… the full inclusion list, opposed to only doing sensor transactions.
Jihoon:Could you expand a little bit of the censorship detection algorithm?
Pelle Krabbenhoeft:Yeah, for the censorship detection algorithm, I was just looking at transactions that were valid. They were above the…
Pelle Krabbenhoeft:Base fee, and we're also above the top
Pelle Krabbenhoeft:10 or 25th percentile of priority fees, so we're not looking at, like, bottom-bottom transactions, stuff that should likely be included. I can pull that up now. The average IL was including for those transactions per block for the mock ILs, but it was just a very simple
Pelle Krabbenhoeft:this looks like it should have been valid and put into a block, but it's been sitting in the mempool for 2 plus blocks, I believe, is the current setup.
Jihoon:Got it. Right.
Pelle Krabbenhoeft:And hopefully by next time, I'll have this ran up so it's not just me talking at everyone.
Jihoon:Yeah, that makes sense, yeah, great. Maybe we can also have… simulate various
Jihoon:Intentionally building algorithm, and then see how it affects the research.
Jihoon:I mean…
Pelle Krabbenhoeft:I was thinking, yeah.
Pelle Krabbenhoeft:Yeah. Yeah, it would definitely be possible and pretty easy to, like, add on top of this, but yeah.
Pelle Krabbenhoeft:Definitely for the future.
Jihoon:Yeah, yeah, we'd love to see if delaying it by one slot would give us
Jihoon:much network bandwidth saved, so… Yeah, it's a great research, I think, so… and thanks for the update.
Pelle Krabbenhoeft:Yeah, and on the network bandwidth, you're looking at… yeah…
Pelle Krabbenhoeft:About 20% saved, because you can…
Pelle Krabbenhoeft:Wait, sorry. Wait, never mind. Let me think about that for a second.
Jihoon:Yeah, because… I, I think that network… Bandwidth save is…
Jihoon:0.1%, according to your current data.
Pelle Krabbenhoeft:Yeah. Because that's what we… yeah, yeah.
Jihoon:So, yeah.
Jihoon:Yeah, we'll see.
Jihoon:Yeah.
Jihoon:Looking forward to the update.
Jihoon:In the next breakout call. Thank you.
Jihoon:Alright, do we have any other updates?
Jihoon:Alright, Ethan.
Jihoon:We can just go ahead and wrap this call.
Jihoon:Yeah, thank you guys for joining. Hope you guys have a great rest of your day, and see you guys in two weeks. Thank you!
Katya:Thank you, bye.
Mehdi Aouadi:Thank you, bud.
Pelle Krabbenhoeft:Thanks.
Chat Logs
00:09:29
Jihoon:https://ethereum-magicians.org/t/hegota-headliner-proposal-focil-eip-7805/27604