-
Notifications
You must be signed in to change notification settings - Fork 91
Description
Description
State override parameters in eth_call that previously worked are now returning "Invalid params" errors. This is a regression that occurred within the last 2 months and is blocking production Account Abstraction (AA) functionality.
Impact
- Severity: Production blocking Thirdweb on mainnet and testnet
- Affected: Account Abstraction wallets on Hedera
- Users impacted: All developers using AA with Hedera through ThirdWeb and potentially other providers
Steps to Reproduce
1. Execute eth_call WITH state override (currently fails):
curl https://296.rpc.thirdweb.com/ \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_call",
"params": [
{
"from": "0x27a979fFaF23cA83c0789E3d475f14A0B7D45e6b",
"to": "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
"data": "0xd6383f940000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006800000000000000000000000001de7c049399a48dd2eb1c29ad8349b7e1adcaa6017fb1af8c06a0b8677b595891a399b9bbbab931db2d8416700000000000000000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000003d090000000000000000000000000000000000000000000000000000000000003d0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000244b61d27f6000000000000000000000000bf6a62bc394d5abe717ff432f0e9f43d15528acf0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001a457bc3d780000000000000000000000001de7c049399a48dd2eb1c29ad8349b7e1adcaa6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000174b2aA3511A31327d47D562c292D8B445A900B2ABf0000000000000000000000000000000000000000000000000000000068d6662f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000003c7465616d5f636c726b67646264323038646b396430756a696f6a756965642d70726a5f636c76326d34686e6a30306777747776773932346b646c3572000000000000000000000000000000000000000000000000000000000000000000000041fffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041fffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
},
"latest",
{
"0x1de7C049399a48Dd2eB1c29aD8349B7E1AdCaA60": {
"balance": "0x56bc75e2d63100000"
}
}
]
}'Current Result:
{
"error": {
"code": -32602,
"message": "[Request ID: ...] Invalid params"
}
}Expected Result: Successful execution with overridden balance
2. Even simple state overrides fail:
{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_call",
"params": [
{
"to": "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
"data": "0x"
},
"latest",
{
"0x1de7C049399a48Dd2eB1c29aD8349B7E1AdCaA60": {
"balance": "0x56bc75e2d63100000"
}
}
]
}Previous Behavior
- Timeline: Thirdweb - "State overrides were working as recently as July 2025"
- What changed: This functionality stopped working without any changes on Thirdwebs end (they upgraded their relay to 0.71 recently and this is when they noticed the change
- Last known working: Approximately 2 months ago
Why This Is Critical
1. Account Abstraction Requirement
Balance overrides are required for AA to function properly on Hedera due to decimal differences:
- HBAR: 8 decimal places (1 HBAR = 100,000,000 tinybar)
- ETH: 18 decimal places (1 ETH = 1,000,000,000,000,000,000 wei)
Without balance overrides, AA wallets encounter validation errors due to this decimal mismatch.
2. Standard JSON-RPC Feature
State overrides are part of the standard Ethereum JSON-RPC specification for eth_call and eth_estimateGas. They're essential for:
- Testing contract interactions without spending gas
- Simulating transactions with modified balances
- Account Abstraction implementations
3. Multi-chain Compatibility
This regression breaks Hedera's compatibility with standard Ethereum tooling and makes it inconsistent with other EVM-compatible chains.
Environment
- JSON-RPC Relay Version: Latest (issue persists across versions)
- Network: mainnet and testnet
- RPC Endpoint: https://296.rpc.thirdweb.com
- First noticed: Within the last 2 months
- Last confirmed working: July 2025
Additional Context
- Thirdweb hasn't updated our node in 2 months (previous verion 0.70) and it is not qorking in 0.71
- The v0.71.0 release notes mention "stricter balance validation" which may be related
- This is affecting production AA wallets and blocking deployments
Requested Resolution
- Restore state override functionality for
eth_callandeth_estimateGas - If intentionally removed: Please provide migration path and reasoning
- Urgent timeline needed as this is blocking production functionality
References
- Ethereum JSON-RPC Specification for eth_call
- State override is documented as the 3rd parameter in eth_call
Thank you for your attention to this critical issue.