Skip to content

alpenglow: improve certificate processing, delivery and signing persistence - #288

Merged
14 commits merged into
alpenglow-devfrom
7layer/pr-certificate-delivery
Sep 25, 2026
Merged

14 commits merged into
alpenglow-devfrom
7layer/pr-certificate-delivery

Conversation

@7layermagik

@7layermagik 7layermagik commented Sep 24, 2026 •

Copy link
Copy Markdown

Reduce certificate verification contention and isolate peer delivery, with signing persistence reviewed as a distinct set of commits in this PR.

  • Off-lock verification retains per-slot ownership, binding rechecks, admission budgets and dedupe.
  • Bounded MultiExp keeps full-field random coefficients and a scalar fallback. Observer indexing avoids repeated completed checks.
  • Bounded per-peer queues and deadlines isolate stalled peers; include Votor compatibility and delivery diagnostics.
  • Opt-in durable signing reservations and ordered detailed-history persistence cover vote and leader signing.

Recovery contract

The durable reservation must cover a signature before signing is allowed. After an unclean restart, a valid-looking history file does not establish that every prior signing decision survived. Recovery must respect the durable upper bound and verified-finality gate. Persistence failure must not authorize further signatures. See docs/reserved-vote-history.md for the protocol and failure cases.

Combines #288 and #291 against alpenglow-dev; replaces the voting portion of #279. Kept draft for explicit crash-recovery review. No signing assumptions were weakened to combine the reviews.

Validation: full race suites passed on this exact source tree for alpenglow, consensus, node/config commands and blockprod. Historical Zen 5 64-vote fold: 14.2 → 6.8–7.1 ms. This is a component measurement, not proof of live FAST improvement; tests are not exhaustive power-loss conformance.

Keep full-field independent coefficients and existing verification admission. Use sequential G1/G2 MultiExp with one arithmetic task for at least 16 members, retaining the scalar path where setup costs dominate. Preserve individual fallback and failed-batch subdivision.

Validate invalid members, wrong payloads and cancelling shares across both paths. Document local component and execution-contention measurements; native and live validation remain pending.
Native contention tests showed that MultiExp task handoffs can increase certificate wall time with GOMAXPROCS=1. Preserve the original scalar path there while retaining bounded MultiExp for larger batches on multi-thread runtimes.

Repeat combined native race tests, adversarial tests at one and two threads, vet and build. Record both fold gains and noisy execution samples; no live voting improvement is inferred.
Extract transport and diagnostics from b44bf9d and 2202851; retain final reviewed peer-sender implementation without signing reservations or history changes.
…ersistence

Preserve reviewed persistence changes from fde3751, 75f4b7e, c2cbc4a and e10b953; transport lives in the certificate/delivery prerequisite.
@7layermagik 7layermagik changed the title alpenglow: reduce certificate contention and isolate peer delivery alpenglow: improve certificate processing, delivery and signing persistence Sep 24, 2026
@7layermagik
7layermagik marked this pull request as draft September 24, 2026 05:37
@NeerajGodiyal NeerajGodiyal closed this pull request by merging all changes into alpenglow-dev in edd8851 Sep 25, 2026
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