Skip to content

starknet_committer: define fetch_contract_storage_paths_concurrently#14282

Open
ArielElp wants to merge 1 commit into
ariel/define_new_storage_taskfrom
ariel/split_read_paths_to_sequential_and_concurrent
Open

starknet_committer: define fetch_contract_storage_paths_concurrently#14282
ArielElp wants to merge 1 commit into
ariel/define_new_storage_taskfrom
ariel/split_read_paths_to_sequential_and_concurrent

Conversation

@ArielElp
Copy link
Copy Markdown
Contributor

@ArielElp ArielElp commented Jun 1, 2026

No description provided.

@reviewable-StarkWare
Copy link
Copy Markdown

This change is Reviewable

Copy link
Copy Markdown
Contributor Author

ArielElp commented Jun 1, 2026

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@ArielElp ArielElp force-pushed the ariel/split_read_paths_to_sequential_and_concurrent branch from 9c26b8a to a4fcb4e Compare June 1, 2026 08:41
@ArielElp ArielElp force-pushed the ariel/define_new_storage_task branch from 5d66469 to 3dd02d1 Compare June 1, 2026 08:41
@ArielElp ArielElp marked this pull request as ready for review June 1, 2026 11:34
@cursor
Copy link
Copy Markdown

cursor Bot commented Jun 1, 2026

PR Summary

Medium Risk
Adds merkle proof collection on the block commit path with skip logic for missing contract leaves; behavior must match existing proof expectations when wired in.

Overview
Adds fetch_contract_storage_paths in trie_traversal.rs to load Patricia preimage maps (PreimageMap) for per-contract storage tries, keyed by ContractAddress. The API mirrors create_storage_tries: when storage implements GatherableStorage, work runs via storage.gather and existing StoragePathsReadTask; otherwise it loops and calls fetch_patricia_paths sequentially.

Inputs are contract_storage_sorted_leaf_indices (NodeIndex → sorted leaf indices) and contract_leaves (contracts trie leaves for storage roots). Each index is mapped with try_node_index_into_contract_address; contracts missing from contract_leaves are skipped (documented for new contracts on the previous tree or deleted contracts on the new tree). The change is new plumbing only—no call sites appear in this diff.

Reviewed by Cursor Bugbot for commit a4fcb4e. Bugbot is set up for automated code reviews on this repo. Configure here.

@ArielElp ArielElp requested a review from yoavGrs June 1, 2026 12:39
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