Skip to content
This repository was archived by the owner on Mar 13, 2026. It is now read-only.

Send transaction to prover#14

Draft
AminArria wants to merge 3 commits intomainfrom
prover-client
Draft

Send transaction to prover#14
AminArria wants to merge 3 commits intomainfrom
prover-client

Conversation

@AminArria
Copy link
Copy Markdown
Contributor

@AminArria AminArria commented Mar 10, 2023

This PR adds a cli option --send-to-prover to enable sending proofs to SHARP through the cairo-sharp cli (you will need this installed)

One caveat of using cairo-sharp to send to SHARP is that it can only work with cairo programs, not contracts, so we need to give it a cairo program and it will compile, run, and send to the prover. All this is painfully slow, on my regular laptop takes at least 10 seconds for our simple fibonacci example.

Additionally we have 2 problems

  1. The ABCI does not provide all transactions during end_block or commit so no way to pool them for sending
  2. Invoking cairo-sharp will block the ABCI thread for it and thus block consensus work

To address this problems the ABCI thread on initialization spawns another thread that will do the following

  1. Receive transactions from deliver_tx
  2. Receive signal from commit to process transactions (send to prover)

@unbalancedparentheses
Copy link
Copy Markdown

@igamigo what is missing to merge this?>

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants