Repository navigation
Pin the missed mutants from overnight run 38686116770 - #1027
Merged
Merged
Conversation
rearden-grok
Bot
force-pushed
the
mutants/overnight-38686116770
branch
from
October 16, 2026 06:10
5189f0b to
aab410e
Compare
Header sync, asmap, the block cache, tip age, and the mempool slot file now fail a peer, RPC, or reopened-disk journey when those operators flip. Dead asmap helpers, the in-memory body slack, and a redundant jump bound are gone. The interpret loop bound stays `while pos < endpos`. A file sanity accepts does not change the ASN on one extra empty step, and rewriting the bound to `!=` can spin after a jump past EOF. Made-with: Cursor
At or past the last bit the opcode is invalid and the lookup returns 0, so `while pos < endpos` cannot be told from `<=`. A jump file that lands past EOF still reopens as no map and interprets as ASN 0. Made-with: Cursor
Asmap files are loaded with from_path. The header locator is the getheaders message, not a direct walk call. The warm-locator thread-local is not a pin: publishing the store locator makes a None body match the wire. Made-with: Cursor
Asmap files still load through from_path, and the mempool slot file is still checked after reopen. Header-sync, block-cache, tip-age, and chain-hub operators that only showed up in an in-crate helper are not pinned. Made-with: Cursor
The warm locator is a thread-local, and the confirm-reject checks called in-crate helpers. Neither is a peer message or a reopened file. Made-with: Cursor
Header sync, challenger retarget, the header-tip cap, tip age, and getblocktemplate are checked through getheaders, peer disconnect, getchaintips, and getmininginfo. Dead locators and the wtxid-count reject are removed. Made-with: Cursor
The walk stops after eight hashes again. The ask forwards that locator up to the protocol maximum and still appends the confirmed tip, so a longer comparison is visible on the getheaders a peer receives. Made-with: Cursor
A loopback bytecode maps 127.0.0.1, .2, and .3 to distinct ASNs, and a lone return maps every peer to ASN 1. One regtest node reports those on getpeerinfo and names the file length and digest at startup. Refused files exit at tip entry and log the sanity or open failure. The bound P2P port is published at run/p2p.addr so the inbound sockets can find the listener. Made-with: Cursor
The loopback and refuse journeys load the same files through run_p2p. The fake getpeerinfo peer, the direct load_asmap boots, and the bytecode units that only checked those files are gone. The two-prefix encoder lock, the fuzz seed, the public interpret-on-garbage result, and the netgroup key tests stay. Made-with: Cursor
rearden-grok
Bot
force-pushed
the
mutants/overnight-38686116770
branch
from
October 16, 2026 20:10
2db101d to
6940fb1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
a692f6e14).Test plan
cargo test --workspace(knownend_of_ibd_sh_interruptflake only)cargo clippy --workspace --all-targets -- -D warningscargo fmt --all -- --check,./scripts/ast-grep.sh,./scripts/ci-os-smoke.shqc,test,windows,macos,coverage)