starknet_transaction_prover: origin-level breadcrumbs for validation errors - #14172
starknet_transaction_prover: origin-level breadcrumbs for validation errors#14172avi-starkware wants to merge 1 commit into
Conversation
PR SummaryMedium Risk Overview Origin-level Background proving during the blocking-check path is ** Reviewed by Cursor Bugbot for commit f9f5e5d. Bugbot is set up for automated code reviews on this repo. Configure here. |
e57d84d to
eba2906
Compare
53381dd to
d477f5e
Compare
eba2906 to
22db0d1
Compare
d477f5e to
ef3cf0b
Compare
22db0d1 to
9773ef7
Compare
ef3cf0b to
eb8da8d
Compare
9773ef7 to
b7d03bd
Compare
eb8da8d to
e084131
Compare
b7d03bd to
2fc5950
Compare
dd5534f to
8798823
Compare
158a680 to
b385d86
Compare
84a465f to
e048443
Compare
b385d86 to
a462e96
Compare
e048443 to
fa2eff6
Compare
4af812f to
1138936
Compare
ff6783f to
a17d880
Compare
1138936 to
486c09b
Compare
a17d880 to
dc2c2fb
Compare
486c09b to
553e864
Compare
dc2c2fb to
b6442ff
Compare
553e864 to
3deb8f7
Compare
b6442ff to
e6a15fc
Compare
d817f3b to
575006a
Compare
e6a15fc to
691e967
Compare
691e967 to
42e93f7
Compare
575006a to
32a07a2
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 32a07a2. Configure here.
| // No `error`: a runner failure can quote the transaction hash and its revert | ||
| // reason — see `VirtualSnosProverError::may_embed_transaction_data`. | ||
| warn!(event = "os_run_error"); | ||
| })?; |
There was a problem hiding this comment.
Orphan breadcrumbs on blocked path
Medium Severity
Origin breadcrumbs in run_and_prove emit as soon as the parallel prove task fails, but prove_with_blocking_check can still discard that result and return TransactionBlocked. With the default multi-second check timeout, a fast OS or proving failure often finishes first, so the same request span can show os_run_error or proving_error alongside a final failure_blocked outcome and mislead root-cause analysis.
Additional Locations (2)
Reviewed by Cursor Bugbot for commit 32a07a2. Configure here.
| // No `error`: proving errors can quote transaction-derived program output — see | ||
| // `VirtualSnosProverError::may_embed_transaction_data`. | ||
| warn!(event = "proving_error"); | ||
| })?; |
There was a problem hiding this comment.
Output parse mislabeled as proving
Low Severity
The proving_error breadcrumb wraps all of prove_virtual_snos_run, including try_into_proof_facts failures that become ProgramOutputError. Those map to failure_output_parse in metric_outcome, so the origin event and the final outcome disagree and point operators at the wrong stage.
Reviewed by Cursor Bugbot for commit 32a07a2. Configure here.
32a07a2 to
be0a076
Compare
42e93f7 to
c1af3de
Compare
be0a076 to
b3b4624
Compare
8486da2 to
cd1ec66
Compare
b3b4624 to
b5817a7
Compare
cd1ec66 to
76ffff6
Compare
4dcf6e3 to
c33d7b5
Compare
445a598 to
bd56632
Compare
…n data out of failure logs



Splits validation-error logging so each origin (request body, RPC,
proving) carries an
eventtag and trimmed payload context, making itstraightforward to root-cause production failures from the structured
log stream. Also adds an in-test microbenchmark for HttpMetricsLayer
overhead so any regression in the hot path is visible.
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com