Skip to content

fix: address audit findings H-8, H-9, M-11#42

Merged
mejango merged 2 commits intomainfrom
audit/fix-nemesis-findings
Mar 23, 2026
Merged

fix: address audit findings H-8, H-9, M-11#42
mejango merged 2 commits intomainfrom
audit/fix-nemesis-findings

Conversation

@mejango
Copy link
Contributor

@mejango mejango commented Mar 23, 2026

Summary

  • H-8: Reorder _deploySuckers to deploy JBSuckerRegistry before singleton sucker implementations, preventing clones from receiving a zero-address registry immutable.
  • H-9: Guard _deployRevnet, _deployCpnRevnet, _deployNanaRevnet, and _deployBanny with an early return when _buybackRegistry is unset (Uniswap stack skipped), preventing revnets from consuming zero-address registries.
  • M-11: Add ownership verification in _ensureProjectExists — revert with Deploy_ProjectNotOwned if the deployer does not own the existing project.

Test plan

  • forge build compiles successfully
  • Verify on a fork that Optimism Sepolia deployment (Uniswap stack skipped) no longer attempts revnet deployment
  • Verify sucker singleton clones receive a valid registry address
  • Verify _ensureProjectExists reverts when the deployer is not the project owner

🤖 Generated with Claude Code

mejango and others added 2 commits March 23, 2026 11:28
H-8: Deploy JBSuckerRegistry before singleton sucker implementations so
clones receive a non-zero registry immutable.

H-9: Guard revnet, CPN, NANA, and Banny deployment when buyback registry
is unset (Uniswap stack skipped).

M-11: Verify deployer owns the project in _ensureProjectExists before
reusing an existing project ID.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mejango mejango merged commit 399fe47 into main Mar 23, 2026
2 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