-
Notifications
You must be signed in to change notification settings - Fork 38
Open
Description
Summary
The target-contracts repository needs to be updated to incorporate upstream changes from Succinct's SP1Helios library that have been made post-audit. The current submodule is pinned to commit 3ad7783 while the upstream has progressed to 51b1e4a with significant changes.
Current State
- Current SP1Helios commit:
3ad7783(version 0.8.6) - Latest upstream commit:
51b1e4a(includes vkey updates and storage proof improvements) - Submodule URL: https://github.com/succinctlabs/sp1-helios
Required Updates
1. SP1Helios Library Updates
Recent upstream changes that need to be incorporated:
- Explicit vkey checks in constructor (
51b1e4a): Constructor now explicitly checks verification keys - Events on vkey updates (
bdf42dd): New events emitted when verification keys are updated - Storage proof service improvements (
cf2e2f8):- Operator can now act as storage proof service
- Storage proofs can be submitted without requiring state updates
- This could significantly impact the RegistryCoordinatorMimic implementation
2. Contract Updates Required
Based on the codebase analysis, the following contracts will need updates:
RegistryCoordinatorMimic.sol
- Currently imports
SP1Heliosat line 21:import {SP1Helios} from "@sp1-helios/SP1Helios.sol"; - Uses
SP1Heliosas immutable variable at line 43 - May need updates to handle new vkey validation and storage proof patterns
SP1HeliosMock.sol (test contract)
- Located at
contracts/script/e2e/contracts/SP1HeliosMock.sol - May need updates to match new interface changes
3. Integration Points to Review
- Storage proof verification flow: The new ability to submit storage proofs without state updates may require changes to the proof verification logic
- Event handling: New vkey update events should be properly handled and potentially monitored
- Constructor patterns: Review all SP1Helios instantiations to ensure they comply with new vkey check requirements
4. Testing Requirements
- Update test fixtures if needed for new proof formats
- Ensure all existing tests pass with updated library
- Add tests for new functionality (storage proofs without updates)
- Verify e2e docker scripts still work with updates
Action Items
- Update SP1Helios submodule to latest commit
- Review breaking changes and update contract implementations
- Update mock contracts for testing
- Run full test suite and fix any failures
- Update deployment scripts if needed
- Document any API changes for downstream consumers
References
- SP1Helios repository: https://github.com/succinctlabs/sp1-helios
- Current integration points:
RegistryCoordinatorMimic.sol,SP1HeliosMock.sol - Related TODOs in codebase:
RegistryCoordinatorMimic.sol:60-61: Assembly storage array modifications need audit reviewMiddlewareShim.sol:22: Gas limit concerns for getMiddlewareData
Impact Assessment
High Priority: These changes are post-audit, suggesting they may include security improvements or important bug fixes that should be incorporated promptly.
Additional Notes
- Several unaudited dependencies are being used (e.g.,
BLSSigCheckOperatorStateRetrieverfrom eigenlayer-middleware/unaudited) - Consider comprehensive audit review after these updates are incorporated
Metadata
Metadata
Assignees
Labels
No labels