RPC Standards #026
Transcript
Ask about this call
Answered from this call's summary and transcript only.
AI-generated — verify against the recording.
Call summary
Targets
- •End of week - documentation versioning PR to be opened by zcstarr — 01:07:21
- •Next call - discuss Hive eth_simulateV1 test failures and error code alignment in detail — 01:12:25
Decisions
- •Merge PR removing eth_getUncle* methods from spec; data unavailable on any current client — 00:12:20
- •Defer PR #797 (eth_subscribe) until OpenRPC spec version is upgraded to 1.4 — 00:21:38
- •eth_fillTransaction to be updated: remove unsigned encoded payload from response; retain default-filling behavior only — 00:42:09
- •Documentation versioning: retain 'Next' label for main branch in versioned docs site — 01:06:47
Highlights
- Hive Test Failures:
- ·Nethermind reported eth_simulateV1 Hive failures: multiple test cases failing on same generic error code; need distinct error codes per scenario or reduce test cases — 01:09:00
- ·Root cause: clients validate EVM operations in different orders, causing different error codes; proposal to allow multiple acceptable error codes per test fixture — 01:11:17
- Open Rpc Versioning:
- ·OpenRPC 1.4 resolves Go binding and versioning issues; upgrade unblocks PR #797 (eth_subscribe specification) — 00:16:38
- ·Documentation versioning demo shown: version dropdown, 'Next' for main branch, release notes workflow, and method tagging all functional; PR coming end of week — 01:01:21
- Specification Updates:
- ·Agreed to merge PR #791 (JSON-RPC invalid params error code clarification) and rename it appropriately — 00:06:43
- ·Agreed to merge PR removing uncle methods from spec; no clients store uncle data anymore, untestable — 00:11:00
- ·PR #762 (debug_traceTransaction standardization) ready to merge pending Felix review; implemented and approved across Geth, Besu, Erigon, Nethermind — 00:23:14
- ·PR #790 (eth_getConfig) agreed to merge; replacement for prior PR with corrected auto-generated files — 00:33:59
- Missing Methods Review:
- ·HackMD overview of methods missing from spec identified; focus should be methods implemented in 3–4 clients — 00:34:24
- ·eth_fillTransaction security concern raised by Nethermind: returning unsigned binary payload is risky; proposal to remove encoded output from method scope — 00:38:26
- ·debug_executionWitness not in spec despite all-client implementation; straightforward candidate for a new PR — 00:45:18
Action Items
- •Mercy Boma Naps-Nkari — Open PR to upgrade execution-apis OpenRPC spec version to 1.4; unblocks PR #797 — 00:21:57
- •Mercy Boma Naps-Nkari — Open PR to add debug_executionWitness to execution-apis spec — 00:45:37
- •Mercy Boma Naps-Nkari — Bring missing-methods HackMD list to ACDE for broader input on what to standardize or drop — 00:49:13
Meeting chat28
- Mercy Boma Naps-Nkari
- sina
https://json-rpc.dev/docs/reference/error-codes#standard-errors
- Mercy Boma Naps-Nkari
- sina
Wasn’t it necessary to store uncles for PoW period?
- zcstarr
It was needed for Pow
- zcstarr
At ETC Labs we used It to debug a 51% attack
- zcstarr
But I think the historical state was purged a lot so we had to kind of luck out to have the state
- Mercy Boma Naps-Nkari
- sina
- Mercy Boma Naps-Nkari
https://github.com/ethereum/execution-apis/pull/790#issuecomment-4416664909
- zcstarr
- zcstarr
https://github.com/open-rpc/spec-types/tree/main/generated/packages/go
- zcstarr
@sina when you get a chance mind linking me to the issue you filed on the open-rpc request?
- sina
Hey yes this is it! https://github.com/open-rpc/spec/issues/381
- zcstarr
Reacted to "Hey yes this is it! https://github.com/open-rpc/spec/issues/381" with 👍
- Mercy Boma Naps-Nkari
- zcstarr
Replying to "Hey yes this is it! ..." My guess is right now we might not have the bandwidth in near term to make changes to support constraints. The infrastructure changes we made a couple months ago would make it more likely though for us to do something. I’ll circle back with the crew to see if we have other ideas about. There are a few things that we’ve been thinking about that would maybe help with that but would probably be 1-2 months away
- Chase Wright
Methods missing from spec but implemented in 3–4 clients
- sina
- sina
For debug_executionWitness
- Mercy Boma Naps-Nkari
- Mercy Boma Naps-Nkari
- Stavros Vlachakis
- Simsonraj Easvarasakthi
I think these codes need to be standardized as well
- Chase Wright
That also goes back to the previous PR we just merged, we should allow any valid error code, be it in the spec or JSON-RPC standard
- Simsonraj Easvarasakthi
Currently I believe we don’t have testcases that validates error codes/messages no?
- Simsonraj Easvarasakthi
Reacted to "That also goes back to the previous PR we just merged, we should allow any valid error code, be it in the spec or JSON-RPC standard" with 👍
- sina
thanks!
Key decisions
Merge PR removing eth_getUncle* methods from spec; data unavailable on any current client
Defer PR #797 (eth_subscribe) until OpenRPC spec version is upgraded to 1.4
PR #797 is dependent on OpenRPC spec version upgradeeth_fillTransaction to be updated: remove unsigned encoded payload from response; retain default-filling behavior only
Documentation versioning: retain 'Next' label for main branch in versioned docs site

