Skip to content

Add rooted block history RPC methods - #284

Open
NeerajGodiyal wants to merge 9 commits into
alpenglow-devfrom
koro/rpc-block-history
Open

NeerajGodiyal wants to merge 9 commits into
alpenglow-devfrom
koro/rpc-block-history

Conversation

@NeerajGodiyal

@NeerajGodiyal NeerajGodiyal commented Sep 23, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Add getBlock, minimumLedgerSlot and getFirstAvailableBlock for retained
recent blocks. Record block metadata and fee rewards during Alpenglow replay.

getBlock requires transactionDetails: "none" for summary requests. Rewards
are included by default; rewards: false omits them. Slots and options are
validated without floating-point rounding.

The methods read retained rooted history. confirmed and finalized are
accepted. This PR does not retain transaction payloads, so full, signatures and
accounts detail modes return an error. The default detail mode is full.

Related work

Full transaction responses and getTransaction belong to the separate
transaction-history work. These summary methods do not depend on it.

Complete exporter integration also needs #280 for epoch length, #282 for node
information and #283 for validator metrics. Inflation rewards from #285 are
already merged.

Testing

The candidate on 348704c4 passed native race tests for replay, execution,
RPC/account/reward behavior and block history, followed by repository-wide vet,
build and CLI compilation. All 1,122 parent test executions passed without Go
skip events. The optional external program workloads were not enabled because
their pinned arithmetic fixture was unavailable.

HTTP tests cover exact slot values, null options, invalid types, reward
inclusion/omission, empty rewards, nullable commission and unsupported detail
modes. Recovery tests cover fork changes and restart.

The upstream integration adjusts one test to check the snapshot-initialized
parent hash. It does not change that hash or undo upstream nonce handling.
Earlier exporter checks used a combined Mithril build; they do not establish
public-cluster results for this follow-up.

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.

1 participant