-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Oracle data integration #922
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've read over this and it all looks good.
But on a high level im still a bit unclear on the use case for oracles and how users who want to add an oracle data source would do that.
Are oracles supposed to be something which is fetched or computed at the point of making a signature request, or would the chain constantly retrieve data regardless of whether signature requests are made?
.ok_or(UserErr::NoProgramDefined(program_pointer.to_string()))? | ||
.bytecode) | ||
.ok_or(UserErr::NoProgramDefined(program_pointer.to_string()))?; | ||
Ok((program_info.bytecode, program_info.oracle_data_pointer)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it would be clearer to return program_info
rather than a tuple
pallets/oracle/src/lib.rs
Outdated
|
||
#[pallet::storage] | ||
#[pallet::getter(fn oracle_data)] | ||
// TODO: parameterize bounded vec constants |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe make an issue
the second one, then it gets fed into the program based on how the program is written. It can be a lot of data, but the "end game" for this as of now would be super cool to get ibc proofs on chain and then be able to give a proof of the state of a chain verify it in a program and use it as a constraint |
This PR integrates oracle data into programs and implements block number as the first use case
ProgramInfo
in thePrograms
pallet to know what heading the specific oracle data is underCloses #789