nethermind icon indicating copy to clipboard operation
nethermind copied to clipboard

Implement Shutter on Gnosis Chain

Open rubo opened this issue 1 year ago • 1 comments

Changes

  • Block production for Shutter transactions
  • Fetching logs from events
  • Receiving decryption keys from Keyper p2p network
  • Get eon information from contracts
  • Check validator registration

Types of changes

What types of changes does your code introduce?

  • [ ] Bugfix (a non-breaking change that fixes an issue)
  • [x] New feature (a non-breaking change that adds functionality)
  • [ ] Breaking change (a change that causes existing functionality not to work as expected)
  • [ ] Optimization
  • [x] Refactoring
  • [ ] Documentation update
  • [ ] Build-related changes
  • [ ] Other: Description

Todo

  • [x] Refactor as Shutter plugin instead of AuRa #7307
  • [x] Retrieve logs on new block and store #7310
  • [x] Shutter block improvement
  • [ ] Improve unit tests, add E2E test
  • [ ] Add metrics
  • [ ] (LibP2P) Implement basic peer discovery
  • [ ] (LibP2P) Investigate ARM connection issues
  • [ ] (LibP2P) Should not need EnablePreviewFeatures
  • [ ] (bls-bindings) Audit bindings code

Testing

Requires testing

  • [x] Yes
  • [ ] No

If yes, did you write tests?

  • [x] Yes
  • [ ] No

Documentation

Requires documentation update

  • [x] Yes
  • [ ] No

Requires explanation in Release Notes

  • [x] Yes
  • [ ] No

rubo avatar Jan 06 '24 20:01 rubo

SequencerContract cannot search through all blocks all the time.

Overall too much LINQ, multiple enumerations in many places. Please make private things private.

There were quite a few places I used internal and InternalsVisibleTo with the intention of adding unit tests for them - do you think I should remove this and do it some other way?

Marchhill avatar Jun 20 '24 15:06 Marchhill