Ethereum Protocol Fellowship (EPF) Cohort 7 — Applications open until May 13

AllCoreDevs - Testing #045

2025-07-21 Agenda: #1624 canonical JSON

Transcript

00:00:10
Mario Vega:Awesome. Thank you so much. Yeah. Welcome everybody to acdt number 45. Today's July 21, st
00:00:20
Mario Vega:we have a couple of items in the agenda. And 1st of all, as always, Fussaka updates, is the 1st thing to to address.
00:00:30
Mario Vega:I think definite 3 has not gone. Live at this point. But we can start with.
00:00:38
Mario Vega:there was an East release. So I think we can start with that. If that's okay. Spencer, are you?
00:00:47
Mario Vega:Yeah, Spencer, do you want to give an update on the East release?
00:00:53
spencer-tb:Yeah, sure. So and we released a yeah, a feature release.
00:00:58
spencer-tb:And for devnet free just last Friday.
00:01:03
spencer-tb:And basically the changes within the release include updates to the gas prices of and the modex
00:01:13
spencer-tb:and the curve Clz, which I guess we'll chat about later.
00:01:20
spencer-tb:and the blog base fee cost change for eip, 7, 9, 1, 8, and
00:01:29
spencer-tb:the transaction gas limit reduction for Eip 7, 8, 2, 5,
00:01:34
spencer-tb:and the release also includes new tests for the Max blob per tx limit, added to the pure daft IP,
00:01:42
spencer-tb:and and also removes all the tests for Eip 7, 9 0, 7. Yeah, I guess
00:01:51
spencer-tb:we might have another release based on the end of this call. But yeah, let's see, let's see
00:02:00
Mario Vega:Thank you. Thank you. On the Dominitory side. I don't see one of us
00:02:08
Mario Vega:in the call parry. Do you know if there's any updates? Yeah.
00:02:12
Parithosh Jayanthi:Yeah. So there's mainly 2 things left we do have a Pr from Spencer for testing hive. So as soon as have a branch for us. Ideally. The branch name is Fusapnet 3 it should pick up all the images, and we should have hive tests running kurtosis should be running as well. I'll PIN a version that people can test out, but we haven't received client images from all the clients yet.
00:02:41
Parithosh Jayanthi:And there are 2. Main, yeah, 2 main prs that still need to be like, we need to sort out ideally today. The 1st one is on the builder specs, and the second one is on engine. Get blob. C. 3.
00:02:56
Parithosh Jayanthi:I think those are the main points for devnet 3. If all of this is true. As soon as we have client images, we're ready to launch ideally in 2 to 3 days.
00:03:07
Parithosh Jayanthi:So before Acde.
00:03:13
Mario Vega:Awesome great. Regarding the builder specs. There was comment.
00:03:20
Mario Vega:That was made by Bharat, I think, is that is that relevant to the discussion. I'm not sure if
00:03:25
Mario Vega:if if they are in this call.
00:03:28
Mario Vega:but we can touch upon that topic later. If that's okay or do you want to go now?
00:03:32
Parithosh Jayanthi:Wherever, wherever you want to schedule it.
00:03:35
Mario Vega:Alright. Cool, cool. Okay. Thank you.
00:03:41
Mario Vega:Anything else regarding Fussaka, or then the 3 house clients implementations coming along. Does anybody any anybody from any client team wants going to give an update
00:04:04
Mario Vega:best who is ready pending. Get blocked between.
00:04:09
Mario Vega:Get is also ready except except for the config endpoint. Red has a branch.
00:04:17
Mario Vega:Get underscore, config and get blobs between.
00:04:21
Mario Vega:Aragon is also ready without get blob. Cp. 3
00:04:27
Mario Vega:lighthouse is ready. But coming back to yield clients. Anyone anybody from? Never mind here that wants to give an update.
00:04:45
Mario Vega:Never mind, Brady. Okay.
00:04:54
Mario Vega:Lighthouse ready. Okay? And anyone from the rest of the cl clients who wants to give an update on readiness.
00:05:03
Mario Vega:Anybody from from Teku
00:05:15
Mario Vega:and Justin made the comment that there's not that many changes, for fuzeka losar is ready. Okay.
00:05:24
Mario Vega:just missing. Builder. Api. Okay, thank you.
00:05:28
Mario Vega:Alright. It seems like, I also granting is ready. Okay, it seems like most clients are ready, and
00:05:34
Mario Vega:it's looking good. I think there should be any blockers for the next 2 weeks.
00:05:40
Mario Vega:Sorry the next 2 days.
00:05:46
Mario Vega:Next topic is gas limit testing updates Barry for this. Do you know who the person with context is?
00:05:54
Parithosh Jayanthi:Yeah, I can go here. So one of the I guess biggest updates is that we've been. We've had all the client releases made for 45 million or most of the client releases made for 45 million.
00:06:08
Parithosh Jayanthi:And enough validators have updated that roughly. A few minutes ago we had the 1st 45 million gas limit blocks on Mainnet. So congratulations everyone that's definitely good news.
00:06:21
Parithosh Jayanthi:That being said over the weekend we were working on puff devnet 2. And we had this one weird issue with Bezu, where the image with the wrong MoD X. Pricing got pushed onto the performance tag. And as a result, we've had non finality for the last one or 2 days. The issues core issues, mostly a config mistake.
00:06:47
Parithosh Jayanthi:But we're still trying to sync up bezoo and figure and just ensure that it isn't anything else. And in the meantime we are working on getting finality back up there.
00:06:58
Parithosh Jayanthi:Other than this. There's been a couple of other work streams. So we have a new sync testing tool. It's called syncor. And the 1st run of syncs of all the nodes are going on now. So in the next couple of days we should have a good baseline metric. For how long it takes to sync.
00:07:17
Parithosh Jayanthi:There's been a lot of work by Carlos from the stateless team to try and get us all the metrics we want with the State plot network. So puff devnet 2 is almost at 2 x mainnet state as well. So we should be able to run the sync or tool against it and get sync information for 2 X Mainnet State. We have a new Rpc testing tool as well.
00:07:42
Parithosh Jayanthi:and Rpc testing tool just is so far a proof of concept. We're gonna start reaching out to
00:07:49
Parithosh Jayanthi:node operators to try and get a sense of what workloads they have so that we can benchmark them against all the clients, and then make a preliminary report, for this is how clients perform at 36, or well at 45 million and then we should have stronger Rpc benchmarks as well for the future.
00:08:08
Parithosh Jayanthi:I think that's everything on the gas limit side. Maybe Camille has something else to add.
00:08:14
Kamil Chodoła:Yeah. In meantime, we are working on extended gas benchmarks, opcodes, benchmarks.
00:08:20
Kamil Chodoła:For now we focus quite a lot on all modex because of some additional repricing which were made, and to ensure that it is fine. But yeah, this is like, from benchmarking point of view, it's almost accomplished, and we are moving all of our sources now to
00:08:38
Kamil Chodoła:all of our forces, now to stateful testing, which is like unexplored ground right now, where we had a Johan with who made some tests on Perfnet. But we want to make it fully reproducible in the same way as we do with Opcodes
00:08:52
Kamil Chodoła:already in contact with his team. We had a very nice discussion last week, and right now we are trying to summarize that with, together with Martin from our team to to make a document on how? How the full integration of of opcodes benchmarking with Es should work moving forward.
00:09:09
Kamil Chodoła:And what is the end goal for that we have some ideas. We want to test as much as possible right now on top of Mainnet, or even Bloatnet State.
00:09:17
Kamil Chodoła:And yeah, this is like current goal. And hopefully, next few weeks we'll have much more extensive tests, which will give us much more insights from from this point of view, because computational side seems like is already quite well covered. So we can focus on something which will bring much more value. And then we'll start exploring more edge cases.
00:09:44
Marcin Sobczak:I would just like to say that Tony prepared
00:09:49
Marcin Sobczak:about modex changes and network impact. So just based in on the chat. There is nothing surprising like after free xing the price, 100% of calls are affected but there are like great insights on the chat so and take a look.
00:10:19
Mario Vega:Alright. I think there was a question regarding the get blocks. B, 3. Readiness.
00:10:28
Mario Vega:But before that I think it's just a nice
00:10:32
Mario Vega:that. We discussed blotnet. I think there was one person that wanted to discuss this. I think it's a good place to start discussing that C. Peris. Are you in the call?
00:10:45
Mario Vega:Do you want? All right? Yeah, yes. Let's let's yeah.
00:10:49
CPerezz:Sure. Yeah. So I I'll be very quick. We are approaching 2 x main net state in Blobnet. And ideally, we want to rerun syncing tests. And we want to start also trying to run compaction testing to see how much we can stress
00:11:08
CPerezz:adding and removing state. And how does it play with compaction? In order to be sure, we can reach 100 million gas limit safely. And for that we needed some metrics implemented by teams. So far, I'm gonna comment. The ones that we are missing or for the things that we haven't heard such that maybe they can get this ping and and they can update or or give us some some feedback.
00:11:35
CPerezz:From syncing we are missing any information from Besu and Aragon.
00:11:41
CPerezz:And from never mind, I know they are reporting healing from blocks not in Grafana, and wanted to basically know if there's any way to get that from Grafana, as getting data from from blocks is
00:11:55
CPerezz:a lot harder and requires a lot more integration for for the tooling that I mean, we would prefer to not spend the time on so maybe Camille or Ben can say something about
00:12:07
CPerezz:never mind. And maybe there's someone from baseline that can basically say anything about their metrics.
00:12:14
Kamil Chodoła:From that reminder. I think that this should not be a huge thing to to add a metric for healing, so we'll try to push for for that metric.
00:12:28
milen | Erigon:Yeah. So I responded, last week, and I've added all the metrics for Aragon. So they're in the Grafana
00:12:39
milen | Erigon:Including including including Syncing.
00:12:44
milen | Erigon:We don't really have this concept of.
00:12:48
CPerezz:Okay. Fair. Enough. Yeah.
00:12:49
milen | Erigon:We have the metrics that are analogous to that.
00:12:55
CPerezz:Okay. Awesome. Thank you.
00:12:57
milen | Erigon:And actually, yeah, they've been quite helpful already. I think we've spotted a few issues. So
00:13:03
milen | Erigon:this, this effort is quite useful.
00:13:07
CPerezz:Thank you. Don't want to be so insisting. But if at some point you reach some conclusions on the issues you saw, please reach out such that we can lock all of them.
00:13:20
milen | Erigon:Yeah, we're we're still looking into it. But I will definitely update you with like a summary. Once we figure out what's happening.
00:13:31
milen | Erigon:Yeah. No worries.
00:13:36
Ameziane Hamlat:Yeah, thanks. On pesos side, we do have the matrix on sync.
00:13:41
Ameziane Hamlat:but it seems they are like removed when we start the node. So we need to check our implementation, to be sure that the metrics are are persisted, because I see we have them on few nodes, and we don't have them on other nodes. So we need to. We need to double check. We do have some metrics on compaction.
00:14:11
Ameziane Hamlat:so so what's the the kind of metric we are looking on compaction. Is it like the the impact in terms of time, or in terms of.
00:14:21
CPerezz:Yeah, I just send a link to a Hackmd which basically has the summary I will update on now. But for a quick description in compaction. We need to start and end time. And we want also to get I/O performance when we are and when we are not in compaction especially best, worst and average. Read and write times for each block for every
00:14:47
CPerezz:operation that basically removes or stores stuff into interstate into the dream. So insertion, removal type basically.
00:14:56
Ameziane Hamlat:Okay, yeah. So start and time compaction. We we do have them. But we have them like under a set of set of metrics that we we don't usually enable, because they have some overhead like a lot of metrics. So we need maybe just extract that one outside, like the the set of those metrics. And and we'll double check the the rest of the matrix, and we'll update.
00:15:25
CPerezz:Awesome. I'll get in touch offline to to follow up. Thank you very much.
00:15:33
CPerezz:That should be it for, blonded Mario.
00:15:36
Parithosh Jayanthi:Mention if clients could. Please make sure that all the metrics changes are pushed to the performance branch, because that's what we're running on the block net.
00:15:48
Mario Vega:Thank you. Awesome. Yeah. Going back to the get. Blob. dB, 3. I see role. Do you want to add some context to this question?
00:16:00
Raúl Kripalani:Yeah. I think in in general like this, Els have most of them have implemented the the Api sales have nothing to do here, and in general, I'm seeing some favorable reactions in the chat to just merging the spec change so that Els can merge their implementation branches and move on. I think that's what I would propose, and we can close this topic.
00:16:26
Mario Vega:I see Dustin the main counterpoint. Do you want to, Dustin? Do you want to expand on this in any way?
00:16:40
Dustin:I understand. And I agree, very based on, you know, as as best as I understand where this is going that get Bob 3 3 is is ultimately something like it is ultimately probably what we want.
00:16:51
Dustin:What I fundamentally disagree about is entwining this with the Fusaka fork, because essentially, as I have have written, but obviously this is a weirdly threaded environment. So I'll summarize here and to say, like the Els can can merge what they want, and it's and it's and it's great. I I hope
00:17:13
Dustin:that if we that that at some point the Els do, if we are moving in this direction, do merge such such a Pr.
00:17:21
Dustin:Where I I would distinguish here, though, is that
00:17:26
Dustin:treating it as part of Fusaka, it is effectively, not from my perspective, if it's not been tested in a very similar way as the rest. And we have recent experience with, you know, simple seeming things that were not tested.
00:17:43
Dustin:and they didn't go very well.
00:17:47
Dustin:that that that's sort of the the gap or gulf here for me is the idea. Can I just shove this last minute thing in and don't worry about it. It's like we can't rely on that.
00:17:57
Dustin:We, Nimbus can't rely on this. I can't speak for other cls, but like, yeah.
00:18:05
Raúl Kripalani:Yeah, I think the operative point here specifically for me is that we did wanna make sure that while people while peered as and in general, blobs are are in the refactors. There are fresh for people. They just get this particular change in so that we don't have to context, switch it later and
00:18:26
Raúl Kripalani:incurring the coordination overhead, of getting releases of Els out and doing an off cycle engine. Api change, and so on. And and yeah, this this, as as we all know, v. 3,
00:18:39
Raúl Kripalani:is not exercising Fusaka's code part specifically, this is more of kind of like an A. A, I would say, smart way of like trying to offload a context switch from the future, which is gonna be coming so that we can just get this work done when it's a simple thing that it's actually, I agree with you. It's simple.
00:19:02
Raúl Kripalani:I am. I'm not very privy to what happened in in Holeski. I wasn't. I wasn't there at the time. But in this particular, in this particular case we have the guarantee that this path is not gonna be used. And what if in consensus from consensus? So I don't see how it could have an destructive impact?
00:19:22
Raúl Kripalani:But yeah, other than that I would. The the thing that I've proposed is is creating some hive tests so that we can test this separately. Directly with with that test suite.
00:19:36
Dustin:But okay, okay, so what? What I would, what I would would right like
00:19:45
Dustin:this is why we question, is that kind of, as Marius is just saying in chat is like, there's there's
00:19:55
Dustin:If it's Glamsterdam, then there's no
00:19:58
Dustin:rush to get into Fusaka by definition, if yeah.
00:20:01
Dustin:But clearly it's not. But clearly it's not right, because otherwise that that this coordination problem would would doesn't really exist. You can coordinate in Amsterdam around Amsterdam
00:20:11
Dustin:so that that either it is not meant to be in Fusaka, and therefore this is a pointless push now, or I mean again, clients can merge what they want, but from a spec perspective, I don't really care deeply what Pr is best you merges, or something like that, I mean, I hope they're good Prs, but like from from like as far as get 3 but in terms of including in a spec or or not what I would.
00:20:39
Dustin:What I do care is is this considered to be part of of Fusaka or not? And what I would argue is that it should not be given that we are running into like the spec freeze and the last devnet.
00:20:53
Dustin:and no testing, and that that to me, just doesn't work
00:20:58
Dustin:like that. We cannot consider anything like that to be part of for soccer as a spec.
00:21:12
Raúl Kripalani:I mean the I think the rationale here, and just to kind of like explain for everybody. The the facade slash, glam, stam slash in the middle. Sort of like thing here. That. Yeah, it's this. V. 3 won't be consumed for Fasaka, but we aim to consume it through optimizations and the cl and the cl, and specifically the peer to peer layer before Glamsterdam. So that's what kind of like creates the extra coordination challenge midway.
00:21:39
Raúl Kripalani:And the the bet that we're taking here is that by doing this now we'll remove X-ray for everybody later. And it is done and given that this operation is not consumed in any way.
00:21:54
Raúl Kripalani:Because it is exposed only through the engine. Api. The engine Api is privileged, and it is only consumed by the Cl. If the Cl. Does not consume it, which is agree, it's it's not part of the Fosaka spec for the Cl. So it's not gonna be consuming it. Therefore there is no risk here. Other than possibly the implementation risk
00:22:15
Raúl Kripalani:which is what we are aiming to test by hive tests, and
00:22:20
Raúl Kripalani:I think that is sufficient testing.
00:22:23
Matthew Keil:I I think the thing that's being missed here, though, is that there is risk. And it's from a process perspective. You know, the the biggest issue we had in the last work was, get last thing in, get last thing in. It's not going to get used. It's just a minor change, and I think this sets a precedent of trying to sneak things in under the wire
00:22:43
Matthew Keil:when it's not going to get used. And to speak to Dustin's credit. I mean that that feels like just it. It makes the process messy. And that really is the biggest concern. It's not so much whether it gets used or from a technical perspective. But I think if we want to be able to ship
00:23:00
Matthew Keil:hard forks on regular schedules, and we want to get used to that. This. That's how that's how releases are done, at least on our team. And I know they were done in the web. 2 world is that you have a hard date. Specs get in by that date. If it misses it, it's in the next release. And because there's always going to be this incremental one more thing, and that that to me, is the biggest issue here, not so much the complexity or the
00:23:23
Matthew Keil:how it gets rolled out, or or even the merit of the feature.
00:23:30
Mario Vega:I I absolutely agree. So. I think, this is contentious enough to not be further discussed in this call. I think at the very least. I would defer this discussion to acde
00:23:42
Mario Vega:if we're not sure if we're gonna implement something in in Infozaka. I don't think this is the place to discuss it.
00:23:52
Mario Vega:But yeah, that's my opinion. Pari.
00:23:56
Parithosh Jayanthi:Yeah, maybe to play the contract. Let's say we don't include it right now, and we assume that it's going to go down the approach of get blobs. We want
00:24:08
Parithosh Jayanthi:assuming we have a single el as well as cl implementing this in the future, and we deploy it asynchronously on the network. Would that still work out for us long term? Or would we then be locked until Glamsterdam, before we can actually make use of this feature.
00:24:26
Parithosh Jayanthi:Also note that we have this we have this other concept system. We have a Bpo fork. So there's sort of another sync level between Fusaka and Amsterdam that we never had in the past.
00:24:40
Parithosh Jayanthi:Ideally, we're not making any code changes there, and it's only Bpo. But if let's say, guest as well as lighthouse, make a release with using this feature, and that, would the Bpo fork would imply that every guest and lighthouse node on the network has implemented this feature. Would they then be able to use it? Or is it a useless feature until the whole network uses it.
00:25:05
Raúl Kripalani:Yeah. So from the perspective of the optimization that we're planning, this would be at the Cl level. And basically clients that are supporting the gossip, sub partial messages feature that uses the partial blobs return from the El would be able to
00:25:24
Raúl Kripalani:use this optimized path when reconciling columns with each other. Essentially. So basically, the goal here is to minimize the band superfluous bandwidth usage here by
00:25:37
Raúl Kripalani:that would be incurred by transmitting columns that include cells for blobs that deals already have because they are in the elm pool. And that's the that's the goal here. So basically, this is being shipped as a as an extension, and that extension on the gossip sub level is discovered and then used only if both clients are are supporting it, so this can be shipped.
00:26:02
Raúl Kripalani:As an optimization implementation level optimization that has no potential. That's the way that we planning it. Would be having no or at least envisioning it would be having no spec changes necessary.
00:26:17
Raúl Kripalani:On the on the sales side of things, and the idea was to have the Els ready to support this from from the get go.
00:26:30
Francesco:Yeah, I just wanted to say that, I think in
00:26:34
Francesco:sure, when he was last week. I don't know. Last Thursday we, he said, and this has been going on for really like a long time, that we would make a final decision today. And I think we should really stick to that like, if we cannot make a decision, then let's just default to not doing it. If we otherwise. Yeah, let's try to make an explicit decision. We don't need to spend all the rest of the ball talking about it, but it would really be good to just end this today. I think.
00:26:58
Parithosh Jayanthi:Yeah, I think if the consideration is on the testing front, we're happy to acknowledge or commit to adding some testing bandwidth from our side to make this happen. I'm guessing the testing teams also. Okay, with that. But yeah, I don't want to speak for the process decision, of course, but if it's purely about testing, and that we agree that no Cl would roll out any change in the future without going through the regular testing process. Then I think we can accommodate that from the testing side.
00:27:29
Mario Vega:Yeah, I mean, we can do it definitely. The problem is that we don't have it exactly now. So I don't know how much is gonna delay. I would I would. I would love
00:27:39
Mario Vega:rather to have this test already for definitery. But that's not the case.
00:27:44
Mario Vega:So yeah, I'm not. I'm not confident.
00:27:48
Mario Vega:we we're gonna have sufficient testing for definitely, in my opinion.
00:27:57
Raúl Kripalani:So just just one more thing to note here the decision ends up being not to include this. Then I think we need a decision on what's gonna happen with the version? That's on master right now, which does introduce a schema change that Cls would need to support which I don't know if they have an implementation change already, for my my understanding is that they they don't.
00:28:21
Mario Vega:Is there a pr. For for this? Do you have a link.
00:28:25
Raúl Kripalani:This is merged in master, but, as far as I know, no Cl has implemented it. So this, this Pr that we're discussing the one that includes gets Bob v. 3 would revert reverts that change on master to the behavior that cl's implement today, and then adds the V 3 endpoint.
00:28:51
Mario Vega:Does any cl have any input on that? Do we know if it's like implemented.
00:28:57
pawan:We haven't implemented it.
00:29:03
Mario Vega:Is that the case for all other Cls.
00:29:07
Matthew Keil:We have not either. We're just using v. 2 as it is.
00:29:11
Manu:Time for prison. We haven't implemented it.
00:29:14
Dustin:Same, for Nimbus have not implemented it.
00:29:27
Matthew Keil:I mean that in and of itself feels like that makes the decision, at least for now.
00:29:35
Parithosh Jayanthi:Maybe expanding on Francesco's point. So this would imply that we stick to get blobs v. 2. And we basically don't do anything with get blobs. V. 3. Right now
00:29:45
Parithosh Jayanthi:The right reading.
00:29:47
Mario Vega:That feels like the safest way, and the correct reading at the moment.
00:30:04
Parithosh Jayanthi:Yeah, maybe someone can respond to the message Kapria mentioned as well get blouse. V, 2. Allowing partial responses or not.
00:30:16
Raúl Kripalani:It would be a no, it's an it would be. It would go back to all or nothing. Get block speed 2. Which is prior to merging the Pr. That I just linked in the chat.
00:30:32
Mario Vega:Sounds good. Okay? So then, just to summarize, get balls, be 2 with all or nothing, and it's going to be reverted in, master, and we're going to stick for that
00:30:47
Mario Vega:Great thanks. Everyone.
00:30:52
Mario Vega:Yeah, I think. The next topic. If that's if that's okay, unless there's any any other opinion.
00:31:00
Mario Vega:Next topic to discussion is a point brought up by Mikhail
00:31:05
Mario Vega:regarding the usage of safe blocking the engine. Api response. Michael, do you want to expand on this.
00:31:13
Mikhail Kalinin:Yeah, thanks. Hi, everyone.
00:31:16
Mikhail Kalinin:I will not go much into the details of the Confirmation rule. It has been already announced before.
00:31:21
Mikhail Kalinin:Just give a brief context. There is a Pr, there is a paper with the Confirmation rule algorithm. There is a Pr open at Pr to the consensus tax which implements this algorithm. And recently, we did work on a slightly modified version of this algorithm, which is
00:31:46
Mikhail Kalinin:more efficient computationally wise and easier to implement.
00:31:50
Mikhail Kalinin:And currently recently, the
00:31:54
Mikhail Kalinin:there is a pro project started a week ago on prototyping this algorithm in lighthouse. So there is a work towards having the Confirmation rule delivered to Mainnet. And
00:32:12
Mikhail Kalinin:One of the things that's we need to decide is how how we will actually provide this confirmed block
00:32:22
Mikhail Kalinin:to to the, to the blockchain data consumers, and historically it was supposed to be
00:32:31
Mikhail Kalinin:the safe block was introduced.
00:32:34
Mikhail Kalinin:and was supposed to be set to something closer to the head that we think that is confirmed. So basically, it was supposed to be set to the confirmed block. But this work.
00:32:52
Mikhail Kalinin:there was no actually, the algorithm that would provide this data. And we, we used justified.
00:33:01
Mikhail Kalinin:or some clients use and realize justified block for for the safe one and yeah, should. And and the main question is, should we
00:33:14
Mikhail Kalinin:actually overload the save block and to use it for
00:33:20
Mikhail Kalinin:to pass the confirmed block to it. Or should we introduce a new block tag to engine Api Json or Pcpi
00:33:31
Mikhail Kalinin:which what we use for for the confirmed bulk.
00:33:35
Mikhail Kalinin:So I don't know. Also, the
00:33:40
Mikhail Kalinin:One of the question is
00:33:42
Mikhail Kalinin:obviously block is actually used by data consumers. Can we figure out, can we get this information or not?
00:33:50
Mikhail Kalinin:And maybe it is somehow used by the clients? And yeah, all these questions need to be.
00:33:59
Mikhail Kalinin:all these things need to be considered to make this decision.
00:34:05
Mikhail Kalinin:So yeah, that's that's about it. I don't know if people have any opinion here and
00:34:11
Mikhail Kalinin:and want to express it now, or should we move this discussion to
00:34:18
Mikhail Kalinin:probably discord to some other venue? So much open to your suggestions.
00:34:25
Mario Vega:Thank you. Yes, Terrence, you have an opinion.
00:34:28
terence:Yeah, thanks for the questions. I guess I'll answer a few questions in line. So I think, like, if the concern today is for disparity. The disparity already exists today. Right? Because prison is already passing unrealized. Justify for safe block cash. But I think there are other clients that's passing by justify. So there is this disparity here today.
00:34:51
terence:and then, on the presume side, I have a fast Confirmation branch. I have been testing it since couple of days ago, just because I think there is some renewed interest on fast confirmation.
00:35:01
terence:And what I ended up doing is that I added a client flag on the prism side to allow the node operator to specify whether they want
00:35:12
terence:fast confirmation or unreal is justified or justified, or some future algorithm to be passed as the safe block patch. So this ends up to be a client flag on the prism side that people can use.
00:35:26
terence:and in terms of consumer. I guess I can answer for arbitral micro software just because I have a little idea how it works
00:35:36
terence:they use safe block hash to essentially allow layer to to consume layer, one message. So when when a batch poster post a batch.
00:35:44
terence:or when someone submit a message from layer, one to layer 2, or when layer 2 learns a layer, one block price that delay is essentially the safe block cache. So today's unrealized justify, but with the same block cash they will they? They they should be able to consume the message in the optimistic case in under 30 seconds. So that's 1 use case in terms of
00:36:09
terence:what the plan you say block hashes for prism. We don't use it for anything internally. It's except for passing it to the El, and I cannot answer for the El. So yeah, someone might want to answer. There.
00:36:29
Mikhail Kalinin:Great thanks a lot, Terrence. And you've mentioned that our bedroom use is safe. It means that if we
00:36:38
Mikhail Kalinin:start passing the confirmed block fast confirmed block instead of justified it, could affect their security models right.
00:36:48
terence:Exactly. But that is a note, operate this choice that is basically to be specific, that that is the sequences choice. They have to make right. So there's 1 thing I have been essentially testing is just to make sure there's no reorg. There's some there to accept, reorg. They don't really like reorg and stuff like that. So for them a reorg will be pretty bad. So I've been testing I
00:37:12
terence:I don't want this to be like a I miss a software, but on my end, if there's a reorg that happens. But yes, if there's a reorg, then
00:37:20
terence:the sequence of where we work.
00:37:30
Marius van der Wijden:Yeah. So as I, as I kind of wrote in the chat, I think we are significantly underutilizing safehood.
00:37:39
Marius van der Wijden:It should be like the default thing when when people are building applications that are like they don't like need finality, but that can rely on this pseudo finality.
00:37:52
Marius van der Wijden:And I think for that to make safe hat really useful, it should be as as soon as possible.
00:38:00
Marius van der Wijden:And so, as far as I understand this new rule,
00:38:06
Marius van der Wijden:would be much faster than the than the than the justified and so
00:38:15
Marius van der Wijden:I do. I do like the idea of giving the node operator
00:38:19
Marius van der Wijden:control over what the safe head should be depending on on their use case. And yeah. So I I think
00:38:31
Marius van der Wijden:if I would like to CC alls.
00:38:34
Marius van der Wijden:implement this new fast confirmation rule.
00:38:39
Marius van der Wijden:And yeah, I guess from the, it is a mostly Cr only change.
00:38:45
Marius van der Wijden:It doesn't really impact the eo, we will mark
00:38:49
Marius van der Wijden:whatever the Cl. Tells us is safe, we will mark that as safe for for the Rpc, so, yeah.
00:38:59
Mario Vega:Thank you, Miguel. Where do you want to take this conversation? I it sounds like it should be to the execution. Apis a modification. There, at least.
00:39:12
Mario Vega:Do you think opening a Pr would be the proper follow up?
00:39:19
Mikhail Kalinin:Yeah, it's a good question. If we decide to to reuse safe then basically, as Mario said, it's it's mostly CEO side. It's mostly a kind of
00:39:31
Mikhail Kalinin:all the work. Actually, what would happen on sales side? We don't need to change anything on El
00:39:38
Mikhail Kalinin:if we? If we do make this decision, then probably there's not much to discuss.
00:39:48
Mikhail Kalinin:But if we want to debate at it, I don't know. If we decide? Yeah, yeah, probably.
00:39:56
Mikhail Kalinin:Let's try to follow up and discord on this.
00:40:01
Mikhail Kalinin:I'm mostly interested in. Is there anybody that think that we should not touch safe and change its semantics.
00:40:16
Mario Vega:Yeah, no, thank you. Yeah. I'm sorry. Maurice.
00:40:19
Marius van der Wijden:Yeah. The only thing that I can think of is like big Rpc providers.
00:40:24
Marius van der Wijden:Who would like to expose them? That to the users to justify to the users.
00:40:35
Marius van der Wijden:I don't know. I think it would be their decision what to what they will mark as safe then
00:40:40
Marius van der Wijden:and right now, if they run 2 cls.
00:40:44
Marius van der Wijden:there might be a difference between what they mark as safe already, so
00:40:49
Marius van der Wijden:it it could also be flip flopping, depending on the load balancing so. But I think this is for the big Rpc. Providers to figure out.
00:41:00
Mario Vega:Alright. So I think if we can follow up this up on discord, and I think bringing this up to Acd would make definitely make it reach a bigger audience that needs to have a say on this. And opinion.
00:41:13
Mario Vega:does that sound? Okay.
00:41:15
Mikhail Kalinin:Yeah. Sounds good. Sounds good.
00:41:20
Mario Vega:Yeah, thank you. Yeah. There are 2 topics left. One is the builder. I think there was some discussion in the chat. But Bara was the 1st one to bring it up. Do you want to expand on this.
00:41:34
Bharath:Yeah, I mean, so I think we raised it. There seems to be consensus and client devs on the semantics of the Pr. And on the
00:41:45
Bharath:like under the timing, in the sense like just to give a tld around the Pr. We're introducing new V 2 api in the relay
00:41:52
Bharath:which basically doesn't. Return the execution payload and the blobs right? This is barely for like scaling and network bandwidth. So as we increase the number of blobs, and we're also like different seems to be broadcast on the semantics, that is.
00:42:06
Bharath:the Api returns like a 2, 2, not 2
00:42:09
Bharath:success. If the if the blinded block which is sent is valid, and it publishes the block in an asynchronous fashion. So that's there. So I'm raising it here to 1st of all, understand if there are any concerns about it. Secondly, if there are no concerns we are planning like this probably should be something we can target for like Devnet 3
00:42:36
Bharath:so we're currently implementing that in the flash bots like Mev boost relay. And hopefully, we can get that live for net 3. So and like, hopefully, we can test it with the clients implementing the V 2 Api, so yeah, just putting on the stage like there are any concerns related to that.
00:43:01
Mario Vega:Any other context? Pari, do you? Do you have any context on this
00:43:08
Mario Vega:regarding we should like introduce it in Devon tree or not, or I feel like it's like very close to.
00:43:17
stokes:Yeah, I I think we should merge it. There's work underway to have this change in the web stack and everything. And then, yeah. I'll just move forward.
00:43:36
Mario Vega:And yeah, the last 2 topics are,
00:43:40
Mario Vega:I think. Clc, I think that's that's that's 1 of the the last topic, and also the block has 60 million. If we want to touch upon the topic today. So the 1st one is that the Cl set up code was bumped to 5.
00:43:55
Mario Vega:And Rakita, do you have context on the
00:44:02
Mario Vega:if I understand correctly, there's data that shows that it might be unnecessary. But if you want to expand on that.
00:44:09
draganrakita:Yeah, physically, at least in my mind previously. Clc is very similar to any other bitwise operators.
00:44:18
draganrakita:instructions of codes. So it was changed for me. It was bumped to be more similar to the move.
00:44:24
draganrakita:It was bumped from 3 to 5 gas. It's not that big of the deal. We can always reprice it in the next half fork. But
00:44:34
draganrakita:I have created few benchmarks to check that hypothesis, and it seems Clc. Is even.
00:44:42
draganrakita:It deserves even lower gas than tree, so I would like, if to see if clients are open to changing this, to to be back to the tree gas.
00:44:55
draganrakita:I shared those benchmarks inside the okor dev chat in discord.
00:45:11
draganrakita:I'm not sure if clients have an appetite for this change.
00:45:26
Mario Vega:Yeah, I think the main problem is that we are very close to
00:45:30
Mario Vega:finalizing. So I don't think a roll rollbacking. This change is like really a possibility at this point.
00:45:37
Mario Vega:I don't know if everybody still feel the same way.
00:45:41
Mario Vega:But that's my opinion.
00:45:44
draganrakita:Yeah, it's basically one. Characters don't even line from 5 to 3.
00:45:52
draganrakita:I'm up to changing it. I'm not sure if anybody else is.
00:46:01
Mario Vega:Yeah, to raise Marius's point. regarding benchmarks.
00:46:07
Mario Vega:it feels like dragon mentions that he has benchmark for this. Is that correct? Or
00:46:14
Mario Vega:do you have this for all the clients? Or is this just rep.
00:46:17
draganrakita:There is bytecode that can be found in repo.
00:46:22
draganrakita:But the fastest batch project I could do is basically from our evm.
00:46:28
draganrakita:So I did it in the code. And I did it in the code speed. That basically shows amount of the
00:46:37
draganrakita:time spent on every upload.
00:46:39
draganrakita:And I compare this output that I got from the outputs, from the different topcodes, and it is more similar to other bitwise opcodes.
00:46:48
draganrakita:So it seems that Batchpark is correct. Now there are different limitations and different
00:46:54
draganrakita:depending on implementation. You will have different execution.
00:46:59
draganrakita:but either way seems correct to to use tree gas here.
00:47:07
Mario Vega:So just to summarize. I mean, I think this change was done a week or 2 ago
00:47:14
Mario Vega:in regards of keeping things safe right? Because we don't really have much benchmark, that many benchmark for every single client team. So if I understand correctly, your benchmarks are only for red, so we would need to do a deeper like analysis on benchmarking for the rest of the clients before rolling it back. In my opinion, so I would echo Maris on this that we don't
00:47:37
Mario Vega:want to change it, because it's very late in the process. But if anybody else feels opposed to that, just please
00:47:44
Mario Vega:speak up from the other El clients would be nice to hear. Yeah.
00:47:54
Ben Adams:I mean, it's very simple to change. I mean, just revert the previous pr that increased it.
00:48:05
Ben Adams:But don't feel any particular way on it.
00:48:13
Mario Vega:Yeah, the the change is not the concern. I mean, I think that the change is super simple even in the test is simple, but I think benchmarking is the main problem that we have now, and we don't have.
00:48:23
Mario Vega:and up benchmarks for this from the East Side. We're working on benchmarks, but we're not quite ready, because the framework's not
00:48:31
Mario Vega:fast enough to deliver the benchmarks yet.
00:48:36
draganrakita:We didn't even have benchmark that pushed it from 3 to 5.
00:48:41
draganrakita:The data that I have shows that it's even less than 3.
00:48:45
draganrakita:But either way, it's not big of the deal. The main thing is, we have Cls included.
00:48:51
draganrakita:So if clients are not up to to the change, it's fine to have it. 5.
00:49:06
Mario Vega:Yeah, I was still in to leave it as is on 5.
00:49:11
Mario Vega:open. I think I think we should leave it for for dignity. And yeah, consider it for for Dumpster, for reduction.
00:49:25
Mario Vega:Kev for your question. I'm not sure for the answer to be honest.
00:49:39
Mario Vega:So you're saying like, it's 5 times yeah.
00:49:45
Mario Vega:it's 5 times worse than ad. Right? Do you want to expand on that on get the site.
00:49:52
Marius van der Wijden:Yeah, I literally just did this in the last 2 min. I I wrote a benchmark.
00:49:57
Marius van der Wijden:and from what I can see it is.
00:50:02
Marius van der Wijden:do we have one benchmark for adding 64 Byte
00:50:07
Marius van der Wijden:and and that is like 5 times faster.
00:50:16
Marius van der Wijden:Then cl, z, and even the multiplication is like.
00:50:21
Marius van der Wijden:at least 4 times 4 and a half times faster than than clc.
00:50:26
Marius van der Wijden:so maybe there's something weird with our clc implementation.
00:50:31
Marius van der Wijden:But yeah, it seems like.
00:50:36
Marius van der Wijden:at least for us. It's not in the same vicinity as the other codes.
00:50:44
Marius van der Wijden:But, as I said, I I wrote the benchmark just now. So maybe there's something wrong with with my benchmark. But I would like to.
00:50:55
Marius van der Wijden:Yeah, I would would love it if we had some
00:51:01
Marius van der Wijden:if we had like a full benchmarking suit for this, and I think that is.
00:51:06
Marius van der Wijden:feels like an oversight that we don't have this right now.
00:51:11
Mario Vega:Yeah, I agree. So how this I think the main question right now is benchmarking. I think we can work on that this week
00:51:19
Mario Vega:and do benchmarking against all the clients.
00:51:22
Mario Vega:and I would lean towards changing the gas price upwards instead of downwards. So I feel like leaving it as 5 is the correct decision at the moment, and then we can, after the benchmarking, we can decide on whether bumping it because of security concerns
00:51:39
Mario Vega:rather than just lowering it. Now.
00:51:44
Mario Vega:does that sound fine by everyone?
00:51:54
Mario Vega:Cool. Yeah. We only have 5 min left. I think if I'm not, if I didn't miss anything from the from the chat. I think the last discussion is or at least was brought up, is the 60 million gas question at the moment. I don't remember who posted the message. But do you want to expand on the
00:52:14
Mario Vega:whether we want to go on that today or not?
00:52:18
Kamil Chodoła:It was me actually, just wanted to, maybe brought the discussion, as we already hit 45 and 60 is not a matter of any further eaps, at least, for now we do not know about anything which we need to be repriced to hit 60
00:52:38
Kamil Chodoła:before Fusaka. We know about some optimizations needed to be made by some real clients.
00:52:44
Kamil Chodoła:But maybe anyone is having any doubts or anything like this to to see, or at least make any kind of temp check if we
00:52:52
Kamil Chodoła:should try to to reach it before Fusaka, or there is anything else which anyone have in mind
00:53:05
Kamil Chodoła:for sure. What we know right now is that we need to optimize a little bit more modex libraries in go implementations. But this is a ongoing work, and we have a lot of benchmarks around that.
00:53:20
Kamil Chodoła:So yeah, so we know how how much we need to improve around modex.
00:53:25
Kamil Chodoła:But yeah, except of that, there is not much. Things which feels like are any risky.
00:53:42
Marius van der Wijden:Oh, maybe the receipt stuff, because.
00:53:48
Marius van der Wijden:like, if I remember correctly, the receipt stuff breaks around. 72.
00:53:55
Marius van der Wijden:My goodness, a million gas clocks.
00:54:01
Kamil Chodoła:And last recall, it was 85.
00:54:04
Marius van der Wijden:Oh, oh, okay, then,
00:54:07
Kamil Chodoła:Kuwari also mentioned that here.
00:54:09
Marius van der Wijden:But with the with the with the
00:54:16
Marius van der Wijden:with the refund bump, you can probably get that down right by like 20%.
00:54:23
Marius van der Wijden:That's valid. Yeah.
00:54:29
Mario Vega:Ben, do you want to add something or.
00:54:32
Ben Adams:Yeah, I was just gonna say that the receipts is the blocker on getting to 100. It's not not a problem for 65.
00:54:45
Kamil Chodoła:So generally, I put that in a chat. And
00:54:48
Kamil Chodoła:even we have those few minutes additionally, but just wanted to throw a topic. And maybe we can think about it throughout the week
00:54:56
Kamil Chodoła:and get back on that and add it to our agenda next week to to discuss and see.
00:55:03
Kamil Chodoła:because at least. Personally, I don't see any like big blockers. Instead of some general performance improvements
00:55:12
Kamil Chodoła:to to reach it before actually, Fusaka will come in place and solve some of these issues.
00:55:21
Kamil Chodoła:which would be nice because we still don't want to probably go in one big jump between 45 to I don't know 100, after addressing modex repricings.
00:55:34
Kamil Chodoła:would be nice to have something in in meantime.
00:55:37
Kamil Chodoła:and 60 feels like a good stop which we can
00:55:40
Kamil Chodoła:pretty safely achieve prior to that.
00:55:48
Mario Vega:Alright. Thanks thanks for bringing it.
00:55:50
Kamil Chodoła:Growth is also a good point from from Marius, which is being worked on.
00:55:56
Mario Vega:Yep, perfect. Yeah, I think I think it's a it's a it's a nice topic to bring up.
00:56:01
Mario Vega:I think next week we can be
00:56:05
Mario Vega:well, maybe not today. But in the in the coming weeks we can have more more information on this. But it's nice for it to be brought up so we can have it in the back of our minds.
00:56:16
Mario Vega:No need for a decision right now.
00:56:22
Mario Vega:Cool. Okay. Any other topics. We only have 1 min, but if there's anything like alarming that we have to race right now.
00:56:36
Mario Vega:Otherwise I think we can wrap it up here. Alright thanks everyone.
00:56:48
Mikhail Kalinin:Thanks, so much.
00:56:52
Antoine James:Thank you. Everyone.
00:56:55
Marius van der Wijden:Thanks. Brett.

