-
Notifications
You must be signed in to change notification settings - Fork 384
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
feat: Oracle packages and Github verification realm #1568
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1568 +/- ##
==========================================
- Coverage 48.44% 48.36% -0.08%
==========================================
Files 409 410 +1
Lines 61965 62783 +818
==========================================
+ Hits 30019 30366 +347
- Misses 29446 29881 +435
- Partials 2500 2536 +36 ☔ View full report in Codecov by Sentry. |
I have a question about this implementation: Maybe I missed something, but, how can you trust the oracle? In other implementations, several Oracles will provide the same requested information, and the requester is in charge of comparing and checking to discard possible misleading info. Here only one Oracle is in charge of answering the request, right? Thanks and sorry if I misunderstood something. |
You're completely correct; you can't trust the oracle in this first implementation unless you are also the one providing the data. The idea is to build up trust eventually using two strategies:
Both strategies are just ideas and no one may want to ever try building something like that. It depends on the level of trust an oracle has with the data providers contributing to its feeds. But if someone would like to do that, I think the structure is defined in this package to allow it to happen. The first big win with this PR is to provide the tools to enable realms to bring offchain data onchain so it can be used in their applications. |
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.
LGTM
thanks Manfred. I will add some unit tests before merging. |
Relates to #1133
Note: the unit tests are missing from the gnorkle packages. This will not be merged without unit tests. They will be written once the design has been reviewed so no time is wasted writing and rewriting them should it be determined that structural changes need to occur.
Note 2: there are two readme files included in this PR so maybe read those first.
The PR is meant to be a first attempt at implementing a gno package that allows realms to integrate oracle functionality. There is a gh (github) application bundled in this PR that is an oracle and will be able to handle github handle -> gno address verification requests.
Everything at the gno package (/p) level falls within a v1 path because I think this package still has a lot of room for improvements.
Some things that need to be done before marking this ready for review:
Contributors' checklist...
BREAKING CHANGE: xxx
message was included in the description