Skip to content

Backmerge master into develop#2072

Merged
manav2401 merged 1 commit intodevelopfrom
master
Feb 20, 2026
Merged

Backmerge master into develop#2072
manav2401 merged 1 commit intodevelopfrom
master

Conversation

@manav2401
Copy link
Copy Markdown
Member

No description provided.

* core/stateless: fix witness RLP backward compat with WIT/0 peers

Nodes upgraded from WIT/0 to WIT/1 were incorrectly jailing WIT/0 peers
with "rlp: too few elements for stateless.ExtWitness". A 5-field
ExtWitness encoding (Context, Headers, Codes, State, Keys) was
accidentally introduced during an upstream geth merge, replacing the
original 3-field wire format (Context, Headers, State) that WIT/0 peers
still use.

Introduce BorWitness as the canonical 3-field wire format. EncodeRLP now
encodes using BorWitness (State only, codes excluded). DecodeRLP tries
BorWitness first and falls back to ExtWitness for backward compatibility
with peers that temporarily ran the extended encoding.

ExtWitness is retained as the representation for the JSON debug API
(ExecutionWitness, ExecutionWitnessByHash) and as the fallback decode
target for the transitional period.

* Add test
@manav2401 manav2401 added the do not squash and merge This PR will be NOT be squashed and merged label Feb 20, 2026
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
12.0% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@manav2401 manav2401 merged commit 7854476 into develop Feb 20, 2026
31 of 36 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not squash and merge This PR will be NOT be squashed and merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants