Skip to content

Conversation

@macladson
Copy link
Member

Issue Addressed

#7894

Proposed Changes

Moves the Interchange format from slashing_protection and thus removes the dependency on slashing_protection from eth2 which can now just depend on the slimmer eip_3076 crate.

@macladson macladson added ready-for-review The code is ready for review code-quality low-hanging-fruit Easy to resolve, get it before someone else does! labels Oct 15, 2025
use std::collections::{HashMap, HashSet};
#[cfg(feature = "json")]
use std::io;
use types::{Epoch, Hash256, PublicKeyBytes, Slot};
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These types imports add a lot of bloat to this crate. It doesn't really matter much right now since eth2 needs types anyway but it might be worth considering some kind of core or primitives feature in types which only imports these basic types, especially if this crate gets used in contexts where the rest of the types aren't already required.

Copy link
Member

@michaelsproul michaelsproul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect, I love this!

@michaelsproul michaelsproul added ready-for-merge This PR is ready to merge. and removed ready-for-review The code is ready for review labels Oct 16, 2025
@mergify mergify bot added the queued label Oct 16, 2025
mergify bot added a commit that referenced this pull request Oct 16, 2025
mergify bot added a commit that referenced this pull request Oct 16, 2025
@michaelsproul michaelsproul removed the ready-for-merge This PR is ready to merge. label Oct 16, 2025
@mergify
Copy link

mergify bot commented Oct 16, 2025

This pull request has been removed from the queue for the following reason: pull request dequeued.

Pull request #8206 has been dequeued. The pull request rule doesn't match anymore. The following conditions don't match anymore:

  • label=ready-for-merge.

You can check the last failing draft PR here: #8211.

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio requeue comment.

@mergify mergify bot removed the queued label Oct 16, 2025
@michaelsproul
Copy link
Member

@macladson weirdly one of the interchange tests is failing with an out-of-bounds error, can you take a look? 🙏

https://github.com/sigp/lighthouse/actions/runs/18548309242/job/52870463882?pr=8211

@michaelsproul michaelsproul added the waiting-on-author The reviewer has suggested changes and awaits thier implementation. label Oct 16, 2025
@macladson
Copy link
Member Author

Whoops, I de-duplicated the Interchange construction right before I pushed and broke it 😅
Fixed now

@macladson
Copy link
Member Author

Hmm still getting failures 1/3 times.. Something about that test is non-deterministic

@macladson
Copy link
Member Author

It was from HashMap ordering. I've just gone ahead and removed those extra checks since minification behaviour is more thouroughly checked here anyway -> https://github.com/sigp/lighthouse/blob/unstable/validator_client/slashing_protection/src/interchange_test.rs#L247-L302

@macladson macladson added ready-for-merge This PR is ready to merge. and removed waiting-on-author The reviewer has suggested changes and awaits thier implementation. labels Oct 16, 2025
@mergify mergify bot added the queued label Oct 16, 2025
mergify bot added a commit that referenced this pull request Oct 16, 2025
@mergify mergify bot merged commit f13d061 into sigp:unstable Oct 16, 2025
37 checks passed
@mergify mergify bot removed the queued label Oct 16, 2025
@macladson macladson deleted the eip-3076 branch October 16, 2025 18:19
jchavarri pushed a commit to jchavarri/lighthouse that referenced this pull request Oct 21, 2025
  Moves the `Interchange` format from `slashing_protection` and thus removes the dependency on `slashing_protection` from `eth2` which can now just depend on the slimmer `eip_3076` crate.

Co-Authored-By: Mac L <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

code-quality low-hanging-fruit Easy to resolve, get it before someone else does! ready-for-merge This PR is ready to merge.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants