Use of precomputed address to execute operations before actual deployment
mintPool computes the CREATE2 address via Create2.computeAddress(...) and uses it to mint NFTs, register pools, and emit events before the proxy is actually deployed. No security impact, but it is best practice to deploy first and then use the deployed address.
Description
In the current implementation of mintPool(), the CREATE2-based address is precomputed using Create2.computeAddress(...), and this address is immediately used in downstream logic (minting NFTs, registering pools, emitting events), before the proxy is actually deployed:
address poolAddress = Create2.computeAddress(...);ownershipNFT.mintPoolNFT(poolOwner, poolAddress, initialTokenURI);token.registerNewPool(poolAddress, msg.sender);...BeaconProxy proxy = new BeaconProxy{salt: salt}(...);
Impact
Although it does not have a direct security impact, this issue is marked as informational because it is considered good practice to first deploy the contract and then use the deployed address.
Recommendation
Although it does not have a direct security impact, this issue is marked as informational because it is considered good practice to first deploy the contract and then use the deployed address.

