Skip to content

reject proof requests early for verifier-only instances#64

Merged
han0110 merged 3 commits into
eth-act:masterfrom
chetanyb:verifier-info
May 15, 2026
Merged

reject proof requests early for verifier-only instances#64
han0110 merged 3 commits into
eth-act:masterfrom
chetanyb:verifier-info

Conversation

@chetanyb
Copy link
Copy Markdown
Contributor

@chetanyb chetanyb commented May 13, 2026

Summary

Verifier-only zkVM instances (kind: verifier) can only verify proofs received via gossip - they cannot generate proofs. Previously, proof generation requests to verifier-only instances were:

  1. Accepted by the HTTP handler
  2. Witness fetched from EL (expensive and wasteful)
  3. Failed silently at the worker dispatch layer (no worker exists)

This PR rejects proof requests early at the HTTP layer with a 400 Bad Request, before any witness fetching occurs.

Changes

  • Early rejection: Return HTTP 400 for proof generation requests targeting verifier-only zkvms
  • Startup logging: Add mode field (prover/mock/verifier-only) to zkvm instance creation log
  • Verifier-only info: Log at startup that proof generation requests will be rejected
  • Debug logging: Log each rejected request at debug level

Behavior

Startup log

INFO zkboost_server::server: zkvm instance created proof_type=ethrex-zisk mode="verifier-only"
INFO zkboost_server::server: verifier-only mode: proof generation requests will be rejected proof_type=ethrex-zisk

Per-request (debug level)

DEBUG post_execution_proof_requests: zkboost_server::http::v1::post_execution_proof_requests: rejecting proof request: verifier-only instance proof_type=ethrex-zisk

@chetanyb chetanyb marked this pull request as ready for review May 14, 2026 17:54
Copy link
Copy Markdown
Collaborator

@han0110 han0110 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@han0110 han0110 merged commit 5e4d30b into eth-act:master May 15, 2026
6 checks passed
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