Scot Tribes on Hive

in #scotbot6 days ago (edited)

Hi everyone, first post on Hive! Been very busy with the recent transitions, and will be posting updates periodically about my progress. First wanted to just get a post about how Tribes / Scotbot is integrating with Hive.

Scotbot Dual Chain

Scotbot has the ability to crawl both Steem and Hive chains for votes and posts. Note that as the source of truth for Wallet balances is still on Steem for the time being, any wallet-related behavior still relies on Steem operations, until the Hive-Engine is operational and Tribe tokens have migrated to it (which will require another set of changes from Scot....)

Properties

Properties of how dual chain works:

  1. Hive chain is crawled in parallel, and processes posts votes in a parallel storage. Accounts will be mirrored with separate voting power from Steem, and stake balances will be taken from the steem account.
    • Tribes must opt in to this.
    • Note that there will be independent mana bars for Steem / Hive. This in essence will double everyone's effective voting ability. This is a technical limitation to the implementation. Note this is not much of a problem if either Hive or Steem is disabled.
    • If you set vote multipliers, for now it must be done on the Steem side (When processing hive votes, it looks at whatever multiplier was set on the Steem custom json op. This should be changed in the near future).
    • Following authors and reblogging are now independent. Initial snapshot was made from Steem follow/reblogs to Hive, but going forward they are independent. Hive posts should be reblogged on hive, steem posts reblogged on steem. Following new authors works this way as well.
    • Tribe owner mute functionality can be done on Steem or Hive. Same format as before, with @author/permlink. (Use steem side to mute steem posts, hive side to mute hive posts)
    • Promotion ops must be done Steem side. If it is a hive-based post, the permlink needs a prefix, like [email protected]/permlink. Nitrous instances that have this enabled have already done this.
    • A post created from Steem must be voted / commented on Steem. A post created from Hive must be voted / commented from Hive. Note that in order to interact with a Hive post on a nitrous instance, you must either use your private key login, or have both steem and hive keychains installed.
  2. The timing of when Hive ops are indexed is not predictable, as it is done entirely in parallel. So it can be ahead or behind of the Steem indexing. Meaning, if Steem side is behind, the stake backing your voting power on Hive posts will reflect a slightly behind state.
  3. All token operations must still be done on the Steem chain while Steem Engine is not migrated to Hive.
    In particular, note that new hive accounts that are not on Steem cannot have stake (but they can be delegated to). And they cannot actually claim rewards due to not having a Steem Engine account.
  4. Scotbot API exposes endpoints like /@author?hive=1, /@author/permlink?hive=1, and feeds will stream both types, and the posts return have a hive boolean to indicate if the content should be fetched from a Hive node.
  5. Pending payouts for hive posts will be collected separately, and listed in your /@author?hive=1 endpoints (This endpoint also contains your voting power and stake). *Update (3/27): Now going through autoclaim".
  6. Tribes can also turn off indexing new posts on Steem. Effectively this means all post and vote information no longer looks at the Steem chain.

Current Tribes Using Hive

You will see if the tribe has Steem or Hive enabled by looking at the token config endpoint, e.g. /config?token=LEO. This is is accurate as of (3/28).

Steem disabled applies to new posts. Let me know if you would like to enable for your tribe if you have one.

Known Issues / Tasks in Progress

  • Process vote multiplier from hive ops.

As usual, let me know if you have any questions and will be updating this post with additional questions and answers, and updates to the tasks above. Cheers!

Sort:  

Very cool, and thanks for the update! I'd been wondering how this would all play out.

So, if I understand correctly, tokens earned from Tribes will be fungible on Steem-Engine/Hive-Engine? As in (for example) 1 LEO token is the same regardless of whether it was earned on Steem or on Hive?

I think that's one option yes, since token owners will be able to set them independently. I will still need to figure out how to accomodate that on Scot, if they actually want that.

Quick questions, once hive-engine is up and running. Will Scotbot continue to operate on the Steem blockchain? Additionally, will you give as much attention to Steem based scotbots as you will to the Hive based ones? thank you

That depends on the tribe owners, basically.

Sorry to pursue the questioning, but let me be clearer: Are you going to continue providing Scotbot as a service within the Steem Blockchain? And are you going to give Steem Scotbot the same upgrades as what you develop for Hive Scotbot? thank you.

Yes, I've done it in a way where the same logic pretty much applies to both, so quite flexible here

Ok so I did not understand half of it, but looks like a solution to bring tribes over to Hive before Hive-engine arrives, take a look @jongolson if this is something that CTPtalk can do.

That's roughly it yes, I tried to list potential caveats of how it might play out, if any is not clear or should be highlighted please call that out. For example, keychain users need to download hive keychain.

Yeah let's just hope @jongolson picks up on this.

Awesome to see this. Thank you & keep up the good work!

Lot of work. I will like to enable for Marlians. Both hive and steem. Stay awesome

Sounds good, will do soon.

Yes but CCC frontend is still on STEEM, it doesn'ta ccept my HIVE password, just the old one. Is that going to be changed too??

Oh! That's because you still need the Steem account to interact with steem engine tokens. So that will not change until I can get things fully off of Steem (requires hive engine and a token migration). It will use your steem account for wallet and interacting with posts on Steem, and otherwise will use hive.

I'm tagging @patrickulrich here, let's bring SPORTS (probably re-brand) and realize what we've done good what are not. We are with you on this!

In hindsight, SCOT Bot was a pretty bad name choice huh?

Smart Contracts on Tron?

Does this mean that tribes don't work on Hive accounts created after the fork until Hive Engine is ready and the tribe has migrated to Hive Engine?

Yes, unfortunately that is the case. Fortunately, hive engine looks to have heavy progress.

Hi @eaonwarped,
I would like to have NOBEL activated on hive as well.
I am not using NOBEL in Steem any more.
http://scot-api.steem-engine.com/config?token=LEO
Could you arrange this?

Ok, will work on it and let you know when it goes.

please enable dblog on both steema and hive.many thanks!