Skip to content

fix(verify): report null-contract errors - #16083

Merged
figtracer merged 2 commits into
masterfrom
fix/sourcify-null-contract
Aug 8, 2026
Merged

fix(verify): report null-contract errors#16083
figtracer merged 2 commits into
masterfrom
fix/sourcify-null-contract

Conversation

@figtracer

Copy link
Copy Markdown
Member

The Tempo nightly failure in #16075 exposed a valid Sourcify-compatible error response where a completed job carries contract: null alongside an error object. Foundry required contract to be an object, so it retried a permanent deserialization failure and hid the verifier's actual RPC rate-limit error.

This models the contract result as optional, allowing the existing terminal-error path to report the verifier code and message immediately. Regression coverage exercises the full status-polling path with a null-contract error response.

This PR was prepared with AI assistance.

Sourcify-compatible verifiers can return a null contract alongside a terminal error. Deserialize that response and surface the verifier's error instead of retrying a permanent parse failure.

Amp-Thread-ID: https://ampcode.com/threads/T-019fe08c-17fb-7354-9345-1d893b758901
Co-authored-by: Amp <amp@ampcode.com>
@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

✅ Changelog found

The deterministic check will validate the changed entry.

@mattsse mattsse left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@figtracer
figtracer merged commit 4801dc7 into master Aug 8, 2026
25 of 26 checks passed
@figtracer
figtracer deleted the fix/sourcify-null-contract branch August 8, 2026 21:00
@github-project-automation github-project-automation Bot moved this to Done in Foundry Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants