Skip to content

feat(test): add receipt parity + EIP-1559 checks#3433

Open
arajasek wants to merge 1 commit into
mainfrom
asr/test-improvements
Open

feat(test): add receipt parity + EIP-1559 checks#3433
arajasek wants to merge 1 commit into
mainfrom
asr/test-improvements

Conversation

@arajasek
Copy link
Copy Markdown
Contributor

@arajasek arajasek commented May 14, 2026

Describe your changes and provide context

Improves the giga test suite to check recepits, and adds a check for EIP-1559 txs.

Testing performed to validate your change

Adds test cases, all pass.


Note

Low Risk
Test-only changes that tighten parity assertions; risk is mainly increased flakiness if receipt fields legitimately diverge across executors.

Overview
Adds cross-mode receipt parity checks to giga_test.go by routing GetTransientReceipt through the correct keeper (V2 vs Giga) and asserting equality across consensus-relevant receipt fields (status, gas used, logs bloom/topics, contract address, and EffectiveGasPrice).

Updates existing Geth↔Giga and sequential↔OCC comparisons to call CompareReceipts, adjusts transfer fixtures so tipCap << feeCap to expose EIP-1559 effective price differences, and introduces TestGigaVsGeth_EffectiveGasPrice_DynamicFee as a regression test for min(feeCap, tip+baseFee) behavior. Also updates the balance-transfer test to compute gas cost from receipt.EffectiveGasPrice instead of a hard-coded gas price.

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

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 14, 2026

The latest Buf updates on your PR. Results from workflow Buf / buf (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedMay 14, 2026, 1:24 PM

Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 68b5f50. Configure here.

Comment thread giga/tests/giga_test.go
return tCtx.Mode == ModeGigaSequential ||
tCtx.Mode == ModeGigaOCC ||
tCtx.Mode == ModeGigaWithRegularStore
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

isGigaMode includes mode unsupported by constructor

Low Severity

isGigaMode() includes ModeGigaWithRegularStore, but NewGigaTestContext — the sole constructor for GigaTestContext — does not treat that mode as giga-enabled (line 77: gigaEnabled only checks ModeGigaSequential and ModeGigaOCC). A context created with ModeGigaWithRegularStore would get a non-giga app via NewTestWrapperWithSc, yet GetTransientReceipt would route to GigaEvmKeeper on that uninitialized app. The sibling constructor NewStateTestContext handles this mode correctly via NewGigaTestWrapperWithRegularStore.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 68b5f50. Configure here.

Copy link
Copy Markdown
Contributor

@wen-coding wen-coding left a comment

Choose a reason for hiding this comment

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

LGTM, thanks for adding this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants