Will Corcoran:Let's, make do… So…
Transcript
Will Corcoran:I don't… there's no client devs on the call, so normally I start with client updates. I don't know if…
Will Corcoran:Anyone has any updates on the implementation side, or if we should just jump to spec updates?
Will Corcoran:Alright, let's do it. Mikael, was there anything that you wanted to kick us off with?
Mikhail Kalinin:Yep, sure, so… Since the last call.
Mikhail Kalinin:we have merged this PR, With the test fix.
Mikhail Kalinin:This is, like, should be,
Mikhail Kalinin:As expected, it should be, like, the last substantial change to the spec.
Mikhail Kalinin:Except for potential bug fixes.
Mikhail Kalinin:And, yeah, the last one before we finalize the spec and actually merge the spec PR.
Mikhail Kalinin:So the next one I'll share now…
Mikhail Kalinin:This was the refactor, and there was a follow-up fix, because this refactor introduced an underflow.
Mikhail Kalinin:found by Eton from Nimbus, so there was a follow-up commit with the fix, basically adding a safeguard, for potential underflow.
Mikhail Kalinin:And yet another thing to share…
Mikhail Kalinin:Yeah, the last one was, like…
Mikhail Kalinin:I was… yeah, the last one is the bug fix for… for a discrepancy that was in the spec since the beginning, also noticed by Eton.
Mikhail Kalinin:So I would not go into, like, all the details. I think the PR is kind of, like, say, self-descripted, but just wanted to say that, we had, three, changes in this pack.
Mikhail Kalinin:And implementation is those who already have implemented, all these pieces of SPAC should just be aware of those.
Mikhail Kalinin:And… Yeah, just, you know, catch up with those changes.
Mikhail Kalinin:On the spec side, I think, From my, my perspective.
Mikhail Kalinin:The spec looks good, and there was a decent amount of the feedback incorporated in the spec already. And the goal is to finalize the spec in the next couple of weeks.
Mikhail Kalinin:So… I'll be working on towards, towards finalizing it.
Mikhail Kalinin:And all the follow-up bug fixes, if they will appear, and
Mikhail Kalinin:Yeah, and all the, follow-up edge case testing, they can be submitted separately.
Mikhail Kalinin:So there is, like, some…
Mikhail Kalinin:Homework to do with the spec itself, to update the test format.
Mikhail Kalinin:And, to fix Gloas tests, they're just failing, because the Gloas has updates to
Mikhail Kalinin:To the fork choice functions that's used by the tests.
Mikhail Kalinin:So they need to just cut up with those changes.
Mikhail Kalinin:Yeah, that's… that's the goal, finalizing this pack in a couple of weeks. And, with respect to that, I was just gonna ask if we should double-check
Mikhail Kalinin:That we are all okay to do, to merge the PR in a couple of weeks.
Mikhail Kalinin:One of the problems I see here is that some of us will be on EthCC.
Mikhail Kalinin:by that time.
Mikhail Kalinin:So we could probably do this asynchronously.
Will Corcoran:Yeah,
Will Corcoran:That is a good point. I was actually gonna flag that, as probably something that'll cause me to miss the next breakout room, and perhaps we could just cancel it, but…
Will Corcoran:With regards to merging that PR at that point in time, are there… I guess…
Will Corcoran:Are there, like, heightened concerns that come along with that, that you would like to be…
Will Corcoran:at your home base in order to do that work? If so, I don't see any harm in that waiting another week until you're back from EthCC.
Will Corcoran:And just… Out of curiosity, could you explain what you mean by underflow?
Mikhail Kalinin:I was just, like, the,
Mikhail Kalinin:Sure. So that PR introduced, a subtraction operation, so we just subtract,
Mikhail Kalinin:Some of the value from another value, and when the
Mikhail Kalinin:the value that we subtract the thing from is lower. It's gonna basically underflow, and since we use unsigned integers, it will take,
Mikhail Kalinin:Arbitrarily large value, instead of, like, Just return 0.
Mikhail Kalinin:So the safeguard is basically to return zero, when… when… before, you know, doing a subtraction in this case.
Will Corcoran:Excellent, thanks.
Will Corcoran:Was there anything else on the specs or testing front? Any questions about, the roadmap.
Will Corcoran:Between now and merging that in.
Mikhail Kalinin:I can add on testing. So, for these PRs, I've added points to the test plan.
Mikhail Kalinin:So those, are…
Mikhail Kalinin:some of the… there are some corner cases that we want to cover with tests. The current, testing effort is at,
Mikhail Kalinin:In the progress on, like, I would say in the middle of,
Mikhail Kalinin:Having the previous block test that, was, like, announced a couple of weeks ago.
Mikhail Kalinin:I'm aiming to finish it this week, basically.
Mikhail Kalinin:And this is also…
Mikhail Kalinin:Yeah, and this, this also, like, this, previous factor, previous block… previous epoch block tests are…
Mikhail Kalinin:Gonna be a part of, you know, the…
Mikhail Kalinin:of the changes that we are about to merge to the consensus fact, so this is one of the… on the critical path to merge this PR, I think. Also, I published,
Mikhail Kalinin:The test vectors, they all already include some of these previous, block tests.
Mikhail Kalinin:Yeah, and Lighthouse and Lodestar seem to run them well, so both tests make sense.
Mikhail Kalinin:We'll just keep to… keep… keep focusing on it, till the end of this week, so should… should be up.
Mikhail Kalinin:Should be an update with the new test vectors after that.
Mikhail Kalinin:Answering Jihoon's question, do we need to handle that on the flow case, or is it just returning zeros sufficient?
Mikhail Kalinin:I think returning zero is sufficient in this case, in this particular case.
Mikhail Kalinin:It would be great to have a test for it, so… but we can write it later on.
Will Corcoran:Excellent. Do we anticipate any… new tests…
Will Corcoran:needing to be written out of the finalized research work that, Luca and Roberto are working on.
Mikhail Kalinin:No, I think we're fine, like, with the… like, the algorithm in the spec is at its final state.
Mikhail Kalinin:So, basically, testing doesn't depend on That research paper.
Mikhail Kalinin:Correct me if I'm wrong.
Roberto Saltini:Yeah, yeah, yeah.
Luca Zanolini:No, no, yep.
Roberto Saltini:moment is… Yeah, it's more on, improving the… The readability of the paper.
Roberto Saltini:Just trying to provide a sort of soft… Introduction to the…
Roberto Saltini:Into the series of lemmas that approves.
Roberto Saltini:Yeah, so no change to the algorithm at the moment, and no change for seeing either.
Will Corcoran:Awesome.
Will Corcoran:so, I don't know if there are any other… Testing… spec, research-related.
Will Corcoran:Topics, that anyone would like to bring up?
Will Corcoran:I know that,
Will Corcoran:Julian, you had, reached out to Mercy, I believe, about, RCP-related conversations. Is there anything that you would like to say there?
Julian Ma:So…
Julian Ma:Yes, I reached out to Mercy Indeed, and I saw that Mercy posted an agenda for the next RPC standards call. It would be great to present it there, just so that RPCs are aware.
Julian Ma:They basically don't need to do anything, but it's good for them to be aware of it for when their customers come to them, and eventually it would be nice if they could, like, speed stuff up as well, so…
Julian Ma:In speaking with one of the bridges, they mentioned that RPCs could start competing on who is, like, the fastest to be able to fast confirm a block if you're better connected to the network. I think this could become interesting, maybe with ePBS, as, like, attestations come earlier in the block, for example.
Will Corcoran:Great, it looks like that, next RPC call is next Monday?
Will Corcoran:Good.
Julian Ma:It's on the 23rd, I believe.
Will Corcoran:3PM UTC.
Julian Ma:Yes.
Will Corcoran:Great, and in case you missed it, we shipped a really fun little website yesterday, fastconfirm.it.
Will Corcoran:And… Yeah, I think pretty much…
Will Corcoran:Several of the people on this call,
Will Corcoran:lent a hand in bringing this to market. I think it's looking really great.
Will Corcoran:Seems to be getting some… some real positive, feedback, and…
Will Corcoran:Yeah, I'm just real happy with the way that, we're kind of parallel processing so many different things, and I think it's gonna help
Will Corcoran:Like, really,
Will Corcoran:Accelerate the feedback loop and make sure that we're getting adoption, and the markets kind of… seems to be, very excited for this to ship, so…
Will Corcoran:I think.
Will Corcoran:April, May is gonna be a lot of fun, getting this rolled out. So, yeah, Julian and I have a call to action on the website to… to get in touch, and it leads people to an intake form, and we've already started having
Will Corcoran:some calls, and Julian's been doing a fantastic job, like, explaining all the mechanisms and value props to all these different user types, and that has, in turn, been helping make us aware of some…
Will Corcoran:Additional opportunities for people to reach out to, and just get a better understanding of, like, ecosystem-wide
Will Corcoran:How this, needs to be rolled out.
Will Corcoran:Is the FCR spec, like, an ad hoc to the CL spec? In other words.
Will Corcoran:is it unidirectional from the LSpec to FCR? Sorry, I just skimmed it. But that's a great question. So, yeah, I don't know, Mikhail, if you want to note on that, because it's not,
Will Corcoran:it's not a hard fork, it's not consensus-breaking code. Any thoughts on how that gets, merged in or adopted into the
Will Corcoran:The beacons back.
Mikhail Kalinin:Yeah, that's a good question. So, currently,
Mikhail Kalinin:This pack is kind of, like, pretty much independent, but, for…
Mikhail Kalinin:For the algorithm to work, we need to keep around some of the variables.
Mikhail Kalinin:like the, the head of the canonical chain observed at the beginning of the previous slot.
Mikhail Kalinin:And, a few others.
Mikhail Kalinin:And for this, we, currently, this pack extends the Fok Choice floor to keep those variables there.
Mikhail Kalinin:So it kind of, like, modifies the spec in this way, but this is,
Mikhail Kalinin:Backwards and forwards compatible changes for other… Hard forks.
Mikhail Kalinin:For instance, for clause, but it should be also, kind of, apply to other artworks.
Mikhail Kalinin:And the other piece of this… the consensus spec that is changed is the… there is a tiny bit of, of the spec around the safe block hash.
Mikhail Kalinin:The one that the CL uses to pass to the EL.
Mikhail Kalinin:So this also changed to, basically use the confirmed talk.
Mikhail Kalinin:Yeah, that's… That's, like, the answer.
Mikhail Kalinin:It's kind of, like, sep… Independent, but, like.
Mikhail Kalinin:It's standalone, but there are some.
Mikhail Kalinin:Small dependencies.
Will Corcoran:Curious, can anyone think of an analog?
Will Corcoran:features. You know, something else that's not…
Will Corcoran:Consensus breaking, but exists within the consensus spec like this, or is this sort of a unique… one-off.
Mikhail Kalinin:I can't say about the feature itself, but in terms of the spec, speccing out, there are… there is a,
Mikhail Kalinin:Week subjectivity period, it's stuck.
Mikhail Kalinin:Which is… Stand alone.
Mikhail Kalinin:But, weak subjectivity is, like.
Mikhail Kalinin:An implicit property of the protocol, so that spec is just there to do the computation.
Mikhail Kalinin:According to this big subjectivity model, but yeah. But the feature that can be, you know, consumed by users, I don't know, I'm not aware of.
Will Corcoran:Mercy's asking, how should our PC providers communicate the security difference between a safe, fast confirm block and a finalized block to downstream customers, especially those in high-value use cases like exchanges or bridges?
Will Corcoran:Julian, any thoughts there?
Will Corcoran:The best way to… Communicate that nuance between fast confirmed and finalized.
Julian Ma:I think…
Julian Ma:like, every time that we communicate faster information rule in depth, we say about the assumptions, and usually we do compare it to finality as well. So I think for those implementing it, it's quite clear. Like, maybe publicly, it's…
Julian Ma:Somewhat less clear,
Julian Ma:I know, we could just say it's a confirmation rule with different assumptions. What's, like, the forum in which you're thinking about the… expressing the difference?
Julian Ma:Maybe I missed that.
Will Corcoran:I guess Mercy was asking, how should RPC providers communicate the security difference? And maybe this is something that you could just, speak to on Monday.
Julian Ma:Yeah, that would be good.
Julian Ma:I think what would be helpful is that they could point to the website, where the security differences are explained.
Julian Ma:Mmm… Yeah, maybe I could speak more to it on Monday, yeah. Thanks.
Will Corcoran:Great. Any other discussion topics, or blockers, or timely items that…
Will Corcoran:Folks would like to… to discuss?
Mikhail Kalinin:I was actually going to raise a topic on standardizing metrics that I introduced by Lighthouse.
Mikhail Kalinin:That will help, will be helpful for… Performance measurement across different implementations.
Mikhail Kalinin:So, I'll just probably drop a link to the chat, but also, Yeah.
Mikhail Kalinin:Since there are no…
Mikhail Kalinin:depths here. I'm just wondering if anyone is aware of the best way to, you know, to introduce those metrics,
Mikhail Kalinin:like, into the CL metrics that we already have.
Will Corcoran:You might… do you know, Katya?
Mikhail Kalinin:Yeah.
Will Corcoran:You might want to ping her. She's been instrumental in leading sort of client…
Will Corcoran:agnostic, metrics in the lean consensus, calls on PQ Interop, and she was also leading, that effort
Will Corcoran:for Peerdos at one point in time. So there is a… a precedent, and she's as knowledgeable on the… on the topic as anyone.
Mikhail Kalinin:Awesome, thank you for the contact. Yeah, also, it's for us all, and for developers to think about which of,
Mikhail Kalinin:not, like, all metrics that I in Lighthouse might be standardized, but the most, like, meaningful, the most reasonable one should be.
Mikhail Kalinin:So, it's like, to decide on the actual list of metrics that we want to see in our clients.
Will Corcoran:That's great. So do you, is it… would it be…
Will Corcoran:Enforced, almost, like, where you would have…
Will Corcoran:Like, a test to determine whether or not the spec is implemented, or the metric is implemented.
Mikhail Kalinin:I think it should not be kind of enforced, but it's rather, like, should… the client shouldn't implement this.
Mikhail Kalinin:Hmm, so… Yeah, I believe we cannot enforce doing that.
Will Corcoran:But yeah, great idea, I think that would be very helpful.
Mikhail Kalinin:Yeah, but if client is about to implement some metric.
Mikhail Kalinin:We will have a standard for this, so it's, like, really the same metric in all clients, and it's easy to monitor.
Mikhail Kalinin:Different clients on the same dashboard, if metrics are standardized.
Will Corcoran:Excellent.
Will Corcoran:From Jahoon, I think we should consider what users would be interested in for the metrics.
Will Corcoran:Yeah, that's something that we can, start to…
Will Corcoran:ask in our… our, sort of, intro conversations that we have, Jahun.
Will Corcoran:Mercy.
Mercy Boma Naps-Nkari:Sorry, I just wanted to add, it would also be good to know what you want to test, for example, what you want to see on the metrics itself.
Mercy Boma Naps-Nkari:The things you want to measure, per se.
Will Corcoran:and with… the next call coinciding with EthCC
Will Corcoran:would people be opposed to me cancelling that call, as I'll be out of the office? If not…
Will Corcoran:Happy to let the call run, and if someone else wants to lead the call.
Will Corcoran:Cool. And then, Mikhail, just so you're aware, Julian and I met with, Nuno from the Digital Studio team of the EF last week.
Will Corcoran:And, we're trying to get some…
Will Corcoran:Some booklets printed out so that we can have, those on hand.
Will Corcoran:I know you'll be in Cannes, I'll be in Cannes. We could divvy them up when we get to Cannes, and they could be…
Will Corcoran:Valuable information, you know, for people during conversations, and hopefully direct people to the… to the website.
Will Corcoran:Just helps spread the word.
Mikhail Kalinin:Great.
Will Corcoran:But if there's nothing else, I think that's all I had.
Will Corcoran:Plan to cover for this, for this call.
Will Corcoran:Is there a list of clients?
Will Corcoran:By clients, do you mean CL clients or potential users?
Will Corcoran:If you… Right now,
Will Corcoran:Mikael, did you see the, link that I posted earlier, this dashboard that,
Will Corcoran:that John Church from… NetherMind, created that's tracking the implementation of
Will Corcoran:the clients. This is showing Lodestar and Lighthouse.
Will Corcoran:as, having… Implemented or enabled support for… Best confirmation rule.
Will Corcoran:Sorry.
Mercy Boma Naps-Nkari:I was… I was sorry, I was just looking for the specific branch, where the code is.
Will Corcoran:Or… any client?
Mercy Boma Naps-Nkari:Yeah, for, like, Lighthouse and then Lost, I think that's the ones I've seen so far, but I don't like where the actual code implementation is, not the dashboard.
Will Corcoran:If you go to the,
Will Corcoran:the GitHub issue for this call. There's a table in the top of the issue, and I try to link to the code
Will Corcoran:the active PR, for each team.
Will Corcoran:Alright, well, thanks all.
Mikhail Kalinin:Thanks, Will.
Roberto Saltini:Thank you.
Julian:Thanks, Phil.
Luca Zanolini:Thank you, guys.
Chat Logs
00:03:42
Mikhail Kalinin:https://github.com/mkalinin/eth2.0-specs/pull/30
00:04:10
Mikhail Kalinin:https://github.com/mkalinin/eth2.0-specs/pull/31
00:04:35
Mikhail Kalinin:https://github.com/mkalinin/eth2.0-specs/pull/32
00:09:25
Jihoon:Do we need to handle that underflow case or is just returning 0 sufficient?
00:10:28
Will Corcoran:https://fcrdashboard.vercel.app/
00:10:39
Will Corcoran:John Church from Nethermind made this 🙂
00:12:51
Mercy Boma Naps-Nkari:https://github.com/ethereum/pm/issues/1974
00:14:14
Will Corcoran:https://fastconfirm.it/
00:14:29
Jihoon:Is the FCR spec like an ad-hoc to the CL spec? In other words, is it unidirectional from the CL spec to FCR? (sorry I just skimmed it on mobile and I wonder if there is anything I can help with in advance)
00:17:55
Jihoon:Got it, thank you!
00:18:49
Mercy Boma Naps-Nkari:how should RPC providers communicate the security difference between a safe (fast-confirmed) block and a finalized block to downstream customers, especially those in high-value use cases like exchanges or bridges?
00:20:46
Mercy Boma Naps-Nkari:Thanks
00:22:00
Julian Ma:Replying to "Thanks"
We have one-pagers for exchanges, solvers and bridges, and L2s. They are retrievable from the fastconfirm.it website.
RPC providers could share these with their customers. The one-pagers clearly lay out the security differences. The website has even more information
[Full message cannot be displayed on this version]
00:22:08
Mikhail Kalinin:Metrics in LH:
https://github.com/sigp/lighthouse/pull/8951/changes#diff-fe6de6423ae06427536ba37b48b6d913837e63de2b7d04c32d128e476eface68
00:22:45
Mercy Boma Naps-Nkari:https://github.com/KatyaRyazantseva/beacon-metrics
00:23:04
Mercy Boma Naps-Nkari:This is the right link https://github.com/ethereum/beacon-metrics
00:23:55
Jihoon:I think we should cosider what users would be interested in for the metrics
00:26:28
Mercy Boma Naps-Nkari:Is there like list of clients
00:26:41
Mercy Boma Naps-Nkari:That have implemented this cl
00:27:02
Will Corcoran:Replying to "https://fcrdashboard..."
here
Summary
10 highlights
· 3 action itemsExperimental
Summary
10 highlights · 3 action itemsExperimentalspec status
testing progress
client updates
- No client developers attended this call; likely due to ePBS devnet-0 work00:03:03