In L1Bridge
we are dealing with tokenURIs by only sending the baseURI
if exists and if not we are sending each tokenURI separately.
But if we checked how the case is handled when Bridging tokens from L2 to L1, we are not dealing with it that way. We are always getting tokenURIs separately. without trying to get the baseURI.
collection_manager.cairo#L33-L36
This inconsistency in Logic implemented in both Bridges is not a good approach and will make transferring with only the base_uri
, which is cheaper than filling an array of tokenURIs, not allowed from the L2 Bridge side.
Inability to Bridge tokens from L2 to L1 with base_uri
support.
Manual Review
The same as we did in L1Bridge
side. We will make a function call to get the base_uri
first, and if existed we will just pass it with an empty token_uris
array.
URI is not lost on the origin chain and it can be modified with `ERC721UriImpl`. As explained in the TODO below, that’s a design choice and it will be implemented as a future feature. https://github.com/Cyfrin/2024-07-ark-project/blob/main/apps/blockchain/ethereum/src/Bridge.sol#L206 `ERC721Bridgable` is out of scope.
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.