TestNet - BiblePay-Evolution & GSCs (Generic Smart Contracts)

Started by Rob Andrews, March 24, 2019, 01:17:09 PM

Previous topic - Next topic

Rob Andrews

1.4.2.3-Mandatory Upgrade for TestNet

- Push ABN, GSC, and Anti-GPU errors up into getmininginfo errors
display
- Fix ABN bug preventing creation of ABN transactions (causing very slow
mining)
- Note: in 'exec getabnweight nnnnn' you can see the coin*age data

togoshigekata

Thank you for clarifying Rob!

Upgraded to v1.4.2.3 and did a reindex, ran into an error reading a bad block,
doing a full clean now and reindexing again

getblockhash 55072
002c22d0c230b*

vuli


orbis

Quote from: togoshigekata on April 29, 2019, 04:19:41 PM
Reporting back, I was able to run "exec sendgscc" with encrypted/locked GUI wallet,
Output:
{
"Command": "sendgscc",
"results": 1
}

Hi.
So I've tested 1423 and mining is working with locked wallet perfectly.
But GSC is not working for me.
Like Togo, my I have "results": 1, but no tx was made.
After wallet unlock it's working.
I've tried exec sendgscc "healed a leper on the street" and it works too.
But when I tried exec sendgscc "healed" there was Diary entry incomplete. (code -1)
Are there some restriction in sendgscc "text"?

Rob and can you explain me please how GSC exactly works?
When I run it for longer time it sends 4 GSC-Transmission (every hour) before I receive Smart-Contract-Payment.
How is the testnet speeded? Are those 4 hours like one day and it means that there were 4 GSC tx per day?

Rob Andrews

Quote from: togoshigekata on April 30, 2019, 09:20:32 AM
Thank you for clarifying Rob!

Upgraded to v1.4.2.3 and did a reindex, ran into an error reading a bad block,
doing a full clean now and reindexing again

getblockhash 55072
002c22d0c230b*

Looks like we match, good.
I see diff is at .31 - not too horrible.  We have 9 in the leaderboard, not horrible.

I dont know if anyone noticed this cool new feature in getmininginfo, but if your CPK triggered the anti-gpu latch you will see the error.  Its kind of cool to see you are the one who solved the last block.

(BTW, any errors in getmininginfo are cleared in about 3 minutes- this gives you a chance to see them).



Rob Andrews

Quote from: orbis on April 30, 2019, 10:30:22 AM
Hi.
So I've tested 1423 and mining is working with locked wallet perfectly.
But GSC is not working for me.
Like Togo, my I have "results": 1, but no tx was made.
After wallet unlock it's working.
I've tried exec sendgscc "healed a leper on the street" and it works too.
But when I tried exec sendgscc "healed" there was Diary entry incomplete. (code -1)
Are there some restriction in sendgscc "text"?

Rob and can you explain me please how GSC exactly works?
When I run it for longer time it sends 4 GSC-Transmission (every hour) before I receive Smart-Contract-Payment.
How is the testnet speeded? Are those 4 hours like one day and it means that there were 4 GSC tx per day?

So, testing sending the gscc transmission with a locked encrypted wallet, with the 'setautounlockpassword' set, I just tested this, and my GSCC went, so its not the password causing it (if yours didnt send I recommend looking in your log under "CreateGSCTransmission::Fail::" and see if there is an error.  We do bubble the error to getmininginfo now also, but it is erased after 3 mins so check the log.  You can just run it again and look for the error).

Regarding the diary entry, it must be 10 chars or greater - so I just expanded that error message for the next version.

BTW, the most common GSC error is if you have a high setting set for your pog coinagepercentage (pog_coinagepercentage key) and you have more than 500 tx's in your wallet - check to see if they need consolidated once by going into coincontrol - and if they are not consolidated click Send some and consolidate the wallet first.   The error in the log would be something like GSC transaction size too large for a block.

We have 2.5 min blocks in testnet, so that means we end up with 4 GSC blocks per day (instead of 1 like prod).  And then we also have one GSC transmission per hour per project (instead of one per 24 hour in prod).  We only send ONE GSC per project - so that should mean you should see 2 per hour.     One for HEALING and one for POG.

I added the links for the docs for GSC to the OP post, let me know if there is still something that is unclear on GSC.



togoshigekata

I just want to note, when I tested the encrypted/locked wallet, I didnt use: "setautounlockpassword", should I test again using that?

Rob Andrews

Quote from: togoshigekata on April 30, 2019, 11:29:46 AM
I just want to note, when I tested the encrypted/locked wallet, I didnt use: "setautounlockpassword", should I test again using that?

Hmmm, u mean u just manually unlocked it?  Yes, please test it with being locked and with only the setautounlockpassword set, that way it will confirm a locked user can abn mine and send gsc.

I tested last night successfully but more eyes are better.


togoshigekata

So all I did was encrypt the wallet, the wallet turned off, I turned it back on,
(so its just an encrypted/locked wallet, no setautounlockpassword, and no manual unlock)

and then I typed "getmininginfo", looking more carefully, it says I have hashps,
but in poolinfo3 says "Unable to create abn tx (wallet locked)"
and in gsc_errors says "POG: Sorry, wallet must be unlocked"

for "exec sendgscc", its the output
{
"Command": "sendgscc",
"results": 1
}
but I only see "Mined" transactions in my transaction list
Should it send a GSC Transmission transaction as soon as I run that command?

===

Testing now with "setautounlockpassword"

I typed "getmininginfo" again
poolinfo3 and gsc_errors are now empty

Im a little confused though, if my wallet has been locked this whole time,
Im still able to get "Mined" transaction rewards?

I typed "exec sendgscc"
and immediately saw a GSC Transmission transaction pop up

Rob Andrews

Quote from: togoshigekata on April 30, 2019, 01:04:01 PM
So all I did was encrypt the wallet, the wallet turned off, I turned it back on,
(so its just an encrypted/locked wallet, no setautounlockpassword, and no manual unlock)

and then I typed "getmininginfo", looking more carefully, it says I have hashps,
but in poolinfo3 says "Unable to create abn tx (wallet locked)"
and in gsc_errors says "POG: Sorry, wallet must be unlocked"

for "exec sendgscc", its the output
{
"Command": "sendgscc",
"results": 1
}
but I only see "Mined" transactions in my transaction list
Should it send a GSC Transmission transaction as soon as I run that command?

===

Testing now with "setautounlockpassword"

I typed "getmininginfo" again
poolinfo3 and gsc_errors are now empty

Im a little confused though, if my wallet has been locked this whole time,
Im still able to get "Mined" transaction rewards?

I typed "exec sendgscc"
and immediately saw a GSC Transmission transaction pop up

1.  Its a very, very complicated beast when you first boot.  To test this, please start the wallet encrypted, then type 'walletlock' then 'setautounlockpassword blah'.  The reason for this is an error is thrown when the first mining thread is started and you havent finished typing in the setautounlock, and that error is not cleared for 3 mins.  So you really have to disregard the first error in getmininginfo.
2.  After the error has cleared, then ensure you are mining with HPS and no errors with the setautounlockpassword only.
3.  I found out today that results:1 only means that sendgscc created a tx (but didnt necesarily send it).  So, I just removed it.  But i also see that *if* an error occurs, a ERROR row will also appear.  So please retest that, and just manually check the txlist to see if it was sent, and if it was then it passes.
4.  On the 'exec sendgscc', it should send one - if it didnt, check the log under CreateGSCC and see what the reason is - like I replied to Orbis - the reason is bubbled up to getmininginfo also.


orbis

I've tested locked wallet with setautounlockpassword and it works.
Mining and gsc is working fine.
I've tested HEALING again aand yes there are two GSC txs right now.

I have few more questions and notes.
1. setautounlockpassword  command  is similar like -headlesspodcpassword? Because when you unlock it with setautounlockpassword headless linux it will be visible in bash history and cleaning it out is not effective.
2. Rob, I read those GSC docs, but I still don't understand how are points in HEALING counted. E.g. I sent exec sendgscc "text" and I have around 33k points, but you has more than 18.6M. And that is really huge difference :) Till now I was in HEALING campaign, but without Diary Entry, so I was without reward and only with 1 GSC tx. But like I see, there is only you in leaderboard within HEALING.
3. I understand it correctly, that If I want to be in HEALING I need to write diary entry every day?
4. How it will be controlled what is in HEALING diary entry? E,g, I can wrote there every day "My wife was prayed with our children before go to bed for ...", because they everyday pick someone who are they prayed for and I will be in every HEALING reward. Or I can wrote there some fairytale and if it is not controlled I'll be there too.
5. There could be some output e.g. exec healinginputs where can be visible all inputs.
6. Leaderboard output from menu item show only cumulative leaderboard. Would it be hard to get there some other buttons and after click show e.g. POG only and second button HEALING only leaderboard?
7. BTW, after the 1422 update and "Decrease Leaderboard default grid size" it's worst for me. Leaderboard window is smaller, with both scroller and not reflecting the GUI window size. Wallet window size cannot be smaller. And if you pick up Leaderboard from menu, it is not "lightened", there is lightened your previous view. In my case on screenshot it is "Send". Here is screenshot: https://prnt.sc/nit7gz
8. I've found that leaderboard true works, like exec prominenc true, so it's good :)
9. Now I'll be little personal. Rob, I think that we could be apolitical. It is not good to mess Biblepay with some political attitude. I'm writing about BiblePay_Healing_Campaign wiki page. I saw it before, but didn't tell anything even though if there were prayers in wallet, but now I saw it again and it's not good. Just take a look on last sentence: warfare example. I don't know how it looks in US, but here for most people is Trump with his behaviours and acts something like bad joke. And he is definitelly not good example of Christian. Many people has many political attitude, but most of Biblepay-related people are christians and I think it's not good to divide people with political themes.

And that's al for now :)

Rob Andrews

Quote from: orbis on April 30, 2019, 01:30:03 PM
I've tested locked wallet with setautounlockpassword and it works.
Mining and gsc is working fine.
I've tested HEALING again aand yes there are two GSC txs right now.

And that's al for now :)




I have few more questions and notes.

1. setautounlockpassword  command  is similar like -headlesspodcpassword? Because when you unlock it with setautounlockpassword headless linux it will be visible in bash history and cleaning it out is not effective.

--->  Yes, and so would walletpassphrase (be visible in a bash history), what suggestion do you have, going back to the popup window in qt?



2. Rob, I read those GSC docs, but I still don't understand how are points in HEALING counted. E.g. I sent exec sendgscc "text" and I have around 33k points, but you has more than 18.6M. And that is really huge difference :) Till now I was in HEALING campaign, but without Diary Entry, so I was without reward and only with 1 GSC tx. But like I see, there is only you in leaderboard within HEALING.

---->  On Healing, it only pays 5% of the daily GSC budget (95% goes to POG).  But you must be reading wrong, I actually have 0 right now.  Do a 'leaderboard', take a look at the first 15 rows (only the rows that show healing).  Those rows add up to 5% of the GSC budget.  You are receiving 5% (all of it) and I am receiving 0.  Now on randrews in the pog budget, I have 76.9 million points (18.9%) of the gsc pog budget because on that machine, I mined 105,000,000 bbp and Im staking 50% of it (pog_coinagepercentage=.50), another words in real life, most people would have used 90% of that on sancs and I probably have 1 mil free (not 105 mil free for staking).  You can see how the payout works btw, if you take a gsc txid, and type 'exec getpoints txid' and it shows (you can see the coin*age*factor in the GSC payment doc example also).


3. I understand it correctly, that If I want to be in HEALING I need to write diary entry every day?

--->  You dont need to write one, but if you dont, you will be left out of that payment cycle.  So yes, but you can do it for : warfare, prayers, healing, driving out demons, etc.  Almost any Christian activity.



4. How it will be controlled what is in HEALING diary entry? E,g, I can wrote there every day "My wife was prayed with our children before go to bed for ...", because they everyday pick someone who are they prayed for and I will be in every HEALING reward. Or I can wrote there some fairytale and if it is not controlled I'll be there too.

---->  For now, God will monitor it (as it pays so low).  In the future at the end of the year approximately, we will have reputation scores. 


5. There could be some output e.g. exec healinginputs where can be visible all inputs.

---->  Yes, I love that, I did of course realize that, but let me add that to my punchlist now.  It would at least be useful for us to see the fruits of our labor on some type of scrolling view on the overview page .



6. Leaderboard output from menu item show only cumulative leaderboard. Would it be hard to get there some other buttons and after click show e.g. POG only and second button HEALING only leaderboard?

---->    Hmm, Ill add this to my list as a "potential nice to have todo", these either get passed to another dev, unless I have time ( as compared to some of the other priorities that come up around here day to day, like making the pool hashes work and testing with Capulo).


7. BTW, after the 1422 update and "Decrease Leaderboard default grid size" it's worst for me. Leaderboard window is smaller, with both scroller and not reflecting the GUI window size. Wallet window size cannot be smaller. And if you pick up Leaderboard from menu, it is not "lightened", there is lightened your previous view. In my case on screenshot it is "Send". Here is screenshot: https://prnt.sc/nit7gz

---->  Ok, I see its not expanding to the size of the window, I added this back to my todo list.



9. Now I'll be little personal. Rob, I think that we could be apolitical. It is not good to mess Biblepay with some political attitude. I'm writing about BiblePay_Healing_Campaign wiki page. I saw it before, but didn't tell anything even though if there were prayers in wallet, but now I saw it again and it's not good. Just take a look on last sentence: warfare example. I don't know how it looks in US, but here for most people is Trump with his behaviours and acts something like bad joke. And he is definitelly not good example of Christian. Many people has many political attitude, but most of Biblepay-related people are christians and I think it's not good to divide people with political themes.

----->  Its an overall good thing to encourage Christians to bear fruit through: spiritual warfare campaigns, healing the sick, casting out demons, praying (IE the things Jesus commanded us to do), spread the gospel etc.  Your specifically talking about my use of Trump as an example in a wiki.  So yes, we should make it a different example (thats all). 

As far as Trump being a good Christian himself, (and the following paragraph is Not related to BiblePay in any way, its my personal view):   We know here in the US that Trump came from a prior life of sinful activities, owning a gambling casino and had many wives, but a Christian can also repent- and the point is that we are not saying we are behind Trump because he is the savior of the US, we are behind him because we view he is our chosen Cyrus, that God can Use anyone for his master plan, and Trump is here to represent Christians in the best way possible in this broken world.  This means giving us extended grace, not caving to the NWO, helping usher in the end times, building the 3rd temple, provoking Ezekiel 38, etc.  Its the opposite of being rounded up into fema camps and being beheaded.  So this spiritual warfare campaign is strictly to protect the president from harm, let him not be slandered, and be a vessel for Gods will in America.  Its just one of many exampels of possible warfare.  One good example is praying for the welfare of Slovakia, to break demonic strongholds down in all your cities and that Gods precious gospel may penetrate deep in all those strongholds.




orbis

Quote from: Rob Andrews on April 30, 2019, 01:51:15 PM
1. setautounlockpassword  command  is similar like -headlesspodcpassword? Because when you unlock it with setautounlockpassword headless linux it will be visible in bash history and cleaning it out is not effective.

--->  Yes, and so would walletpassphrase (be visible in a bash history), what suggestion do you have, going back to the popup window in qt?
I took a look on that in GUI console there is no problem. After command I can use "clear console" and commands are gone. But in headless it's more complicated. But if -headlesspodcpassword still worked it is solved :) If not, put the -headlesspodcpassword there againd and it will be solved ;)

Quote from: Rob Andrews on April 30, 2019, 01:51:15 PM
2. Rob, I read those GSC docs, but I still don't understand how are points in HEALING counted. E.g. I sent exec sendgscc "text" and I have around 33k points, but you has more than 18.6M. And that is really huge difference :) Till now I was in HEALING campaign, but without Diary Entry, so I was without reward and only with 1 GSC tx. But like I see, there is only you in leaderboard within HEALING.

---->  On Healing, it only pays 5% of the daily GSC budget (95% goes to POG).  But you must be reading wrong, I actually have 0 right now.  Do a 'leaderboard', take a look at the first 15 rows (only the rows that show healing).  Those rows add up to 5% of the GSC budget.  You are receiving 5% (all of it) and I am receiving 0.  Now on randrews in the pog budget, I have 76.9 million points (18.9%) of the gsc pog budget because on that machine, I mined 105,000,000 bbp and Im staking 50% of it (pog_coinagepercentage=.50), another words in real life, most people would have used 90% of that on sancs and I probably have 1 mil free (not 105 mil free for staking).  You can see how the payout works btw, if you take a gsc txid, and type 'exec getpoints txid' and it shows (you can see the coin*age*factor in the GSC payment doc example also).
Ok, now I look myself with 5% but before it was you with 4,99% and me with 0,01% with those points. I've tried to figure it out, but I'm still confused :D It's better to use pog_coinagepercentage=.25 and has bigger coin_age or pog_coinagepercentage=1 and has lower coinage? :)

Quote from: Rob Andrews on April 30, 2019, 01:51:15 PM
9. Now I'll be little personal. Rob, I think that we could be apolitical. It is not good to mess Biblepay with some political attitude. I'm writing about BiblePay_Healing_Campaign wiki page. I saw it before, but didn't tell anything even though if there were prayers in wallet, but now I saw it again and it's not good. Just take a look on last sentence: warfare example. I don't know how it looks in US, but here for most people is Trump with his behaviours and acts something like bad joke. And he is definitelly not good example of Christian. Many people has many political attitude, but most of Biblepay-related people are christians and I think it's not good to divide people with political themes.

----->  Its an overall good thing to encourage Christians to bear fruit through: spiritual warfare campaigns, healing the sick, casting out demons, praying (IE the things Jesus commanded us to do), spread the gospel etc.  Your specifically talking about my use of Trump as an example in a wiki.  So yes, we should make it a different example (thats all). 

As far as Trump being a good Christian himself, (and the following paragraph is Not related to BiblePay in any way, its my personal view):   We know here in the US that Trump came from a prior life of sinful activities, owning a gambling casino and had many wives, but a Christian can also repent- and the point is that we are not saying we are behind Trump because he is the savior of the US, we are behind him because we view he is our chosen Cyrus, that God can Use anyone for his master plan, and Trump is here to represent Christians in the best way possible in this broken world.  This means giving us extended grace, not caving to the NWO, helping usher in the end times, building the 3rd temple, provoking Ezekiel 38, etc.  Its the opposite of being rounded up into fema camps and being beheaded.  So this spiritual warfare campaign is strictly to protect the president from harm, let him not be slandered, and be a vessel for Gods will in America.  Its just one of many exampels of possible warfare.  One good example is praying for the welfare of Slovakia, to break demonic strongholds down in all your cities and that Gods precious gospel may penetrate deep in all those strongholds.
Ok, whatever :) I just thought that being apolitical is good idea.

Rob Andrews

I was thinking, maybe we should make the POBH miner chain a chunk of verses together in succession, so when we look at a block, we can actually read a coherent passage. 

(Currently we chain them together with math pointers, but we could point to a section, then get 7 verses for example after that verse, and that would let people read something that makes sense when they look at a block).


Rob Andrews

Quote from: orbis on April 30, 2019, 02:41:47 PM
I took a look on that in GUI console there is no problem. After command I can use "clear console" and commands are gone. But in headless it's more complicated. But if -headlesspodcpassword still worked it is solved :) If not, put the -headlesspodcpassword there againd and it will be solved ;)
Ok, now I look myself with 5% but before it was you with 4,99% and me with 0,01% with those points. I've tried to figure it out, but I'm still confused :D It's better to use pog_coinagepercentage=.25 and has bigger coin_age or pog_coinagepercentage=1 and has lower coinage? :)
Ok, whatever :) I just thought that being apolitical is good idea.

1.  Yes, probably good to be neutral politically.  I edited the Trump to be a different campaign for breaking demonic strongholds.  (Note that this is really an idea where if we organize properly, we can use this campaign as a biblepay spiritual warfare campaign for a specific purpose in the future - like anti-witchcraft for Trump for example).

2.  Good idea on the headless password, I forgot how smart we were in the past.  I just ported the headlesspassword option and improved it a little (IE it just takes the -headlesspassword arg, then it presents the input box) - ill explain it in the next version.

3.  I modified the leaderboard UI page dimensions and set the stretch property, will be in the next version.  ( I also made that left menu set as the checked color, btw ).

4.  On the issue where I am consuming all the rewards for healing, to give you a better example, I just sent one.  Since this node has 100 mil, and I have the coinagepercentage set for .10%, when I sent my diary entry, it used 10 mil in the stake.  So, please see this txid:  exec getpoints txid:  b242e6c0c6844c474e791294d50b9379f4f24141ec8a529ef0d852d962e739d9.  You will see the Heal rules are like this :  Coin Amount * Coin Age = Points, as long as the diary entry is => 10 chars long.  Now you can make one on your end and compare the points and will probably see how it works.  Now you can also see that there is no real advantage between heal and POG either (since both use coin age).