Repository navigation
refactor(zk): own protocol proof request execution - #2329
neogiacomo wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 59 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Architecture changeFrom
Every change (14)
Experimental. The page goes away when the pull request closes. |
c2c1b37 to
6f88efa
Compare
Refs #2321. Move protocol ZK adapters and their tests into the prover owner, leaving resource admission, replay/retry policy and result publication in the dispatcher.
6f88efa to
96f2331
Compare
What and why
Stack: #2327 -> this PR -> native TrBFV execution follow-up. Base:
refactor/compute-ownership; merge/review in that order. Refs #2321 and #2221; this is the protocol-request adapter boundary, not a redesign of the reusable backend/process runner.multithreadtozk/prover/src/request_execution.rs.execute_zk_requestand stablezk_operation_nameAPIs. Admission, replay/retry policy, cancellation, correlation publication and reporting actors stay in the dispatcher. Node-fold timings cross the boundary as data through a callback, not an Actix dependency.Verification
Commands used the shared build cache,
E3_ZK_PROVER_SKIP_FIXTURE_BUILD=1, debug information disabled and four Cargo build jobs. The fixture flag prevents incidental circuit generation; it is not proof acceptance.cargo check --offline -p e3-multithread --lib: passed with the production dependency graph.cargo test --locked --offline -p e3-zk-prover --lib request_execution::: 4 passed, 1 prepared C7 test ignored.cargo test --locked --offline -p e3-multithread -p e3-zk-prover -p e3-ciphernode-builder --lib: reported 240 passed, 2 ignored. The artifact-dependent C0 recovery test returns early without matching compiled C0 artifacts; do not count that as crypto evidence.cargo clippy --locked --offline --no-deps -p e3-multithread -p e3-zk-prover --lib -- -D warnings: passed.New public-boundary coverage checks C6 validation, correlation identity, rejected request kinds, and retryable verifier-process errors versus completed statement rejection. Prepared real-proof tests are still required for acceptance; no local full proof campaign or new artifact qualification is claimed. The existing broad strict-Clippy findings in untouched
zk/configare not changed or suppressed.Compatibility
Review references: proof statements, DKG, threshold decryption, persistence/replay.
Read-only self-review found no intended change to cryptographic statements, parameters, witness/JSON/public-input shape, committee ordering, signatures, durable/wire encodings or deployed verifier compatibility. No artifact restamping/regeneration or release-counter change is proposed. The proposed rollout is a normal rolling binary upgrade without data migration; rollback retains the previous binary and unchanged formats/artifacts, subject to human review and CI qualification.
The executor API is additive and protocol-specific. It creates no pool, retry loop, signing operation or bus publication; callers must use the existing bounded execution boundary. The parent's explicit Rust constructor changes remain documented in #2327. This does not close the durability/outbox design in #2265 or authorize package publication/deployment.