Skip to content

Pipeline giga static block processing#3495

Open
codchen wants to merge 6 commits into
mainfrom
codex/giga-static-pipeline
Open

Pipeline giga static block processing#3495
codchen wants to merge 6 commits into
mainfrom
codex/giga-static-pipeline

Conversation

@codchen

@codchen codchen commented May 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • split giga static transaction preparation from stateful execution
  • add an async per-block static processing pipeline so later block stateless work can overlap earlier block stateful execution
  • wire giga synchronous and OCC execution paths to consume prepared EVM metadata, keeping Cosmos transactions as legacy fallbacks

Tests

  • go test ./app
  • make giga-integration-test
  • make giga-mixed-integration-test
  • make autobahn-integration-test
  • make parquet-integration-test

@cursor

cursor Bot commented May 22, 2026

Copy link
Copy Markdown

PR Summary

High Risk
Changes consensus block execution ordering and async prep of EVM validation results; incorrect reuse or divergent static vs stateful paths could affect tx outcomes or AppHash.

Overview
Splits state-free giga EVM work from stateful execution so decode, EvmStatelessChecks, eth tx conversion, and signature recovery run ahead of (and optionally in parallel with) block delivery.

When the giga executor is on, ProcessProposal kicks off background static jobs keyed by height/hash (reusing proposal-time decoded txs), and ProcessBlock waits on that job after BeginBlock, then passes staticTxs into synchronous and OCC giga paths. A capped in-memory pipeline (retention, max jobs per height) lets a future height’s static prep overlap the current block; duplicate keys are ignored.

Giga deliver paths short-circuit on precomputed failure results, use prepared gigaStaticEVMTx for execution, and only fall back to on-the-fly static prep if the pipeline miss or OCC checksum map is incomplete. executeEVMTxWithGigaExecutor no longer recovers senders or runs stateless checks inline.

Adds app/giga_static_test.go for concurrent static prep and pipeline behavior. giga/executor/internal/signer.go implements Equal instead of panicking.

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

@github-actions

github-actions Bot commented May 22, 2026

Copy link
Copy Markdown

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

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedJun 24, 2026, 2:51 AM

@codecov

codecov Bot commented May 22, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 43.17181% with 129 lines in your changes missing coverage. Please review.
✅ Project coverage is 59.03%. Comparing base (e4de165) to head (08b2d29).
⚠️ Report is 9 commits behind head on main.

Files with missing lines Patch % Lines
app/app.go 43.75% 111 Missing and 15 partials ⚠️
giga/executor/internal/signer.go 0.00% 3 Missing ⚠️

❌ Your patch check has failed because the patch coverage (43.17%) is below the target coverage (50.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #3495      +/-   ##
==========================================
+ Coverage   59.01%   59.03%   +0.01%     
==========================================
  Files        2244     2187      -57     
  Lines      184817   182079    -2738     
==========================================
- Hits       109076   107491    -1585     
+ Misses      65999    64938    -1061     
+ Partials     9742     9650      -92     
Flag Coverage Δ
sei-chain-pr 46.79% <43.17%> (?)
sei-db 70.41% <ø> (ø)
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/executor/internal/signer.go 18.18% <0.00%> (-1.82%) ⬇️
app/app.go 66.37% <43.75%> (-4.91%) ⬇️

... and 452 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.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

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 using default effort 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 5d8b337. Configure here.

Comment thread app/app.go
@codchen codchen force-pushed the codex/giga-static-pipeline branch from 5d8b337 to 87a27a2 Compare May 26, 2026 04:23
Comment thread app/app.go
Comment thread app/app.go Outdated
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.

3 participants