Skip to content

node: move proposal signing into validator client#997

Open
zclawz wants to merge 1 commit into
mainfrom
fix/move-proposal-publish-to-validator-client
Open

node: move proposal signing into validator client#997
zclawz wants to merge 1 commit into
mainfrom
fix/move-proposal-publish-to-validator-client

Conversation

@zclawz

@zclawz zclawz commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Implements the TODO in pkgs/node/src/chain.zig around proposal signing/proof construction by moving validator-owned work out of chain.zig and into validator_client.zig.

Changes:

  • Removes the TODO block from BeamChain.proposeImpl.
  • Adds ValidatorClient.buildProposalOutput, which:
    • signs the produced block root with the validator key manager,
    • builds the Type-2 block proof via the chain proof helper,
    • folds/free Type-1 attestation proofs,
    • returns the signed block as a validator gossip output (GossipMessage.block).
  • Adds a small pending validator-output queue on BeamNode so off-loop proposal workers can hand signed block output back to the interval tick.
  • Reuses the node's existing validator output publish path so BeamNode remains the publisher for blocks/attestations/aggregations.

Tracking topic: https://t.me/zeamETH/7164

Validation

Running:

  • zig fmt --check pkgs/node/src/chain.zig pkgs/node/src/node.zig pkgs/node/src/validator_client.zig
  • zig build test --summary all --color off

I will update this PR comment when the full test run completes.

@zclawz

zclawz commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

Validation complete ✅

  • zig fmt --check pkgs/node/src/chain.zig pkgs/node/src/node.zig pkgs/node/src/validator_client.zig passed
  • zig build test --summary all --color off passed (EXIT:0)

Log: /tmp/pr-move-validator-output-test.log

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