Skip to content

feat(evmonly): persist executor receipts - #4088

Draft
codchen wants to merge 3 commits into
mainfrom
codex/evmonly-receipt-store
Draft

feat(evmonly): persist executor receipts#4088
codchen wants to merge 3 commits into
mainfrom
codex/evmonly-receipt-store

Conversation

@codchen

@codchen codchen commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • convert EVM-only geth receipts into the shared receipt.ReceiptRecord format and persist them through the existing receipt.ReceiptStore interface
  • configure the executor with the concrete bootstrap.GigaStorageManager and remove the EVM-only in-memory manager implementation
  • keep the EVM-only state and receipt backends in memory while installing them into the shared manager
  • open Autobahn’s configured memory or LittDB block store under the same manager and build Autobahn data state from manager.BlockStore()
  • make the node own and close the manager only after giga.Run exits, including construction and startup failure cleanup
  • keep result sinks behind successful state and receipt persistence, including empty-block receipt versions

Testing

  • go test ./giga/evmonly/...
  • go test ./sei-db/bootstrap
  • go test ./sei-db/ledger_db/receipt
  • go test ./sei-tendermint/internal/evmonlyapp
  • go test ./sei-tendermint/internal/p2p
  • go test ./sei-tendermint/node -run "TestPrepareApplication|TestValidateNodeSetupConfig|TestBuildGigaConfig|TestPreparePersistentStateDir" -count=1
  • go test -race ./giga/evmonly ./sei-tendermint/internal/evmonlyapp
  • go vet ./giga/evmonly/... ./sei-db/bootstrap ./sei-tendermint/internal/evmonlyapp ./sei-tendermint/node
  • gofmt and goimports on every touched Go file

Notes

  • make fmtcheck cannot start locally because the pinned golangci-lint executable was built with Go 1.24, below the repository target of Go 1.25.6.
  • The full sei-tendermint/node test package reaches an unrelated local-port collision in TestFreezeModeDisablesMempoolTraffic; the targeted node setup tests pass independently.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

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

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedSep 3, 2026, 10:33 AM

@codecov

codecov Bot commented Sep 3, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 63.07190% with 113 lines in your changes missing coverage. Please review.
✅ Project coverage is 60.27%. Comparing base (7273a43) to head (af5a2d7).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
giga/evmonly/receipt_store.go 63.43% 36 Missing and 13 partials ⚠️
sei-tendermint/node/setup.go 13.33% 38 Missing and 1 partial ⚠️
sei-tendermint/node/node.go 44.44% 9 Missing and 1 partial ⚠️
sei-tendermint/node/public.go 71.42% 8 Missing and 2 partials ⚠️
giga/evmonly/giga_store.go 86.66% 1 Missing and 1 partial ⚠️
giga/evmonly/receipt.go 93.93% 1 Missing and 1 partial ⚠️
sei-tendermint/internal/evmonlyapp/app.go 92.30% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #4088      +/-   ##
==========================================
- Coverage   61.30%   60.27%   -1.04%     
==========================================
  Files        2178     2074     -104     
  Lines      190788   178692   -12096     
==========================================
- Hits       116968   107707    -9261     
+ Misses      62796    60957    -1839     
+ Partials    11024    10028     -996     
Flag Coverage Δ
sei-chain-pr 74.99% <63.07%> (?)
sei-db 69.80% <ø> (ø)
sei-db-state-db ?

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
giga/evmonly/cmd/evmonly-loadtest/pipeline.go 72.01% <100.00%> (+1.22%) ⬆️
giga/evmonly/executor.go 86.74% <ø> (-0.20%) ⬇️
giga/evmonly/storage_manager.go 100.00% <100.00%> (ø)
sei-db/bootstrap/storage_manager.go 70.09% <100.00%> (+1.46%) ⬆️
sei-tendermint/node/seed.go 52.13% <100.00%> (ø)
sei-tendermint/internal/evmonlyapp/app.go 71.93% <92.30%> (ø)
giga/evmonly/giga_store.go 88.88% <86.66%> (-1.81%) ⬇️
giga/evmonly/receipt.go 93.93% <93.93%> (ø)
sei-tendermint/node/node.go 65.42% <44.44%> (-0.21%) ⬇️
sei-tendermint/node/public.go 72.56% <71.42%> (-4.36%) ⬇️
... and 2 more

... and 109 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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