Skip to content

PQ Interop #22 | Jan 14, 2026 #1866

@will-corcoran

Description

@will-corcoran

Resources

High-Level Documents

  • Devnet-0 : lean consensus client interop
  • Devnet-1 : PQ signature signing & verification
  • Devnet-2 : single-layer PQ signature aggregation
  • Devnet-3 : recursive PQ signature aggregation + aggregator role separation

Overview

A. Client Updates
B. Spec & Research Updates
C. Devnet-1 Retrospective & Long-Running Devnet
D. Metrics & Observability
E. Devnet-3 Planning
F. Benchmarks & Networking Analysis
G. Schedule / Next Steps


Previous Call Meeting Minutes (Call 21 — Jan 7, 2026)

A. Client Updates

Team Update (Jan 7, 2026)
Zeam Stabilized client: fixed memory issues via state caching and fork choice pruning. Merged attestation aggregation PR using Lean VM. Planning spec PR for state pruning (consensus change requiring all clients to implement). Preparing separate aggregator role for Devnet-3.
Ream Integrated signature aggregation precursor PR. Working on sync features for node catch-up. Regenerated test vectors after spec changes by Thomas—signatures now verifiable from leanSpec main branch. Updated leanroadmap.org with benchmarks and devnet history.
Qlean Devnet-2 aggregation working with other lean clients. Building networking analysis version with configurable fake cryptography (to test propagation at scale without crypto overhead). Addressing memory issues via persistent storage with pruning. Improving log readability.
Lantern Creating C bindings for Lean VM XMSS multisig (devnet-2 branch). Implementing leanSpec PRs for Devnet-2; signature tests now passing after Ream's test vector fix. Experimenting with request/response routes; updated protocol IDs (removed lean_ prefix).
Lighthouse Fixed consensus bug and syncing issues from Devnet-1. Improved logging and telemetry. Started signature aggregation work—on track for Devnet-2. Posted PR for dynamic validator list (nice-to-have).
Grandine Planning open-source release next week. Working on full Devnet-2 compatibility. Post-release: cleanup and integration work expected.
Ethlambda New team introduction. Working integration with leanQuickStart. Parsing validator config files, dialing validators at startup. Receiving status requests from other clients. Current milestone: connecting to GossipSub and listening for new blocks.

B. Spec & Research Updates

  • Python spec as minimal client: Thomas working on adding P2P components to leanSpec so the Python spec can run as a minimal client (no external dependencies). Goal: easily test/tweak PQ signature algorithms without library constraints.
  • Lean VM recursion: Emile close to completing recursion work. Justin proposed making the high-level ZK DSL a Python subset so the same source code compiles to both leanSpec and low-level Lean ISA—would elegantly unify spec and VM implementation.
  • Recent spec PRs: Merged signature aggregation cleanup; removed unused components from repo.

C. Devnet-1 Retrospective & Long-Running Devnet

  • Issues identified (Katya):
    • Memory and storage issues across clients
    • Request/response failures
    • Finalization failures
    • Genesis anchor block inconsistencies (some clients report zero target/source, others report genesis block)
    • Lack of syncing capability—when clients drop, devnet loses finalization
    • Need for dynamic validator count
  • Path forward (Gajinder):
    • Will not block on Devnet-1 stability before moving to Devnet-2
    • Long-running devnet transitions to Devnet-2 next week; debugging continues in parallel
    • Adding checkpoint sync to Zeam; will raise spec PR for checkpoint state API (finalized state only)
    • Goal: finalization progresses even with intermittent client crashes
    • Previous run durations: ~1 day before issues; aiming to extend as fixes land
  • Infrastructure: Partha coordinating with EF Panda Ops for additional machines (not blocked).

D. Metrics & Observability

  • PRs requiring review:
  • New metrics planned: aggregated signatures, peer connections, reorgs, sync status, current slot, safe target
  • Dashboards: Katya building shared Grafana dashboards so teams can monitor their nodes vs. others. Grafana Loki (log aggregation) may be added.
  • Coordination: Using existing Devnet Telegram channel for metrics discussion (consensus to avoid chat fragmentation). Discord preference noted by some teams.

E. Devnet-3 Planning

  • Aggregator role separation: Decouple aggregator from proposer. Aggregators aggregate within subnets; proposer handles global aggregation across subnets.
  • Committee size: 128 validators baseline (configurable if total validator count is lower).
  • Aggregator selection: ~10% of subnet nodes (per Justin's earlier guidance). Can start smaller (single aggregator) for initial testing.
  • Recursive aggregation: Include in Devnet-3 if Lean VM is ready; otherwise push to Devnet-4.
  • Block size concerns: Aggregations currently ~400KB; potential 800KB blocks with multiple attestations + proposer signature. May require P2P optimizations (e.g., erasure-coded broadcast—Raul's team testing on 2MB blocks).
  • Validator count target: ~100 validators for Devnet-3.
  • Action item: Kamil (Qlean) to propose spec for subnet creation, subnet aggregation, and global aggregation by proposer.
  • Two parallel tracks: (1) Post-quantum features (priority), (2) P2P layer improvements (can proceed async).

F. Benchmarks & Networking Analysis

  • leanroadmap.org: Ream updated site with benchmarks from leanSig repo and devnet history.
  • Shadow simulations (Qlean): Building Devnet-2 networking analysis version with fake cryptography to test propagation at scale. Previous Devnet-1 analysis showed ~128 nodes viable; 256 nodes stalled finality.
  • leanSim: Thomas noted the simulator could be useful for experimenting with different validator counts, aggregator counts, and topologies outside of devnets. Manas interested in contributing to networking research; discussing with Qlean about potentially separating LeanSim into its own repo.

G. Schedule / Next Steps

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions