You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Early 2020, we chose to store the builder and url for the code in the CodeInfo to enable easier validation of the code. However, in practice, this is often unfilled or filled with incorrect values. And no tooling has been produced to properly fill it out nor verify contracts using it.
In the meantime, most cosmwasm-plus based contracts now store correct and up-to-date metadata in the contract itself to enable (future) migrations. We could display this in frontend UIs if present and remove the older builder/url fields.
The cw2 spec defines a format and raw storage location for the contract metadata. And you can view this set in many contracts like cw20-base
The text was updated successfully, but these errors were encountered:
The information in cw2 are not sufficient to perform reproducible builds because they might be able to define the source code, but not the build tooling. For Contract Info for Migration this info is not needed, but for reproducible builds it is.
Now you could argue if reproducible builds is something wasmd should care about. In the Ethereum ecosystem such information is completely off-chain (Etherscan or https://github.com/ethereum/sourcify). I see that people do not care now. But will they once there is huge impact on the contracts and contracts compete against each other? Will they realize early enough (before upload) that the fields are important and populate them? Or do we need to give them the chance to do that later (off chain)?
Early 2020, we chose to store the
builder
andurl
for the code in theCodeInfo
to enable easier validation of the code. However, in practice, this is often unfilled or filled with incorrect values. And no tooling has been produced to properly fill it out nor verify contracts using it.In the meantime, most
cosmwasm-plus
based contracts now store correct and up-to-date metadata in the contract itself to enable (future) migrations. We could display this in frontend UIs if present and remove the olderbuilder
/url
fields.The cw2 spec defines a format and raw storage location for the contract metadata. And you can view this set in many contracts like
cw20-base
The text was updated successfully, but these errors were encountered: