Report progress events from STM during long proving sequences

Aperta
#3,426 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
rust

Direzione di ricerca

Inizia leggendo aggregate_signatures_with_type in protocol/aggregate_signature/clerk.rs e il prover IVC in proof_system/ivc_halo2_snark/proof.rs. Traccia il caricamento dell’SRS, il caricamento o il calcolo della chiave del circuito, la prova del certificato e i passaggi della prova ricorsiva per definire gli eventi di avanzamento e il relativo percorso di consegna. Il lavoro è completato quando i caller possono ricevere o ignorare gli eventi e i log dell’aggregatore li consumano.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

cryptography :closed_lock_with_key: to-groom :thinking:

Why

mithril-stm is silent. An aggregation that loads the SRS, loads or computes two sets of circuit keys and produces a certificate proof followed by a recursive proof can run for a long time with no visible progress, which makes an operator unable to tell a slow run from a stuck one.

What

Expose progress events from the long running operations, so a caller can log them or surface them as metrics.

How

  • Define the event set covering the SRS load, the key load or computation, and the proving steps
  • Expose the events through a channel or a callback, with a no-op default
  • Emit them from aggregate_signatures_with_type (protocol/aggregate_signature/clerk.rs) and from the IVC prover (proof_system/ivc_halo2_snark/proof.rs)
  • Consume them in the aggregator logs
Lingua principale
Rust
Stelle
155
Fork
52
Merge medio
2g 17h
PR unite (30g)
37

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di IntersectMBO/mithril

Tutte le issue di IntersectMBO/mithril

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.