-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Include sp1 groth16 circuits in Docker image #89
Comments
rootulp
added a commit
that referenced
this issue
Jan 28, 2025
Closes step two of #31. A few changes in this PR, can split them into separate PRs if reviewers request: 1. Checkout submodules in CI workflows lint and test. 2. Sort makefile commands alphabetically. Add a new `make relay` command that does step 2. 3. Update README with an important step to apply a diff in `solidity-ibc-eureka/justfile`. The diff is needed so that the Tendermint light client on the EVM roll-up supports Groth16 and has the correct verifier key (from the celestia-prover) 4. Enable debug mode on Reth node (can revert if requested) 5. Add `curl` to the Celestia-prover for debugging purposes (can revert if requested) 6. Update solidity-ibc-eureka version 7. Modify the prover proto to return hex-encoded verifier keys. This made it easier to plumb directly into the EVM contract and Tendermint light client set-up (can revert if requested) 8. Add a line to celestia-prover README to show example usage of `Info` endpoint 9. Add a debug-txhash script to help debug failed EVM transactions (can revert if requested) 10. Refactor the `extractDeployedContractAddresses` to utils package so that it can be used in multiple places 11. Refactor the `transfer` script ## Testing I can't run the celestia-prover in Docker because #89 but if I run it locally, it works: ``` $ make relay go run testing/demo/pkg/relay/main.go Extracted deployed contract addresses: utils.ContractAddresses{ERC20:"0xa05915fd6e32a1aa7e67d800164cacb12487142d", Escrow:"0xc4515dd838dd640d6839933b33ff8d19640c1231", IBCStore:"0xf73bd8a7184bec941b3f9ef5e6f6df981e105535", ICS07Tendermint:"0xe53275a1fca119e1c5eeb32e7a72e54835a63936", ICS20Transfer:"0xb1c938f5ba4b3593377f399e12175e8db0c787ff", ICS26Router:"0x48fd1226d797400779bbfaf1706f5fb8da04ae91", ICSCore:"0x7e7ad18adc99b94d4c728fdf13d4de97b926a0d8"} Getting celestia prover info... Got celestia prover info. StateTransitionVerifierKey: 0x0081282e1279b92586a3330c1cd83a3f0910299bdc7be90ac1a24b2a0826523bInvoking icsCore.UpdateClient... Transaction hash: 0x6370b144be660a5d8f798c45fe3f1942735e7a86063dc1834b61013f04de3b11 Block number: 170 Gas used: 289132 Logs: [] recvBlockNumber 170 ```
ninabarbakadze
pushed a commit
that referenced
this issue
Jan 29, 2025
Closes step two of #31. A few changes in this PR, can split them into separate PRs if reviewers request: 1. Checkout submodules in CI workflows lint and test. 2. Sort makefile commands alphabetically. Add a new `make relay` command that does step 2. 3. Update README with an important step to apply a diff in `solidity-ibc-eureka/justfile`. The diff is needed so that the Tendermint light client on the EVM roll-up supports Groth16 and has the correct verifier key (from the celestia-prover) 4. Enable debug mode on Reth node (can revert if requested) 5. Add `curl` to the Celestia-prover for debugging purposes (can revert if requested) 6. Update solidity-ibc-eureka version 7. Modify the prover proto to return hex-encoded verifier keys. This made it easier to plumb directly into the EVM contract and Tendermint light client set-up (can revert if requested) 8. Add a line to celestia-prover README to show example usage of `Info` endpoint 9. Add a debug-txhash script to help debug failed EVM transactions (can revert if requested) 10. Refactor the `extractDeployedContractAddresses` to utils package so that it can be used in multiple places 11. Refactor the `transfer` script I can't run the celestia-prover in Docker because #89 but if I run it locally, it works: ``` $ make relay go run testing/demo/pkg/relay/main.go Extracted deployed contract addresses: utils.ContractAddresses{ERC20:"0xa05915fd6e32a1aa7e67d800164cacb12487142d", Escrow:"0xc4515dd838dd640d6839933b33ff8d19640c1231", IBCStore:"0xf73bd8a7184bec941b3f9ef5e6f6df981e105535", ICS07Tendermint:"0xe53275a1fca119e1c5eeb32e7a72e54835a63936", ICS20Transfer:"0xb1c938f5ba4b3593377f399e12175e8db0c787ff", ICS26Router:"0x48fd1226d797400779bbfaf1706f5fb8da04ae91", ICSCore:"0x7e7ad18adc99b94d4c728fdf13d4de97b926a0d8"} Getting celestia prover info... Got celestia prover info. StateTransitionVerifierKey: 0x0081282e1279b92586a3330c1cd83a3f0910299bdc7be90ac1a24b2a0826523bInvoking icsCore.UpdateClient... Transaction hash: 0x6370b144be660a5d8f798c45fe3f1942735e7a86063dc1834b61013f04de3b11 Block number: 170 Gas used: 289132 Logs: [] recvBlockNumber 170 ```
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Context
I was working on #67
Problem
Note: I can't get the celestia-prover to generate a proof in Docker. I can only get it to generate a proof if I run it locally. In Docker it times out while downloading the groth16 circuit artifacts:
Proposal
Download those artifacts and include them in the Docker image
The text was updated successfully, but these errors were encountered: