BatchBuilder followups
- Dominant language
- Rust
- Stars
- 78
- Forks
- 129
- Avg merge
- 4d 14h
- Merged PRs (30d)
- 52
Description
After https://github.com/0xMiden/miden-client/pull/2177, there are some things still worth looking into:
- Recover from failed tx without discarting whole batch. https://github.com/0xMiden/miden-client/pull/2177#discussion_r3275244155
- For this we need to analize wheter or not we can defer updating the in memory data store until we fully know that a transaction is succesfull.
- Remove `get_account_interface`. It currently fetches the full account to get its interface, which is sub-optimal https://github.com/0xMiden/miden-client/pull/2177#discussion_r3285317043
- Decouple `Client` from `BatchBuilder`. https://github.com/0xMiden/miden-client/pull/2177#discussion_r3285329829
- Make BatchBuilder generate a single store transaction update. https://github.com/0xMiden/miden-client/pull/2177#discussion_r3285337241
- Remove producer before consumer restriction for transaction order. https://github.com/0xMiden/miden-client/pull/2177#discussion_r3285352242
- Reduce in memory batch data store size by only keeping `PartialAccount`s. https://github.com/0xMiden/miden-client/pull/2177#discussion_r3285359506
Contributor guide
Research direction
Review PR #2177 and its linked discussions to understand the BatchBuilder changes. Examine the client and batch builder coupling in the codebase, likely in src/client.rs and src/batch_builder.rs. The goal is to implement the listed follow-ups, such as decoupling components and optimizing data storage. Success means each item is addressed without breaking existing batch functionality.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend-api-design
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100