create account

Core development report by howo

View this thread on: hive.blogpeakd.comecency.com
· @howo ·
$157.86
Core development report
Hello ! I haven't done one of those in a while, usually I link to development happening in the core dev meetings. But because a lot of things happened over the christmas break I figured I'd take time to write a post to explain some of them. And also I figured it was important to bring transparency and light on things that sometimes just don't work or time is spent on things that aren't features.

These days I'm 100% on hivemind, so all those will concern hivemind

# The bad: performance issues and reverts

## Performance issue with the new communities type

The @blocktrades team identified a performance issue with one of my changes  https://peakd.com/hive/@howo/communities-is-getting-an-update--what-to-expect 

These are kind of tricky to detect because you need to do a full sync, which is very time consuming. So there is no automated tests to cover those. In the end I figured out that the issue came from an SQL query. The problem was quickly found and fixed in this merge request: https://gitlab.syncad.com/hive/hivemind/-/merge_requests/619

## Reverted the setRole / setTitle feature

About four months ago I built a feature to prevent community owners from setting an user as moderator or giving it a special title, this is because we saw people were given those roles even thought they didn't want it or weren't aware as a way to make a community seem more legit than it actually is (eg: setting @acidyo as moderator of a community titled "zing's fans" even though he isn't associated with it). We had to revert it, thanks to some testing from @mahdiyari. We found out that this broke historical changes for communities.

After some back and forth we thought about some solutions but all of them were technically too heavy for the feature and we didn't want to push those so close to the deadline, so we decided to remove it until we can think of a good solution (Basically introduce versioning within hivemind so that some changes only trigger after a specific date, similar to hard forks)

This happened in https://gitlab.syncad.com/hive/hivemind/-/merge_requests/631

# The good

## Fixed an issue where beneficiaries rewards were not counted in the apis

The problem is explained here: https://gitlab.syncad.com/hive/hivemind/-/issues/204 basically if you look at a post after the payout and that post had beneficiaries all the benficiary rewards will not be included in the "total rewards" portion of a post, eg this post shocases a 14.48 hbd reward  https://peakd.com/hive-194913/@badge-696969/hotshots--52223 but in reality the reward is 29.014 because all the author reward went to beneficiaries. 

So I pushed a fix which should go live soon: https://gitlab.syncad.com/hive/hivemind/-/issues/204

## Made good progress on community beneficiaries 

Community beneficiaries is a feature that allow a community owner to set a minimum beneficiary setting, and if the minimum is not set, the post will be automatically muted. This allows communities to enforce a "common pot" to build things or just make the owner some money if the community is enticing enough. This is basically another tool towards paid communities to make them into businesses.

The work is happening in there: https://gitlab.syncad.com/hive/hivemind/-/merge_requests/621 

But while working on it I realized there was big performance hurdles, so I had to work on another feature to clear those out. Namely:

## Muted reasons feature

Right now a post can be muted (bridge_api_object has `grey` to **true**) for those reasons:

- user has less than 1 rep 
- The post is muted (by a community mod)
- User role is muted (in a community)
- User posted in a type 2 or 3 community when they didn't have the right to (non-member posting in an member only community for instance)
- The post is a comment and it's parent is muted 

This can get confusing for users "why am I muted here ?" and some front ends may decide to honor "grey" in different ways or have it up to the user (eg: I want to see posts from minus 1 rep).

So I built a feature so that the api endpoint returns the reason why a certain post is muted (eg: a mod muted this post). This will allow greater muted flexibility and improve UX.

Work is almost done and happening here: https://gitlab.syncad.com/hive/hivemind/-/merge_requests/626

## Mock helper script

This one is waaay less relevant to you unless you're specifically a hivemind dev, but I built some helper tooling to easily push mocked blocks onto hivemind to test various features without having to resync. Overall this saves bit of time but that's something you end up doing all the time when developing so that's quite usedful.

Work is done and can be seen here: https://gitlab.syncad.com/hive/hivemind/-/merge_requests/620


# Conclusion

And that's it ! I'm going to continue working on hivemind for the foreseeable future as there's a lot of work to be done (most of them being quick wins). 

<center>[![](https://files.peakd.com/file/peakd-hive/howo/EoiZWNg2LUExhTF1QSjtsgiLYvjW4AwSFbnKLgZQ3vcqNeB9sv6gRLjKhsDMnJSp3mq.png)
](https://peakd.com/witnesses)</center>
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 439 others
properties (23)
authorhowo
permlinkcore-development-report-s6ngw9
categorycore
json_metadata{"app":"peakd/2023.11.3","format":"markdown","tags":["core","dev","report","witness-update"],"users":["blocktrades","howo","acidyo","mahdiyari.","badge-696969"],"image":["https://files.peakd.com/file/peakd-hive/howo/EoiZWNg2LUExhTF1QSjtsgiLYvjW4AwSFbnKLgZQ3vcqNeB9sv6gRLjKhsDMnJSp3mq.png"]}
created2024-01-02 20:00:09
last_update2024-01-02 20:00:09
depth0
children12
last_payout2024-01-09 20:00:09
cashout_time1969-12-31 23:59:59
total_payout_value78.972 HBD
curator_payout_value78.892 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length5,087
author_reputation511,962,302,102,641
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,171,769
net_rshares345,487,965,740,866
author_curate_reward""
vote details (503)
@fire.phoenix ·
$0.29
Thank you so much for sharing. 😊
👍  
properties (23)
authorfire.phoenix
permlinkre-howo-s6o2vn
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 03:55:45
last_update2024-01-03 03:55:45
depth1
children0
last_payout2024-01-10 03:55:45
cashout_time1969-12-31 23:59:59
total_payout_value0.144 HBD
curator_payout_value0.144 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length32
author_reputation19,188,451,365,420
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,180,899
net_rshares635,339,912,043
author_curate_reward""
vote details (1)
@holybread ·
$1.56
So excited.
Can't wait for the new communities
👍  ,
properties (23)
authorholybread
permlinkre-howo-s6nykl
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 02:21:57
last_update2024-01-03 02:21:57
depth1
children0
last_payout2024-01-10 02:21:57
cashout_time1969-12-31 23:59:59
total_payout_value0.778 HBD
curator_payout_value0.778 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length46
author_reputation11,886,070,775,640
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,179,264
net_rshares3,414,887,088,021
author_curate_reward""
vote details (2)
@kairke ·
!WOC
properties (22)
authorkairke
permlinkre-howo-s6os6d
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 13:01:27
last_update2024-01-03 13:01:27
depth1
children1
last_payout2024-01-10 13:01:27
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_length4
author_reputation1,087,601,845,858
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,190,000
net_rshares0
@warofclans ·
<center><p>Amazing work on <strong>Woc</strong>, @howo! <strong>kairke</strong><sub>(2/8)</sub> is impressed by the energy and effort you've put into this post. Your contributions are truly appreciated.</p>
<p>This post is truly outstanding! @kairke wants to show their appreciation with a gift of 0.3 WGOLD. Keep doing what you're doing!</p>
<p>BTW! <a href="https://tribaldex.com/trade/WGOLD" target="_blank">WGOLD</a> is the token of the War of Clans ecosystem, you can use it to have discounts in all our games or stake it and earn rewards now!</p></center>
<hr>
<center><a href="https://discord.gg/n2DDQxv7Md" target="_blank"><img src="https://media.discordapp.net/attachments/1149416738828587068/1179805183157489784/con_l.png"></a></center>
properties (22)
authorwarofclans
permlinkre-re-howo-s6os6d-20240103t130140z
categorycore
json_metadata"{"app": "hkGifts-1.0", "language": "python", "developer": "HK"}"
created2024-01-03 13:01:39
last_update2024-01-03 13:01:39
depth2
children0
last_payout2024-01-10 13:01:39
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_length746
author_reputation-1,365,353,418
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,190,008
net_rshares0
@livinguktaiwan · (edited)
Hey @howo happy new year!

It looks like the setRole / setTitle feature thing has removed my genuine mod role from some communities eg OCD and Pinmapple.  Short of asking the community owner to add me back in, what's the solution please?  I imagine many mods won't be happy they have suddenly lost their rights 😣  And does this apply to names given to subscribers?  As part of moding Pinmapple I have noted abusers accordingly but I can't see those names now.  I don't know if it's because I don't have mod rights, or whether they've all been removed.  If so, then we definitely need that reversed... please  🙃

Also, did this change impact the community names?   Some of the communities I follow is shown as hive-xxxxxx instead of the community name.  And some of the community names have changed, like WorkLife community is shown as Product Design Live, and Pinmapple is shown as Haveyoubeenhere. 

Thanks
properties (22)
authorlivinguktaiwan
permlinkre-howo-s6p7kp
categorycore
json_metadata{"app":"peakd/2023.11.3","tags":["core"],"users":["howo"]}
created2024-01-03 18:33:57
last_update2024-01-03 18:39:09
depth1
children1
last_payout2024-01-10 18:33:57
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_length908
author_reputation1,656,066,100,846,051
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,197,496
net_rshares0
@howo ·
Hi ! I'm sorry for the delay in the response, the change wasn't supposed to slip into production but some nodes independent nodes have rolled with the development branch already. I suggest switching to api.hive.blog or api.deathwing.me as an api node for the time being. 

>  And does this apply to names given to subscribers? As part of moding Pinmapple I have noted abusers accordingly but I can't see those names now. I don't know if it's because I don't have mod rights, or whether they've all been removed. If so, then we definitely need that reversed... please 🙃

Everything will be back what you are used to don't worry 😅

> Also, did this change impact the community names? Some of the communities I follow is shown as hive-xxxxxx instead of the community name. And some of the community names have changed, like WorkLife community is shown as Product Design Live, and Pinmapple is shown as Haveyoubeenhere.

It's basically the same issue. Which should also be fixed by switching nodes.

You may need to empty your cache too for the changes to take effect.
properties (22)
authorhowo
permlinkre-livinguktaiwan-s6rblc
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-04 21:56:03
last_update2024-01-04 21:56:03
depth2
children0
last_payout2024-01-11 21:56: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_length1,065
author_reputation511,962,302,102,641
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,226,794
net_rshares0
@mosupholstery ·
$0.13
Wow very detailed report. Thanks for sharing boss
👍  
properties (23)
authormosupholstery
permlinkre-howo-202412t21284789z
categorycore
json_metadata{"type":"comment","tags":["core","dev","report","witness-update"],"app":"ecency/3.0.44-mobile","format":"markdown+html"}
created2024-01-02 20:28:06
last_update2024-01-02 20:28:06
depth1
children0
last_payout2024-01-09 20:28:06
cashout_time1969-12-31 23:59:59
total_payout_value0.066 HBD
curator_payout_value0.066 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length49
author_reputation66,811,839,959,254
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,172,325
net_rshares293,200,480,517
author_curate_reward""
vote details (1)
@rishi556 ·
$1.44
When I first saw the data inconstancy issue, I thought it was related to <a href="https://gitlab.syncad.com/hive/hivemind/-/merge_requests/520">my owner fix</a>. Glad to see it wasn't that(well not glad to see the bugs, but happy to know I wasn't the one to be causing bugs this time 😅). 
👍  
properties (23)
authorrishi556
permlinkre-howo-s6o42u
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 04:20:54
last_update2024-01-03 04:20:54
depth1
children1
last_payout2024-01-10 04:20:54
cashout_time1969-12-31 23:59:59
total_payout_value0.720 HBD
curator_payout_value0.721 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length288
author_reputation132,005,936,964,866
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,181,221
net_rshares3,164,260,856,193
author_curate_reward""
vote details (1)
@howo ·
😄
properties (22)
authorhowo
permlinkre-rishi556-s6ozhb
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 15:39:12
last_update2024-01-03 15:39:12
depth2
children0
last_payout2024-01-10 15:39:12
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
author_reputation511,962,302,102,641
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,193,530
net_rshares0
@theguruasia ·
$WINE
👎  
properties (23)
authortheguruasia
permlinkre-howo-s6o2f1
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 03:45:00
last_update2024-01-03 03:45:00
depth1
children0
last_payout2024-01-10 03:45:00
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_length5
author_reputation72,541,003,040,813
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,180,717
net_rshares-7,010,831,804
author_curate_reward""
vote details (1)
@wanderingmoon ·
$0.78
Thanks for the update. I would like to know more about these business front ends. Is there a difference between them and the ones that charge a fee like cinetv? What other front ends charge a fee and what is the fee (%)?
👍  
properties (23)
authorwanderingmoon
permlinkre-howo-s6nshf
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 00:10:30
last_update2024-01-03 00:10:30
depth1
children1
last_payout2024-01-10 00:10:30
cashout_time1969-12-31 23:59:59
total_payout_value0.391 HBD
curator_payout_value0.391 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length220
author_reputation20,950,960,428,851
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,177,408
net_rshares1,723,797,632,050
author_curate_reward""
vote details (1)
@howo ·
$0.36
Hi, it's up to each front end to charge what they feel like is fair. Each have some differences and you'll have to research them yourself as I'm not familiar about all the details for every front end. I tend to only use one (peakd)
👍  
properties (23)
authorhowo
permlinkre-wanderingmoon-s6ntbm
categorycore
json_metadata{"tags":["core"],"app":"peakd/2023.11.3"}
created2024-01-03 00:28:33
last_update2024-01-03 00:28:33
depth2
children0
last_payout2024-01-10 00:28:33
cashout_time1969-12-31 23:59:59
total_payout_value0.179 HBD
curator_payout_value0.179 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length231
author_reputation511,962,302,102,641
root_title"Core development report"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id130,177,773
net_rshares792,159,911,299
author_curate_reward""
vote details (1)