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

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

Previous topic - Next topic

orbis

It looks, that now it is working fine for me and I'll be waiting for automatic GSC tx.
But I have few questions :)
I've read wiki few times, but I didn't understand how (POG) GSC tx exactly works.
Like I said  few times, maybe it's with language barrier, maybe I just don't get it :D
After my 1st successful GSC I've had conf like this:
pog_coinagepercentage=.5
pog_foundationdonation=1000

but I saw that my donation was only 7tBBP, like default and I have 2 GSC txs each with around 50k tBBPs spent.
I've changed conf to:
pog_coinagepercentage=1
pog_foundationdonation=1000

and tried forced GSC again.
Result was that my donation is still 7 tBBPs and those 2 GSC txs spend each around 145k tBBPs.
So I'm really confused.

  • I think that 2 GSC txs are because POG and HEALING. Is that true?
  • Why is my donation only 7 tBBPs?
  • Why there is so huge difference between spended amount? (50k vs 145k is not .5 vs 1)
  • Is the spended amount same as Coin Amount in your POG formula?
  • How it is the spended amount counted? What is it based on?
  • Is it possible to set spended amount to exact number? e.g. 5000
  • How to find expected Coin Amount and Coin Age Days?
Thanks :)

Rob Andrews

Quote from: vuli on April 08, 2019, 01:52:14 PM
it should be open now. I had some trouble.

Yes, got it to connect now, you should stay in enabled then - please let us know if it fails.

Good luck.

Rob Andrews

Quote from: orbis on April 08, 2019, 01:06:12 PM
Many of my greps are similiar like this:

2019-04-08 14:25:53
SmartContract-Client::Creating Client side transaction for campaign POG
Created client side transmission -  [Sorry, wallet must be unlocked.] with txid 0000000000000000000000000000000000000000000000000000000000000000 UpdateTip: new best=4dad01934762a84a41b2290711372190258a7339f4d6eb4be4a203e6b1838a9c height=18471 version=0x20000001 log2_work=42.10664032 tx=41984 date='2019-04-07

So it looks, that wallet must be unlocked.
Now I have it unlocked, and after  'exec sendgscc true' it was successful and I have 2x GSC-Transmission tx :)
I don't know why it was not successful before (I've tried it with unlocked wallet too)
So, will be there "password popup" on start and "-headlesspodcpassword" on linux?
BTW, I've made bankroll and I'm waiting for confirmations, but I didn't found 'check some' button. Where is it?

Something in my gut makes me dislike that pop up-type in password wizard.  (Partially from the boot-up annoyance, partially from the anticipation from security experts that it pops up during boot) -- I feel the security experts may frown on it (even though we store it in a securestring).  So in Evo, I added this:
exec setautounlockpassword password
(as an alternative).  This way, the user must be competent enough to initiate the process to type it in.  So please test that and let me know if it solves the issue?

(On the before:  There was probably a different error in the log, as I did raise the max transaction bytes to 100K during the last release).

We should also bubble up any GSC errors to the user in getmininginfo I suppose.


Rob Andrews

Quote from: orbis on April 08, 2019, 02:29:02 PM
It looks, that now it is working fine for me and I'll be waiting for automatic GSC tx.
But I have few questions :)
I've read wiki few times, but I didn't understand how (POG) GSC tx exactly works.
Like I said  few times, maybe it's with language barrier, maybe I just don't get it :D
After my 1st successful GSC I've had conf like this:
pog_coinagepercentage=.5
pog_foundationdonation=1000

but I saw that my donation was only 7tBBP, like default and I have 2 GSC txs each with around 50k tBBPs spent.
I've changed conf to:
pog_coinagepercentage=1
pog_foundationdonation=1000

and tried forced GSC again.
Result was that my donation is still 7 tBBPs and those 2 GSC txs spend each around 145k tBBPs.
So I'm really confused.

  • I think that 2 GSC txs are because POG and HEALING. Is that true?
  • Why is my donation only 7 tBBPs?
  • Why there is so huge difference between spended amount? (50k vs 145k is not .5 vs 1)
  • Is the spended amount same as Coin Amount in your POG formula?
  • How it is the spended amount counted? What is it based on?
  • Is it possible to set spended amount to exact number? e.g. 5000
  • How to find expected Coin Amount and Coin Age Days?
Thanks :)

Yeah, lets iron this out.
  • I think that 2 GSC txs are because POG and HEALING. Is that true?
:

Yes, because the rules vary from campaign to campaign, the wallet will iterate through each enrolled campaign, and send one GSCC transmission individually.  I thought about originally having one big transaction, but for multiple reasons, one individual for each campaign is better (primarily because we might have a stake-interest for example, that requires distinct coins to be staked for the Interest campaign, and distinct Other coins staked for POG for example).  We can label the transaction in the UI "Healing" soon (I just added to my list).

  • Why is my donation only 7 tBBPs?
It looks like this is case sensitive (this needs fixed).  For now, please make it :  POG_foundationdonation=nnnn  and it should work.

  • Why there is so huge difference between spended amount? (50k vs 145k is not .5 vs 1)
Its due to the coin*age it found breaching the original coinage percentage setting, as compared to "all your coins" at once.  I'm making a feature now that will shed light on this - please wait for the next versions report and Ill explain how to run this.

  • How it is the spended amount counted? What is it based on?
On a side note you can type 'exec getpogpoints txid' and it will show you how many points you earned for a gscc transmission.  But, let me see if I can answer this question for you based on a tool.  For now, the high level answer is : If you have .50 coin age percentage selected, the wallet will multiply your CoinAmount*Age(inDays) for each coin in the wallet, and collect half of the coin age out of the wallet in a big transmission, staked to yourself.   Let me know if that part does not answer it.

  • Is it possible to set spended amount to exact number? e.g. 5000
Hmmm, that would add complexity, then we would need more wallet settings.  I think most people will want to set a Percentage of their wallet coins for a certain project.  We can talk more about this if you can convince me on the usefulness.  Know that Im making a report now that will clearly show the metrics in/out and it might shed light on the mechanics of the ROI for these campaigns.

Expected coin*age:
Go to coin control, take the age in days of a coin, multiply that * the coin amount = coin_age.

How to find "click some" button:
Go to coin control, look for 2nd button on the top left



orbis

Thanks Rob.
Now it makes more sense to me :)
I'll be collecting more question for later :D

vuli


Rob Andrews

#171
Quote from: vuli on April 09, 2019, 11:21:35 AM
nope,... It is getting EXPIRED again.

Yeah, looking in my sancs logs for your ip 213.250*, I see you are masternode lockpoint 9e54110*, and I do see "Masternode ping is invalid" last night @ 19:53:13 2019-04-08. 

The other sancs will vote you down for payment if they receive bad health pings back over a certain threshhold, and then your node will be required to be restarted. 

It probably has something to do with your LAN consistency - as my sancs haven't been expiring.


Rob Andrews

1.4.1.4-Mandatory Upgrade for TestNet

- Remove debug spam
- Add Quantitative Tightening (with sporks)
- Fix Sanc Port # in Documentation
- Reset govobj deletion delay back to original parameters
- Bubble GSC transmission errors into getmininginfo
- Add Diary Entry to sendcoinsentry UI page
- Add ability to make a Diary entry for campaigns supporting diary
entries
- Add ability to see Diary Entry from the Transaction List double click
- Add ability to send GSC transmission from Send Coins entry UI
- Add QT Level and BBP Price to Overview page, getblock nnnn, exec price
- Change exec getpogpoints to exec getpoints, make getpoints capable of
showing any GSC transmission type tx points
- Modify exec prominence to show personal prominence (exec prominence
true) or all (exec prominence false)
- Modify exec sendgscc to take a diary entry
- Added exec sentgsc report (To see mining expenses, run this, this
breaks down donations, coinage transmissions, and totals).  To see
revenue, run exec prominence true.
- Modified campaigns that take diaries to reward 0 without diary entry
- Added exec price (this shows the current BBP price, BTC price, and QT
level)