Chat Logs

00:00:54
Parithosh Jayanthi:notes.ethereum.org/@ethpandaops/fusaka-devnet-3
00:01:41
Mario Vega:https://github.com/ethereum/execution-spec-tests/releases/tag/fusaka-devnet-3%40v1.0.0
00:01:41
Ben Adams:Is the modexp x3 in devnet-3?
00:01:56
Marius van der Wijden:Replying to "Is the modexp x3 in ..." Y
00:02:06
Parithosh Jayanthi:Replying to "Is the modexp x3 in ..." Yes dev3 is ideally spec freeze
00:03:19
Parithosh Jayanthi:https://github.com/ethereum/execution-apis/pull/674
00:03:27
Parithosh Jayanthi:https://github.com/ethereum/builder-specs/pull/123
00:03:27
stokes:builder specs PR is ready to merge unless anyone has a question today
00:04:04
Gabriel Trintinalia | Besu:Besu ready, pending getBlobsV3, with have a PR for it ready
00:04:09
Marius van der Wijden:Geth: ready (except the config endpoint)
00:04:10
Roman:reth has a branch minus eth_config & get blobs v3
00:04:22
milen | Erigon:Erigon ready without getblobsv3
00:04:27
pawan:Lighthouse is ready too, fixing some performance issues
00:05:13
Saulius Grigaitis | Grandine:Grandine seems ready
00:05:13
Justin Traglia:On the CL spec side, not much has changed for Fusaka; alpha.3 is still the latest release. There’s been a considerable amount of work for EIP-7732 and EIP-7805 the past week.
00:05:15
nflaig:Lodestar is ready, just missing v2 builder api
00:06:19
Raúl Kripalani:since most ELs have getBlobsV3 ready and there's nothing to do for CLs, should we go ahead and merge the PR?
00:06:23
Gabriel Trintinalia | Besu:What about getBlobsV3? is it happening?
00:07:15
Raúl Kripalani:EL devs can you react here if you're good to merge the getBlobsV3 engine api spec change?
00:08:19
Saulius Grigaitis | Grandine:Does this test tool test only happy case?
00:08:32
Parithosh Jayanthi:Replying to "Does this test tool ..." Rpc testing tool? Yes, its a benchmark tool
00:08:51
Parithosh Jayanthi:Replying to "Does this test tool ..." Sync test tool is also happy case for now, since we are missing this data for 2x mainnet or significantly larger state 00:19:29 Marcin Sobczak: EIP-7883 ModExp Comprehensive Analysis Report: https://github.com/nerolation/eth-7883-analysis/blob/master/eip7883_comprehensive_analysis.md EIP-7883 Entity Impact Analysis (Updated): https://github.com/nerolation/eth-7883-analysis/blob/master/eip7883_entity_analysis.md
00:12:07
Kamil Chodoła:Nethermind - will report issue and want to add a metric for that
00:12:37
Parithosh Jayanthi:Can you guys please post metrics updates async on chat when its included?
00:12:41
Parithosh Jayanthi:Ideally in the performance branch
00:12:42
Dustin:Replying to "EL devs can you re..." it doesn't really matter if it's merged, if it's not tested. if it's not tested in a devnet-like environment it doesn't exist in a guaranteed way in Fusaka, from at least a Nimbus CL perspective
00:13:46
Ben Adams:Replying to "Ideally in the perfo..." All our branches are a performance branch ;)
00:14:17
CPerezz:https://hackmd.io/boZCC4eNR66zN3m9VDYFWQ
00:15:55
Dustin:Replying to "EL devs can you re..." I don't care how simple this looks, etc, this is how Holesky died
00:17:02
Kamil Chodoła:All the changes to "performance" branches are automatically populated to op-codes benchmarking, perfnet and bloatnet so make sure to update it regularly (with experimental perf changes + rebasing to master whenever needed)
00:18:43
Francesco:At the point when CLs (say in 6 months) want to introduce it and use it, it would be tested, no?
00:19:19
Dustin:Holesky's changes were simple too
00:19:42
Marius van der Wijden:We can't do an off-cycle release, if we don't ship it in fusaja releases, we will only merge it in glamsterdam
00:20:24
pawan:Replying to "We can't do an off-c..." Why? That’s how we did it for GetBlobsv1
00:20:34
kasey:Replying to "At the point when CL..." I think the concern is that if ELs release at Fusaka with this API, we would need to test with versions of the EL released at fusaka. CL releases that flip the switch to use this wouldn’t know if they are running against a tested EL pair.
00:21:52
pawan:Replying to "We can't do an off-c..." Also, to note, this is for an unproven optimization. getBlobsV1 was prototyped and first made sure it worked before all clients eventually implemented it
00:22:01
Marius van der Wijden:Replying to "We can't do an off-c..." Hmm I guess. I think requiring el and cl updates at the same time between hfs is very messy
00:23:57
Francesco:We should not defer discussion, we said last time we would make a decision
00:23:58
Csaba:BPOAALB (BPO And A Little Bit)?
00:24:03
Francesco:And it’s been going on for weeks, we should just make a decision
00:24:12
Francesco:Replying to "And it’s been going ..." (months?)
00:25:54
Dustin:If ELs ship getBlobsV3 now, and then at some point between now and when it's needed, those tests do happen, that can work, in pure testing consideration terms. i.e. they're not trusted yet, but it might be, retroactively, later
00:26:30
Dustin:I agree regarding process considerations though, this is ... messy
00:26:42
Parithosh Jayanthi:Yeah lets make a decision today please
00:27:04
Matthew Keil:Agreed.... If there is not consensus it needs to be postponed
00:27:42
stokes:afaik process wise we should be ok, we should just make a decision today
00:27:49
Dustin:And, importantly, testing process with the first Fusaka-related versions of each EL, not the current versions
00:28:46
Francesco:Right, I think the “don’t merge” decision should actually be to do getBlobsv2 as the CLs have it now (as in the PR) but not getBlobsv3
00:29:56
Raúl Kripalani:so revert this? https://github.com/ethereum/execution-apis/pull/671
00:30:00
stokes:Replying to "so revert this? http…" yep
00:30:02
Gabriel Trintinalia | Besu:getBlobsv2, allowing partial response or not?
00:30:27
Gabriel Trintinalia | Besu:all or nothing, okay
00:30:32
Manu:Replying to "getBlobsv2, allowing..." Prysm: currently all or nothing
00:30:44
stokes:we want v2 to have the behavior in any world moving forward
00:31:59
Kamil Chodoła:Maybe a bit to early as 45MGas just hit but shall we more openly discuss 60MGas increase and what we need to do to achieve that even before Fusaka?
00:32:17
Parithosh Jayanthi:Replying to "Maybe a bit to early..." Sure, depends on what section of the call its appropriate for
00:32:51
Marius van der Wijden:I think safe head should become the default for most applications that currently use finalized
00:33:31
Parithosh Jayanthi:Sorry for the out of band msg, but what’s the opinion on the builder PR? https://github.com/ethereum/builder-specs/pull/123 Can we merge it? Or any open discussion topics?
00:35:55
pawan:Replying to "Sorry for the out of..." Do all relays/mevboost support v2 already? How do we check support for v2 before calling it?
00:36:41
Parithosh Jayanthi:Replying to "Sorry for the out of..." @Bharath ?
00:37:03
Bharath:Replying to "Sorry for the out of..." We have work undergoing in the flashbots relay to implement the v2: https://github.com/flashbots/mev-boost/pull/809 https://github.com/flashbots/mev-boost-relay/pull/746 Which should hopefully be done soon
00:37:36
pawan:So when we implement it, do we call v2 by default and fallback to v1 if some particular error?
00:38:00
Bharath:Replying to "Sorry for the out of..." Other relay operators like Ultrasound and Titan are aligned with the v2 APIs. We will reach out to them to ensure that they have implemented it.
00:38:20
Bharath:Replying to "Sorry for the out of..." For devnet-3, we will get the v2 api implemented in the flashbots relay so we can test it over there
00:38:34
pawan:Replying to "Sorry for the out of..." I’m not clear when we start using it. Is it when fusaka activates?
00:38:48
Bharath:Replying to "Sorry for the out of..." yes
00:38:56
Bharath:Replying to "Sorry for the out of..." The v1 will be deprecated with Fusaka
00:39:01
Bharath:Replying to "Sorry for the out of..." And v2 should be used.
00:39:32
pawan:Replying to "Sorry for the out of..." Sounds good, will get this done today
00:39:50
Bharath:Replying to "Sorry for the out of..." We will implement with the flashbots mev-relay and meg-boost. We can’t test it out with other clients cuz their code is closed sourced anyways.
00:39:59
Bharath:Replying to "Sorry for the out of..." We should aim to get it for devnet-3
00:40:12
Bharath:Replying to "Sorry for the out of..." I mean relays*
00:40:15
Bharath:Replying to "Sorry for the out of..." Not clients
00:40:26
terence:I think the current safe block hash definition is vague enough such that CL client (node operator) can be passed (ie. justified, unrealized justified.. fast confirm...) "safeBlockHash: DATA, 32 Bytes - the "safe" block hash of the canonical chain under certain synchrony and honesty assumptions. This value MUST be either equal to or an ancestor of headBlockHash"
00:40:59
Bharath:Replying to "Sorry for the out of..." Hope that’s clear.
00:41:40
Marius van der Wijden:We should discuss with rpc providers though tbh
00:42:30
Dustin:also, SSZ is fine, but doesn't 123 as-is mean that there's no real "scaling" concern with JSON anymore?
00:44:04
stokes:Replying to "also, SSZ is fine, b…" it removes the main bottleneck for sure
00:44:57
nflaig:Replying to "also, SSZ is fine, b..." the response was never a concern at least for me but network failures trying to submit blinded block to relay because you can't fallback at this point to local block 00:55:18 Ben Adams: CLZ is a single stack opcode like NEG; so much lighter than MUL Only issue is timing
00:45:45
Marius van der Wijden:Why don't we have real benchmarks for this yet?
00:46:10
Dustin:Replying to "also, SSZ is fine,..." yes, none of the currently proposed changes fix that though @nflaig
00:46:18
Marius van der Wijden:I would prefer not to change it, very late in the process
00:47:06
spencer-tb:Could it be < 3 (not a heart) in Glamsterdam? If so then I think we should wait until then!
00:47:15
Dustin:Replying to "I would prefer not..." at least, if it's changed, then make sure every EL by first testnet has implemented it uniformly
00:48:20
Ben Adams:Replying to "Could it be < 3 (not..." potentially repricing a lot of opcodes in Glamasterdam; so could fit there
00:48:49
Raúl Kripalani:to close the loop on getBlobsV3: closed the PR opened one to make V2 all-or-nothing again, in case ppl here want to review quickly
00:49:04
Marius van der Wijden:Our opAdd: 8ns opCLZ: 48ns
00:49:49
Ben Adams:Replying to "How do we know 5 is ..." you could examine every byte individually and it would still probably be faster than MUL
00:51:16
nflaig:Replying to "also, SSZ is fine, b..." no, but my point is that ssz on the api was never meant to make the response faster as we already knew for long time that relays delay the response anyways artifically
00:54:01
Parithosh Jayanthi:~85M I think?
00:55:23
jochem-brouwer:Marius point about the refund is a good point, because you can have effective gas limit 20% higher if you max out the refunds
00:55:30
Ben Adams:Replying to "~85M I think?" yeah want eth/70 for fusaka so receipts won't be problem after
00:55:37
Csaba:Doesn't the limit depend also on CL CPU usage changes?
00:55:39
Marius van der Wijden:I would also like more data on state growth for 60M, hope that bloatnet can help us there
00:55:57
Parithosh Jayanthi:Replying to "Doesn't the limit de..." For post peerdas? Or what do you mean?
00:56:18
Parithosh Jayanthi:Replying to "~85M I think?" Isn’t it already included?
00:56:33
Ben Adams:Replying to "~85M I think?" on plan 🙂
00:56:39
Csaba:Replying to "Doesn't the limit de..." Exact. PeerDAS changes CPU
00:56:40
CPerezz:Replying to "I would also like mo..." One step at a time! 🙂 Getting to 2x mainnet for now and gathering EL client’s info to come up with as many cases as possible. Any deadline in mind?