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
The env in simulation should include in the footprint contracts that get __check_auth called on them.
@heytdep shared on Discord (link) a transaction built for testnet and run through simulation once. The transaction involves custom auth. The built footprint did not include the contract instance for the custom auth contract.
Ref: 61eb459b99abbb92f5c566092be8fbf916fc44f149adb6228cb33a66582ad4b3 on testnet
Custom auth requires the use of simulation twice, and if simulation was used twice with the above transaction the contract instance would have been identified in the second pass.
However, it seems reasonable that simulation would identify as much of the footprint as possible on each path, and that the contract instance would be included in the footprint in the first pass. There is already enough data available to the simulation that the custom auth contract would need to be included, at least in the read-only, because the env knows the auth will be called and is being simulated.
The text was updated successfully, but these errors were encountered:
this only will help if a custom account happens to only use the instance storage
The couple custom auth contracts I've written so far happen to only use instance storage. I think given the category of contract instance storage is highly likely for custom auth, but I agree, this issue isn't a solution for the issue @heytdep experienced.
I opened this issue because this feels more like a bug to me. The system isn't completely constructing what is logically part of the known/expected footprint.
This issue doesn't remove the need to do a second pass on simulation though.
The env in simulation should include in the footprint contracts that get
__check_auth
called on them.@heytdep shared on Discord (link) a transaction built for testnet and run through simulation once. The transaction involves custom auth. The built footprint did not include the contract instance for the custom auth contract.
Transaction:
Ref:
61eb459b99abbb92f5c566092be8fbf916fc44f149adb6228cb33a66582ad4b3
on testnetCustom auth requires the use of simulation twice, and if simulation was used twice with the above transaction the contract instance would have been identified in the second pass.
However, it seems reasonable that simulation would identify as much of the footprint as possible on each path, and that the contract instance would be included in the footprint in the first pass. There is already enough data available to the simulation that the custom auth contract would need to be included, at least in the read-only, because the env knows the auth will be called and is being simulated.
The text was updated successfully, but these errors were encountered: