0xMiden / 0xMiden/protocol

Let LocalTransactionProver accept ExecutionOptions

Đang mở
#3,653 0 bình luận 1 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Rust
Star
132
Fork
167
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
110

Mô tả

The upcoming Miden VM 0.30 candidate adds a combined advice size limit. [Miden VM issue 3691](https://github.com/0xMiden/miden-vm/issues/3691) tracks raising the default from 4 MiB to 16 MiB. The VM already lets callers change the limit through [`ExecutionOptions::with_max_advice_size_bytes`](https://github.com/0xMiden/miden-vm/blob/a2a14ad0b1e3fcccce6c01d3a4afa278024f91d4/processor/src/execution_options.rs#L218-L222).

`LocalTransactionProver` does not expose that control. The struct stores [only proof options](https://github.com/0xMiden/protocol/blob/13983ef40aebd6c39cfef0d64dd15f60ea53a1bb/crates/miden-tx/src/prover/mod.rs#L31-L53), and `prove` [always passes `ExecutionOptions::default()`](https://github.com/0xMiden/protocol/blob/13983ef40aebd6c39cfef0d64dd15f60ea53a1bb/crates/miden-tx/src/prover/mod.rs#L106-L153). A service cannot choose a lower limit, and a private prover cannot raise it for a larger workload. [`TransactionExecutor::with_options`](https://github.com/0xMiden/protocol/blob/13983ef40aebd6c39cfef0d64dd15f60ea53a1bb/crates/miden-tx/src/executor/mod.rs#L153-L168) already provides this control for execution.

Store `ExecutionOptions` in `LocalTransactionProver`. Add `with_execution_options` to replace them, with `ExecutionOptions::default()` as the default. Pass the stored options to `prove_sync`.

Add one test for the default and one for a custom advice limit. Node and the Rust SDK can then use the same options for local execution and proving.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.