BlockProof serialization is a silent no-op (TODO placeholder)
- 主要語言
- Rust
- 星號
- 132
- 分支
- 167
- 平均合併
- 1 天 23 小時
- 30 天內合併 PR
- 110
描述
`crates/miden-protocol/src/block/block_proof.rs:28-37`
`BlockProof::write_into` is a no-op:
```rust
impl Serializable for BlockProof {
fn write_into(&self, _target: &mut W) {
// TODO: Implement serialization
}
}
```
And `read_from` returns an empty struct:
```rust
impl Deserializable for BlockProof {
fn read_from(_source: &mut R) -> Result {
// TODO: Implement deserialization
Ok(Self {})
}
}
```
If a `BlockProof` is ever serialized or deserialized in production code, it will silently produce corrupt data — the bytes won't represent the actual proof, and deserialization will always return an empty `BlockProof` regardless of input.
The `BlockProof` struct has no fields currently (block_proof.rs:24-26), so serialization is technically lossless, but once fields are added (which the TODO implies is planned), the empty serialization becomes a data corruption bug. Adding a panic or compile-time assertion would prevent silent data loss when fields are added.
貢獻指南
評估
這個 Issue 還沒有評估資料。