in ERC721 functions there is no baseUri
instead the function is called baseURI, this discrepancy leads to a failure
in generating the expected bytes4 selector, causing the URI to remain empty, and when these tokens are bridged to starknet L2
they will have empty URI.
The issue arises due to the incorrect casing of the baseURI function, which is a standard method used in ERC721 contracts
to return the base URI for token metadata.
When the function is named baseUri
with a lowercase Uri instead of URI, the generated bytes4 selector will be different
from the standard baseURI selector. As a result, calls to baseURI return false and empty Uri.
When the token is bridged to starknet L2, the absence of a valid URI leads to the token lacking the necessary metadata.
Ensure that the baseURI function is implemented with the correct casing, following the ERC721 standard.
This will generate the correct bytes4 selector and allow the URI to be fetched properly.
Likelyhood: Medium, no token using OZ version 2.X and 3.X will work. Impact: Low, Valid standard token won’t be mint with the URI but owner can use ERC721UriImpl function on the deployed token.
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.