Hi everybody
I hope i am not only one asked this important question.
I am talking specifically for ERC721PresetMinterPauserAutoId contract.
Think that you use auto id strategy when minting token. Think that tx1, tx2, tx3 transactions from a,b,c users are mined in this order so token id will be
tx1 : token id = 1 ,owner = a , token uri = example.com/tokens/1, metadata = m1
tx2 : token id = 2 , owner = b, token uri = example.com/tokens/2, metadata = m2
tx3 : token id = 3 , owner = c , token uri = example.com/tokens/3, metadata = m3
Suddenly re-orgs happens on chain so order of tx change as tx3, tx2, tx1 in this case
tx3 : token id = 1 ,owner = c , token uri = example.com/tokens/1, metadata = m1
tx2 : token id = 2 , owner = b, token uri = example.com/tokens/2, metadata = m2
tx1 : token id = 3 , owner = a , token uri = example.com/tokens/3, metadata = m3
As you can see that chain re-organized fine but off-chain metadata on server points to wrong token id.
If a,b,c owners are exactly same so nothing wrong in here because the owner will have 1,2,3 token id numbers in any case and tokens will have exactly same metadata after re-org like 1 = m1,2 = m2, 3 = m3
But if a,b,c are different owners in this case there is a mismatch between tokens and metadata on server.
I hope it is clear what i am saying in here if not so let me know.
Let me know if there is well known solution to this problem.