Skip to content

starknet_transaction_prover: origin-level breadcrumbs for validation errors#14172

Open
avi-starkware wants to merge 1 commit into
avi/prover-v3/saturation-healthfrom
avi/prover-v3/error-origin-logs
Open

starknet_transaction_prover: origin-level breadcrumbs for validation errors#14172
avi-starkware wants to merge 1 commit into
avi/prover-v3/saturation-healthfrom
avi/prover-v3/error-origin-logs

Conversation

@avi-starkware
Copy link
Copy Markdown
Collaborator

Splits validation-error logging so each origin (request body, RPC,
proving) carries an event tag and trimmed payload context, making it
straightforward 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

@cursor
Copy link
Copy Markdown

cursor Bot commented May 24, 2026

PR Summary

Low Risk
Observability-only logging and test-gated benchmarks; no change to proving logic, auth, or transaction handling beyond log fields.

Overview
Proving validation now emits structured warn logs at each early-return path (event = "validation_error" with distinct reason values for pending blocks, non-invoke txs, and invalid input), without logging transaction calldata.

The RPC layer replaces a debug-style failure log with structured fields (event = "prove_transaction_failed", outcome aligned with prover_prove_transaction_outcome_total) as a catch-all when proving fails.

Adds ignored in-test microbenchmarks (server::overhead_bench) to compare baseline Tower throughput vs HttpMetricsLayer steady-state overhead for operators reproducing observability rollout numbers.

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

@reviewable-StarkWare
Copy link
Copy Markdown

This change is Reviewable

@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from e57d84d to eba2906 Compare May 24, 2026 16:48
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from 53381dd to d477f5e Compare May 26, 2026 08:43
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from eba2906 to 22db0d1 Compare May 26, 2026 08:43
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from d477f5e to ef3cf0b Compare May 26, 2026 12:16
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from 22db0d1 to 9773ef7 Compare May 26, 2026 12:16
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from ef3cf0b to eb8da8d Compare May 26, 2026 12:17
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from 9773ef7 to b7d03bd Compare May 26, 2026 12:17
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from eb8da8d to e084131 Compare May 26, 2026 12:58
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from b7d03bd to 2fc5950 Compare May 26, 2026 12:58
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch 2 times, most recently from dd5534f to 8798823 Compare May 26, 2026 16:47
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from 158a680 to b385d86 Compare May 26, 2026 16:59
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch 2 times, most recently from 84a465f to e048443 Compare May 27, 2026 10:01
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from b385d86 to a462e96 Compare May 27, 2026 10:01
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from e048443 to fa2eff6 Compare May 27, 2026 10:35
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from a462e96 to a83176f Compare May 27, 2026 10:35
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from fa2eff6 to bc03f1e Compare May 27, 2026 12:55
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from a83176f to b4c05a6 Compare May 27, 2026 12:55
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from bc03f1e to f47a44b Compare May 27, 2026 13:11
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from 2739271 to 89534f1 Compare May 27, 2026 14:04
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from f47a44b to 353e9ed Compare May 27, 2026 14:04
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from 89534f1 to d3f1139 Compare May 27, 2026 14:20
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from 353e9ed to 894c08e Compare May 27, 2026 14:20
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from d3f1139 to d15dc19 Compare May 31, 2026 10:23
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from 894c08e to 086a69c Compare May 31, 2026 10:23
@avi-starkware avi-starkware force-pushed the avi/prover-v3/saturation-health branch from d15dc19 to def7ea4 Compare June 1, 2026 08:17
@avi-starkware avi-starkware force-pushed the avi/prover-v3/error-origin-logs branch from 086a69c to 1745223 Compare June 1, 2026 08:17
…errors

Splits validation-error logging so each origin (request body, RPC,
proving) carries an `event` tag and trimmed payload context, making it
straightforward 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>
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