Skip to content

Conversation

@vineetpant
Copy link

Introduction

EIP-7745 introduces a new log indexing mechanism that replaces traditional bloom filters with a more efficient
LogIndexSummary structure. This requires:

  • SSZ serialization of log data for hash tree root calculations
  • Fixed-size List[T, N] for topics (max 4 topics per log)

Description

This PR updates the Log type in eth/common/receipts.nim to use SSZ List[Hash32, 4] for topics instead of seq[Hash32], enabling proper SSZ serialization required for EIP-7745 (Log Value Index).

Details

  1. Log Type Update (eth/common/receipts.nim)
  • Changed topics field from seq[Hash32] to List[Hash32, 4]
  • Maintains backward compatibility with RLP encoding
  • Enables SSZ serialization for LogIndex functionality
  1. SSZ Serialization Support (eth/common/ssz_utils.nim)
  • Added SSZ serialization helpers for List[Hash32, 4]
  • Ensures proper encoding/decoding of log topics
  1. RLP Writer Fixes (eth/rlp/writer.nim)
  • Fixed IndexDefect crash when encoding SSZ List[T, N] types
  1. Dependency Update (eth.nimble)
  • Updated ssz_serialization dependency to support List[T, N] types

Breaking Changes

None - This change is backward compatible:

References

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant