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
Currently it's impossible for a contract to learn anything about another contract's executable. There are several use cases for that, for example:
Bridge protocols might need to be able to distinguish between SAC and custom tokens when deploying tokens from Stellar on other chains (e.g. to handle SAC metadata in a special way)
Custom wallets might want to limit trust only to certain implementations. This is especially useful for the extensible, signature-less smart wallet implementations
In order to solve this, we can just provide a new host function that returns the executable (Wasm hash, or flag telling that this is SAC).
The text was updated successfully, but these errors were encountered:
This should be a github discussion in the stellar-protocol repo? so as to focus first on the use case and impact, rather than the implementation.
Sure, this is an issue to not forget about this. I'm planning to sketch a CAP and open a discussion. I don't think though there is much to discuss in terms of use cases, there have been a few already and in general this was something that was on the plate since even the Soroban launch.
The 'might need' makes it sound really unclear if this is needed, or what exactly the requirements would be.
What I meant to convey that some protocols need it, but I can't claim that all of them do. E.g. Axelar creates metadata for a token to be deployed on the other chain and needs to massage the SAC metadata bit to make it compatible with other chains' requirements.
Currently it's impossible for a contract to learn anything about another contract's executable. There are several use cases for that, for example:
In order to solve this, we can just provide a new host function that returns the executable (Wasm hash, or flag telling that this is SAC).
The text was updated successfully, but these errors were encountered: