Skip to content

Port five concrete-boundary tests from rain.extrospection PR 50 - #2

Merged
thedavidmeister merged 1 commit into
mainfrom
2026-08-19-port-pr50-concrete-boundary-tests
Aug 19, 2026
Merged

Port five concrete-boundary tests from rain.extrospection PR 50#2
thedavidmeister merged 1 commit into
mainfrom
2026-08-19-port-pr50-concrete-boundary-tests

Conversation

@thedavidmeister

Copy link
Copy Markdown
Contributor

Port five concrete-boundary tests from rain.extrospection PR 50

Upstream rain.extrospection PR 50 (merged, commit 719279616ccdd24d61668c0843ded7cb56105cc5) added five tests pinning the concrete Extrospect's delegation routing — added upstream after this repo's test copies were taken. rain.extrospection PR 131 deletes them upstream, so this repo is their only future home.

Ported byte-exactly from the upstream commit (NatSpec preserved — it states repo-local routing facts that hold identically here), with imports adapted to the rain-extrospection-0.1.6/ prefix:

File Ported test
test/src/concrete/Extrospect.checkNotEOFBytecode.t.sol testCheckNotEOFBytecodeMetamorphicButNotEOF
test/src/concrete/Extrospect.isERC1167Proxy.t.sol testIsERC1167ProxyConcreteImplementationAddress
test/src/concrete/Extrospect.isERC1167Proxy.t.sol testIsERC1167ProxyEquivalenceEOF
test/src/concrete/Extrospect.scanEVMOpcodesPresentInBytecode.t.sol testScanEVMOpcodesPresentInBytecodeUnreachableCreateCounted
test/src/concrete/Extrospect.scanEVMOpcodesReachableInBytecode.t.sol testScanEVMOpcodesReachableInBytecodeUnreachableCreateNotCounted

SOLIDITY_CBOR_RUNTIME_FIXTURE_TRIMMED is deliberately NOT ported: its only upstream consumers are test/src/lib/* tests that do not exist in this repo, and no ported or existing concrete test references it — the existing CBOR tests derive trimmed bytes via tryTrimSolidityCBORMetadata on purpose. Porting it would add dead code.

QA

  • nix develop -c forge test full suite green (running; results folded in below)
  • pre-commit run --all-files clean
  • Mutation pass: one concrete-misroute mutant per ported test (delegation target swapped), each killed by its ported test

QA results will be appended to this body when the runs complete.

🤖 Generated with Claude Code

Upstream rain.extrospection PR 50 (merged at 7192796) added five tests
pinning the concrete Extrospect's delegation routing, after this repo's
test copies were taken. rain.extrospection PR 131 deletes them upstream,
so this repo is their only future home.

Ported byte-exactly from upstream commit
719279616ccdd24d61668c0843ded7cb56105cc5, with imports adapted to the
rain-extrospection-0.1.6/ prefix:

- testCheckNotEOFBytecodeMetamorphicButNotEOF
- testIsERC1167ProxyConcreteImplementationAddress
- testIsERC1167ProxyEquivalenceEOF
- testScanEVMOpcodesPresentInBytecodeUnreachableCreateCounted
- testScanEVMOpcodesReachableInBytecodeUnreachableCreateNotCounted

SOLIDITY_CBOR_RUNTIME_FIXTURE_TRIMMED is deliberately not ported: its
only upstream consumers are test/src/lib/* tests that do not exist here,
and no ported or existing concrete test references it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@thedavidmeister thedavidmeister self-assigned this Aug 19, 2026
@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@thedavidmeister, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 19 minutes

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 2261c39f-dfcd-4e0c-b034-749b85e764f9

📥 Commits

Reviewing files that changed from the base of the PR and between 6329b95 and 29a9891.

📒 Files selected for processing (4)
  • test/src/concrete/Extrospect.checkNotEOFBytecode.t.sol
  • test/src/concrete/Extrospect.isERC1167Proxy.t.sol
  • test/src/concrete/Extrospect.scanEVMOpcodesPresentInBytecode.t.sol
  • test/src/concrete/Extrospect.scanEVMOpcodesReachableInBytecode.t.sol

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@thedavidmeister
thedavidmeister merged commit e4f7e41 into main Aug 19, 2026
4 checks passed
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