Serialized execution witness proving service
- 主要语言
- Rust
- 星标
- 772
- 派生
- 352
- 平均合并
- 1 天 7 小时
- 30 天内合并 PR
- 84
描述
Add a long-running process that accepts a serialized [ExecutionWitness](https://github.com/0xMiden/miden-vm/blob/18d9f6361acbf2f8fb22e4780b312e4b4f96cbce/processor/src/trace/mod.rs#L61-L134) and returns an `ExecutionProof`. The first version needs one request transport and a single service process.
The issue is complete when:
- the service handles more than one request without restarting.
- it checks the request version and size before proving.
- untrusted requests use the safe reader tracked by [#3303](https://github.com/0xMiden/miden-vm/issues/3303).
- a bounded queue limits concurrent proof jobs.
- each job uses the VM and precompile prover limits.
- shutdown or client cancellation stops queued work.
- responses contain either an `ExecutionProof` or a stable error code.
Add an integration test for a valid request. Add rejection tests for malformed and oversized requests.
贡献指南
调研方向
Start by reading the ExecutionWitness struct in processor/src/trace/mod.rs and the safe reader from issue #3303. The service must be a long-running process that accepts serialized input, uses a bounded queue for concurrency, and integrates with the VM and precompile prover. Write integration tests for valid and malformed requests, ensuring error codes are stable. Check how the VM currently generates proofs to understand the prover limits.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- rust
- 领域
- api, backend, cryptography
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 活跃
- 描述清晰度
- 描述清楚
- 新手友好度
- 45/100