Skip to content

v2.8.1 candidate#2243

Merged
manav2401 merged 6 commits into
masterfrom
v2.8.1-candidate
May 26, 2026
Merged

v2.8.1 candidate#2243
manav2401 merged 6 commits into
masterfrom
v2.8.1-candidate

Conversation

@manav2401

Copy link
Copy Markdown
Member

Summary

Prepare bor v2.8.1 stable release

cffls and others added 5 commits May 26, 2026 20:54
Reject GetWitnessMetadata packets carrying more hashes than
MaxWitnessMetadataServe (1024) before iterating, matching the
per-request item caps used by maxHeadersServe / maxBodiesServe /
maxReceiptsServe in the eth protocol.

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
kurtosis-pos moved the setup and cleanup composite actions under
.github/actions/kurtosis/, so the bor workflows fail with "Can't find
action.yml" at the Pre/Post kurtosis run steps after checkout.

Update both kurtosis-e2e.yml and kurtosis-stateless-e2e.yml to use
./.github/actions/kurtosis/setup and ./.github/actions/kurtosis/cleanup.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 26, 2026 16:23

@claude claude 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.

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Prepare the Bor v2.8.1 stable release by tightening eth/wit request limits, normalizing empty receipt handling across storage and p2p encoding, and ensuring state-sync EVM execution uses an explicit TxContext.

Changes:

  • Cap GetWitnessMetadata request hash count to MaxWitnessMetadataServe (1024) and add coverage.
  • Normalize empty/nil receipts to canonical RLP empty list (0xc0) across DB writes and eth/68+69 receipt network encoding (with tests).
  • Set a minimal EVM TxContext for state-sync transactions; centralize Bor system transaction sender address in params.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
params/version.go Bumps patch version to v2.8.1.
params/protocol_params.go Introduces params.BorSystemAddress for Bor system/state-sync txs.
eth/protocols/eth/receipt.go Treats nil/empty receipts as canonical empty list during eth/68 and eth/69 encoding.
eth/protocols/eth/receipt_test.go Adds tests for empty/malformed receipts inputs for eth/68 and eth/69 encoding.
eth/protocols/eth/handlers.go Ensures empty receipts are included as rlp.EmptyList in p2p responses.
eth/handler_wit.go Adds MaxWitnessMetadataServe and rejects oversized metadata requests early.
eth/handler_wit_test.go Adds unit test coverage for the witness metadata hash-count cap.
core/evm.go Adds NewEVMTxContextForStateSync helper.
core/blockchain.go Normalizes empty receipt storage to canonical rlp.EmptyList and keeps bor receipt slot nil when absent.
core/blockchain_test.go Adds snap-sync receipt insertion tests validating empty-list normalization.
consensus/bor/statefull/processor.go Uses params.BorSystemAddress and sets TxContext for state-sync EVM calls.
consensus/bor/bor_test.go Adds a test validating ORIGIN/GASPRICE behavior for state-sync execution context.
.github/workflows/kurtosis-stateless-e2e.yml Updates composite action paths for kurtosis setup/cleanup steps.
.github/workflows/kurtosis-e2e.yml Updates composite action paths for kurtosis setup/cleanup steps.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread eth/protocols/eth/receipt_test.go
Comment thread eth/protocols/eth/receipt_test.go
Comment thread core/blockchain_test.go Outdated
Comment thread eth/protocols/eth/handlers.go Outdated
@manav2401 manav2401 requested a review from a team May 26, 2026 16:35
@manav2401

Copy link
Copy Markdown
Member Author

FYI: Issues reported by Govuln checks are fixed in develop.

@sonarqubecloud

Copy link
Copy Markdown

@manav2401 manav2401 merged commit 7489066 into master May 26, 2026
20 of 25 checks passed
@codecov

codecov Bot commented May 26, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 72.50000% with 11 lines in your changes missing coverage. Please review.
✅ Project coverage is 52.27%. Comparing base (2cb8015) to head (db0054a).
⚠️ Report is 7 commits behind head on master.

Files with missing lines Patch % Lines
eth/protocols/eth/handlers.go 30.00% 3 Missing and 4 partials ⚠️
consensus/bor/statefull/processor.go 0.00% 2 Missing ⚠️
core/evm.go 0.00% 2 Missing ⚠️

❌ Your patch status has failed because the patch coverage (72.50%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2243      +/-   ##
==========================================
- Coverage   52.66%   52.27%   -0.40%     
==========================================
  Files         885      885              
  Lines      156759   155776     -983     
==========================================
- Hits        82562    81429    -1133     
- Misses      68982    69111     +129     
- Partials     5215     5236      +21     
Files with missing lines Coverage Δ
core/blockchain.go 62.39% <100.00%> (+0.18%) ⬆️
eth/handler_wit.go 79.47% <100.00%> (+0.41%) ⬆️
eth/protocols/eth/receipt.go 79.57% <100.00%> (+0.89%) ⬆️
params/protocol_params.go 84.21% <ø> (ø)
params/version.go 23.68% <ø> (ø)
consensus/bor/statefull/processor.go 0.00% <0.00%> (ø)
core/evm.go 70.53% <0.00%> (-1.29%) ⬇️
eth/protocols/eth/handlers.go 49.37% <30.00%> (-0.18%) ⬇️

... and 34 files with indirect coverage changes

Files with missing lines Coverage Δ
core/blockchain.go 62.39% <100.00%> (+0.18%) ⬆️
eth/handler_wit.go 79.47% <100.00%> (+0.41%) ⬆️
eth/protocols/eth/receipt.go 79.57% <100.00%> (+0.89%) ⬆️
params/protocol_params.go 84.21% <ø> (ø)
params/version.go 23.68% <ø> (ø)
consensus/bor/statefull/processor.go 0.00% <0.00%> (ø)
core/evm.go 70.53% <0.00%> (-1.29%) ⬇️
eth/protocols/eth/handlers.go 49.37% <30.00%> (-0.18%) ⬇️

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

5 participants