I've read the Oracle implementation recently via https://plutus-pioneer-program.readthedocs.io/en/latest/pioneer/week6.html.
As I understand, Oracle has 2 primary operations the following
- Use: an Oracle UTxO will be used to execute a transaction
- Update: As part of the EUTxO model/blockchain, every data in the chain are immutable, meaning Oracle data can't be updated itself. It requires update operations to update the data. For instance ADA/USD ratio rate.
Due to the update operation, there are 2 questions that come to my mind. Could anyone please help to explain this to me, please?
- How frequently will Oracle data be updated? I think there would have different answers for different scenarios, but I don't know any specific cases in practice yet. It would be good if you could help to estimate costs for them based on scenarios.
- I suppose we have the off-chain part to send transactions for updating Oracle data. So what will happen if the off-chain part is broken? For instance, ADA/USD ratio rate can't be updated and smart contracts keep using the old rate.
If you have any idea about the way Indigo https://indigoprotocol.io/ (or any other launched products on the Cardano ecosystem) implement their Oracle, It would be very appreciated if you could add them here.
Thank you very much!