create account

RE: Byteball Use-a-Thon: A way to contract/reward Contributor efficiently - Architecture by punqtured

View this thread on: hive.blogpeakd.comecency.com

Viewing a response to: @drsensor/byteball-use-a-thon-a-way-to-contract-reward-contributor-efficiently-architecture-1535847980842

· @punqtured ·
Super impressive to follow the progress and to learn some of the thoughts that has to go into the architecture of the solution. It's definitely a huge task to take on building a new desktop wallet, but with all the source code of the existing on ready at hand, it should be possible to extract the parts you need and add your own. 
For the contract building (and actually the potential integration to external systems' APIs too) I would suggest a bot. It makes it easy for users to simply add one bot from their wallet to then have access to everything that bot offers - including connections to external APIs. 
With webhooks from GitHub, it would be quite straightforward to create an Oracle that propagates various events from GitHub to the Byteball DAG too.

I really think your project is incredibly interesting and I agree there's definitely an actual demand for smooth solutions for the problem you identified. 

Good luck on the further progress and keep sharing as things progresses :)
properties (22)
authorpunqtured
permlinkre-drsensor-byteball-use-a-thon-a-way-to-contract-reward-contributor-efficiently-architecture-1535847980842-20180905t080945436z
categorybyteball
json_metadata{"tags":["byteball"],"app":"steemit/0.1"}
created2018-09-05 08:09:48
last_update2018-09-05 08:09:48
depth1
children2
last_payout2018-09-12 08:09:48
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length993
author_reputation4,806,938,276,068
root_title"Byteball Use-a-Thon: A way to contract/reward Contributor efficiently - Architecture"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id70,373,179
net_rshares0
@drsensor · (edited)
Thank you for the feedback. For the Oracle, I have a doubt if it's appropriate to forward various event from Github into Byteball DAG (I'm afraid the Oracle service got banned by Github). Maybe pass the responsibility to the organization/user if they want to deploy their own Github Oracle by themselves would be a good alternative 🤔.

@punqtured, is there any Oracle service (the open source one) which I can use as a reference?
properties (22)
authordrsensor
permlinkre-punqtured-re-drsensor-byteball-use-a-thon-a-way-to-contract-reward-contributor-efficiently-architecture-1535847980842-20180905t232302506z
categorybyteball
json_metadata{"tags":["byteball"],"users":["punqtured"],"app":"steemit/0.1"}
created2018-09-05 23:23:03
last_update2018-09-05 23:25:18
depth2
children1
last_payout2018-09-12 23:23:03
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length429
author_reputation17,679,210,755,117
root_title"Byteball Use-a-Thon: A way to contract/reward Contributor efficiently - Architecture"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id70,445,611
net_rshares0
@punqtured ·
Posting data to the DAG is pretty straight forward but to create an oracle that would post any GitHub update to the dag would probably be a quite costly approach since each transaction on the dag has a small fee.

The solution to this often is to create a subscription based oracle that will listen on the external platform's API only for updates it knows users would need. 

For the use case suggested, the bot that the repository owner use to create the task bounty should also notify the oracle that it want to subscribe to that specific event. This enablea the oracle to not have to scan entire github but to focus on only one repository and probably one specific event (like the merge event) and then post that to the dag. 

Another approach could be to have the bot trigger the post event. This will require one of the parties of the smart contract to ask the bot to get the oracle to post a specific piece of data. The flights delay oracle works like that. When the passenger or insurror wants to retrieve their money, they connect to the bot and ask it to post data on a given departure.

The flight insurance oracle can be found on GitHub and there's a template oracle <a href="https://github.com/byteball/byteball-data-feed">here</a>
properties (22)
authorpunqtured
permlinkre-drsensor-re-punqtured-re-drsensor-byteball-use-a-thon-a-way-to-contract-reward-contributor-efficiently-architecture-1535847980842-20180908t134412812z
categorybyteball
json_metadata{"tags":["byteball"],"links":["https://github.com/byteball/byteball-data-feed"],"app":"steemit/0.1"}
created2018-09-08 13:44:15
last_update2018-09-08 13:44:15
depth3
children0
last_payout2018-09-15 13:44:15
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,243
author_reputation4,806,938,276,068
root_title"Byteball Use-a-Thon: A way to contract/reward Contributor efficiently - Architecture"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id70,700,598
net_rshares0