Rob Andrews


Rob Andrews

1.4.1.5-Mandatory Upgrade for TestNet

- Mandatory upgrade before block 25,500 for TestNet
- Add leaderboard UI
- Ensure QT does not turn on until sancs vote on the first future price,
ensure monthly governance budget is based on last months QT level for
planning purposes

Rob Andrews

#175
This is just a personal observation about the Healing campaign - and overall fairness.  However I do feel strongly about the benefit we can achieve by bearing quantifiable fruit in Jesus name (IE rewarding people for physical actions).

I realize that it would be unfair to single out 'healing campaigns' as 5% of the total GSC budget, so I think what we can do is change the Healing campaign to be a more general category for the total budget allocated to campaigns that require a diary entry.

So, what I plan on doing is creating a few PDFs with instructions, one for spiritual warfare, one for healing/driving out demons, one for spreading the gospel, and one for praying for others.  And what we do is ask the user to follow the PDF (or all the PDFs) before engaging in any of the activities requiring a diary entry.

In the end, anyone enrolled in 'healing' can then enter a diary entry for :
- Conducting spiritual warfare
- Healing/Driving out demons (healing is pray for a persons health affliction and commanding the affliction out)
- Witnessing out in public (spreading the gospel)
- Praying for loved ones/prayer list (prayer closet)

All of these things bear fruit, but the idea is to summarize the daily activity that made a difference into a diary entry once per day and enter it - regardless of the actual category above (later we can add the sub categories).  This will share the 5% among everyone with an active diary entry for the day.


Rob Andrews

Quote from: Rob Andrews on April 09, 2019, 03:48:52 PM
1.4.1.4-Mandatory Upgrade for TestNet

- Bubble GSC transmission errors into getmininginfo
- Add Diary Entry to sendcoinsentry UI page
- Add ability to make a Diary entry for campaigns supporting diary
entries
- Add ability to see Diary Entry from the Transaction List double click
- Change exec getpogpoints to exec getpoints, make getpoints capable of
showing any GSC transmission type tx points
- Modify exec prominence to show personal prominence (exec prominence
true) or all (exec prominence false)
- Added exec sentgsc report (To see mining expenses, run this, this
breaks down donations, coinage transmissions, and totals).  To see
revenue, run exec prominence true.
- Added exec price (this shows the current BBP price, BTC price, and QT
level)

1) We now bubble GSC errors into getmininginfo.  That should take care of the problem Orbis had.

2) To see your total outbound GSCTs sent in the last 205 blocks, just type : exec sentgsc

3) You can type 'exec getpoints txid' to see the point calculation for a sent-gsc-tx

4) You can compare exec sentgsc (as your mining expense) to exec prominence true (as your revenue).  Exec prominence true shows only your details.

5) You can now see the Leaderboard UI totals by clicking the Leaderboard menu.  (QT).

6) To enter a diary entry (for one of the bearing fruit records), (first be sure you have joined Healing with exec join healing), then go to Send Money, click Diary Entry.  Type the diary entry. 

7) At 25,500 we can test QT (Quant-tightening).  I am deliberately testing things in layers.


vuli

6) is it working? because it doesnt make a transaction. -diary entry
If you check "Donate to fundation" is the same address and it make a transaction.

Rob Andrews

I think we are on this blockhash :

09:03:54

getblockhash 25354


09:03:54

72887c9dec86fe2cc3c97ef7caa3691505c81adbb021af177fd34088c72fdbfd

(Some nodes got banned as we upgraded etc).

Diff = .41


Rob Andrews

#179
Quote from: vuli on April 11, 2019, 08:14:25 AM
6) is it working? because it doesnt make a transaction. -diary entry
If you check "Donate to fundation" is the same address and it make a transaction.

Yes.

Please post the error you get, as we bubble the error to the screen in QT (are you using QT)?
If no error on the screen its also written to the log.

EDIT: Also, please post the diary entry here, so I can reproduce.  It must be > 10 chars in length to be valid.