Skip to content

add: devnet-4 plan#71

Open
anshalshukla wants to merge 8 commits intoleanEthereum:mainfrom
anshalshukla:anshalshukla/pq-devnet-4-plan
Open

add: devnet-4 plan#71
anshalshukla wants to merge 8 commits intoleanEthereum:mainfrom
anshalshukla:anshalshukla/pq-devnet-4-plan

Conversation

@anshalshukla
Copy link
Copy Markdown

No description provided.

- Valid values: `1` to `4`.
- This field is set only when `is_aggregator: true`.
- Semantics:
- `1`: least proof efficiency, fastest proof construction.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I would suggest renaming "least/highest proof efficiency" by "biggest/lowest proof size".

@unnawut
Copy link
Copy Markdown
Collaborator

unnawut commented Feb 27, 2026

lgtm!

Comment thread breakout-rooms/leanConsensus/pq-interop/pq-devnet-4.md Outdated
Comment thread breakout-rooms/leanConsensus/pq-interop/pq-devnet-4.md
Comment thread breakout-rooms/leanConsensus/pq-interop/pq-devnet-4.md
Comment thread breakout-rooms/leanConsensus/pq-interop/pq-devnet-4.md
@unnawut
Copy link
Copy Markdown
Collaborator

unnawut commented Mar 25, 2026

Can you also help link this doc to https://github.com/leanEthereum/pm/blob/main/breakout-rooms/leanConsensus/pq-interop/README.md in this PR? Thanks!

@anshalshukla anshalshukla force-pushed the anshalshukla/pq-devnet-4-plan branch from ae839c3 to 24f3baa Compare April 10, 2026 07:12
@anshalshukla anshalshukla force-pushed the anshalshukla/pq-devnet-4-plan branch from e43aec4 to d509cc9 Compare April 14, 2026 18:44
Copy link
Copy Markdown
Collaborator

@unnawut unnawut left a comment

Choose a reason for hiding this comment

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

Just one request to expand on log_inv_rate description, the rest are pretty minor. Thanks!

- **Signature aggregation base:** [leanMultisig](https://github.com/leanEthereum/leanMultisig)

- **Changes**
- **`log_inv_rate` (protocol-level config):**
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Can we add a description of what this config means? So far we only define its bounds but not its meaning

## Objectives

1. Introduce proposer keys for validators (attestation key + proposer key), enabling block signing
2. Enable recursive aggregation per message using `leanVm`
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Not sure if the term leanVM is still valid. I remember most if not all leanVM references were renamed to leanMultisig cc: @TomWambsgans.

But this is cosmetic change and non-blocking.


## Completion target

2026-03-25 (TBC)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
2026-03-25 (TBC)
2026-04-30 (TBC)

Comment on lines +107 to +111
- **Proposer keys:** Each validator now maintains two distinct keys (attestation key and proposer key), enabling block signing.
- **Recursive aggregation per message:** Proofs for a single `attestation_data` can be recursively aggregated, producing a single aggregated payload per `attestation_data`.
- **In-block aggregation by proposers:** During block construction, proposers aggregate all proof payloads for a given `attestation_data` and produce a single aggregated payload. A constant `MAX_ATTESTATION_DATA` limits the number of unique `attestation_data` included in a block to 8.
- **Reduced block size and bandwidth:** With one aggregated payload per `attestation_data` instead of multiple proofs, the number of payloads per block and overall block size are reduced, decreasing network bandwidth usage and improving block propagation efficiency.
- **Remaining limitation:** A block still contains multiple aggregated payloads (one per `attestation_data`), and proofs remain the largest component of the block. This motivates further compression via block-level proof aggregation (multi-message aggregation) in devnet-5.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
- **Proposer keys:** Each validator now maintains two distinct keys (attestation key and proposer key), enabling block signing.
- **Recursive aggregation per message:** Proofs for a single `attestation_data` can be recursively aggregated, producing a single aggregated payload per `attestation_data`.
- **In-block aggregation by proposers:** During block construction, proposers aggregate all proof payloads for a given `attestation_data` and produce a single aggregated payload. A constant `MAX_ATTESTATION_DATA` limits the number of unique `attestation_data` included in a block to 8.
- **Reduced block size and bandwidth:** With one aggregated payload per `attestation_data` instead of multiple proofs, the number of payloads per block and overall block size are reduced, decreasing network bandwidth usage and improving block propagation efficiency.
- **Remaining limitation:** A block still contains multiple aggregated payloads (one per `attestation_data`), and proofs remain the largest component of the block. This motivates further compression via block-level proof aggregation (multi-message aggregation) in devnet-5.

This should be updated after the devnet is complete

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

I've addressed everything except this point as I think we can continue to update this as and when the changes are made

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.

4 participants