Skip to content

Nm registration fixes#721

Open
cyc60 wants to merge 4 commits into
node-managerfrom
nm-registration-fixes
Open

Nm registration fixes#721
cyc60 wants to merge 4 commits into
node-managerfrom
nm-registration-fixes

Conversation

@cyc60
Copy link
Copy Markdown
Contributor

@cyc60 cyc60 commented May 4, 2026

No description provided.

cyc60 added 2 commits April 24, 2026 20:46
Signed-off-by: cyc60 <avsysoev60@gmail.com>
Signed-off-by: cyc60 <avsysoev60@gmail.com>
@cyc60 cyc60 requested a review from Copilot May 4, 2026 17:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR updates Node Manager validator funding/registration flows to include proper validator deposit signatures and consolidates validator event scanning into a single helper.

Changes:

  • Add deposit_signatures to NodeManagerFundingRequest and propagate deposit signatures through funding approval + funding transaction paths.
  • Introduce get_validators_for_funding() to build Validator objects (incl. deposit signatures) from the keystore.
  • Replace injected EventScanner usage with a centralized scan_validators_events() call in startup and periodic tasks.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/validators/utils.py Adds helper to build Validator objects for funding using keystore deposit data.
src/node_manager/typings.py Extends funding request typing with deposit_signatures.
src/node_manager/tasks.py Switches periodic scanning to scan_validators_events() and changes funding batching to operate on Validator objects.
src/node_manager/register_validators.py Updates fund_validators() to accept validators directly (with deposit signatures).
src/node_manager/oracles.py Builds funding requests from Validator objects (incl. deposit signatures) and changes deadline signing payload.
src/node_manager/execution.py Introduces scan_validators_events() that scans both network and operator validator events.
src/commands/node_manager_start.py Loads genesis validators and uses scan_validators_events() during startup sync.
src/node_manager/tests/* Updates tests/mocks to match new scanner and funding request shape.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/node_manager/tasks.py Outdated
Comment thread src/node_manager/execution.py Outdated
Comment on lines +59 to +76
async def scan_validators_events(
operator_address: ChecksumAddress, block_number: BlockNumber, is_startup: bool
) -> None:
"""Scans new vault and network validators for the given block number."""
network_validators_processor: NetworkValidatorsStartupProcessor | NetworkValidatorsProcessor
if is_startup:
network_validators_processor = NetworkValidatorsStartupProcessor()
else:
network_validators_processor = NetworkValidatorsProcessor()

network_validators_scanner = EventScanner(network_validators_processor)
await network_validators_scanner.process_new_events(block_number)

operator_validators_processor = OperatorValidatorsProcessor(operator_address)
operator_validators_scanner = EventScanner(
operator_validators_processor, argument_filters={'operator': operator_address}
)
await operator_validators_scanner.process_new_events(block_number)
Comment thread src/node_manager/oracles.py
Comment thread src/node_manager/oracles.py
cyc60 added 2 commits May 4, 2026 20:51
Signed-off-by: cyc60 <avsysoev60@gmail.com>
Signed-off-by: cyc60 <avsysoev60@gmail.com>
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.

2 participants