The Bridge takes an NFT from the source chain, and transfer/mint it to the receiver on the destination chain. If The collection we bridged has no address on the destination chain we deploy a new one.
There is an Admin function that is used to set l1<->l2 NFT collection addresses, where it can be used by the admin to set the NFT collection addresses on L1 and L2 himself.
CollectionManager.sol#L151-L165
As we can see in the implementation on L1Bridge if the collections are already set we are not resetting them unless we activate the force parameter.
This implementation is not the same as that in L2Bridge, where we are setting the collection addresses, without checking it or supporting forcing functionality.
As we can see forcing feature is not supported we are just modifying the collections without providing the checks we did in L1Bridge.
So the two bridges do not have the same implementation when setting l1<->l2 addresses manually.
Implement the forcing check that is in L1Bridge in L2Bridge.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.