Skip to content

[engine] Network boosts minds#4803

Ben requested to merge feat/network-boost-m4803 into master

Ticket(s) / Related Merge Requests

Summary of Changes

Boost for tenant networks.

Testing Considerations

Deployed to https://ben.oke.minds.io/

Tenant

Permissions and enabled toggle

These tests presume Boost is enabled in the monetization tab

  • When CAN_BOOST permission is on, I can see the boost console (after refresh).
  • When CAN_BOOST permission is off, I CANNOT see the boost console (after refresh).
  • When CAN_MODERATE permission is on, I can see the "boosts" subtab in network admin moderation section.
  • When CAN_MODERATE permission is off, I cannot see the "boosts" subtab in network admin moderation section.
  • Boost option appears in post menu of an activity when NOT the activity owner and you have CAN_BOOST permission.
  • Boost option DOES NOT appear in post menu of an activity when NOT the activity owner and you do not have CAN_BOOST permission.
  • Boost option appears on my channel when I have CAN_BOOST permission.
  • Boost option does not appear on my channel when I DO NOT have CAN_BOOST permission.
  • Boost option appears on my groups when CAN_BOOST permission is enabled.
  • Boost option DOES NOT appear on my groups when CAN_BOOST permission is NOT enabled.
  • Boost option appears on SEPs of my own posts when CAN_BOOST permission is enabled.
  • Boost option DOES NOT appear on SEPs of my own posts when CAN_BOOST permission is NOT enabled.
  • I should not be able to navigate directly to the boost console when boosting is disabled OR I do not have the CAN_BOOST permission.
  • I should not be able to navigate directly to the admin boost console when boosting is disabled OR I do not have the CAN_MODERATE permission.
  • Enabled toggle will override all of these (see monetization tab).
Creation
  • Channel boost creation.
  • Group boost creation.
  • Activity boost creation.
  • Back and forward navigation works correctly for activity boosts.
  • Back and forward navigation works correctly for channel boosts.
  • Boosts are NOT auto-approved.
  • Boost audience and token boosting is NOT accessible.
  • Upgrade to plus promo does NOT show after making a boost
Custom sidenav
  • Boost item can be moved around in sidebar customization panel.
  • Sidebar item should not appear when logged out.
User boost console
  • Boosts appear in user boost console following creation.
  • Explore tab shows currently running boosts.
  • Console updates with state as Boosts update.
  • Receipt links work.
Admin boost console

Note that NON admins will not be able to moderate Boosts till we complete minds#4883 (closed)

  • Accepting boosts
  • Declining boosts
  • Options are limited on decline to against policy, against TOS and report upheld.
Viewing boosts
  • When boost is enabled, Boosts appear in feeds.
  • When boost is enabled, Boosts appear on other users channels.
  • When boost is enabled, Boosts appear in newsfeed sidebar (channel and group).
  • When boost is NOT enabled, Boosts DO NOT appear in feeds.
  • When boost is NOT enabled, Boosts DO NOT appear on other users channels.
  • When boost is NOT enabled, Boosts DO NOT appear in newsfeed sidebar (channel and group).
Emails
  • Emails arrive as expected and do not contain Minds specific language.

Non-tenant

Permissions and enabled toggle
  • I can see the boost console (after refresh).
  • I can see boosts in the admin console.
  • Boost option appears in post menu of an activity when NOT the activity owner.
  • Boost option appears on my channel.
  • Boost option appears on my groups.
  • Boost option appears on SEPs of my own posts.
Creation
  • Channel boost creation.
  • Group boost creation.
  • Activity boost creation.
  • Back and forward navigation works correctly for activity boosts.
  • Back and forward navigation works correctly for channel boosts.
  • Boost audience and token boosting is accessible.
  • Upgrade to plus promo shows after making a boost and not plus or pro.
User boost console
  • Boosts appear in user boost console following creation.
  • Explore tab shows currently running boosts.
  • Console updates with state as Boosts update.
  • Receipt links work.
Admin boost console

Note: you WILL have to scroll to the bottom as some old boosts are broken at the top

  • Accepting boosts
  • Declining boosts
  • All options are available when declining
Viewing boosts
  • Boosts appear in feeds.
  • Boosts appear on other users channels.
  • Boosts appear in newsfeed sidebar (channel and group).
Emails
  • Emails arrive as expected and do not contain Minds specific language.

Deployment Considerations

ALTER TABLE boosts
    ADD tenant_id int DEFAULT -1
    FIRST;
ALTER TABLE boosts DROP PRIMARY KEY , ADD PRIMARY KEY(tenant_id, guid);

ALTER TABLE boost_summaries
    ADD tenant_id int DEFAULT -1
    FIRST;
ALTER TABLE boost_summaries DROP PRIMARY KEY , ADD PRIMARY KEY(tenant_id, guid, date);

ALTER TABLE boost_rankings
    ADD tenant_id int DEFAULT -1
    FIRST;
ALTER TABLE boost_rankings DROP PRIMARY KEY , ADD PRIMARY KEY(tenant_id, guid);

Regression Scope

Boost system. Wide scope.

Platform Affected (web, mobile, etc)

Web, engine, front, mobile.

Developer Testing Completed

Manual, unit (jasmine/karma), unit (phpspec), some coverage from E2E.

Screenshots / Screen Recording

Tenant

Permissions and enabled toggle

When CAN_BOOST permission is on, I can see the boost console (after refresh).

image

When CAN_BOOST permission is off, I CANNOT see the boost console (after refresh).

image

When CAN_MODERATE permission is on, I can see the "boosts" subtab in network admin moderation section.

image

When CAN_MODERATE permission is off, I cannot see the "boosts" subtab in network admin moderation section.

image

Boost option appears in post menu of an activity when NOT the activity owner and you have CAN_BOOST permission.

image

Boost option DOES NOT appear in post menu of an activity when NOT the activity owner and you do not have CAN_BOOST permission.

image

Boost option appears on my channel when I have CAN_BOOST permission.

image

Boost option does not appear on my channel when I DO NOT have CAN_BOOST permission.

image

Boost option appears on my groups when CAN_BOOST permission is enabled.

image

Boost option DOES NOT appear on my groups when CAN_BOOST permission is NOT enabled.

image

Boost option appears on SEPs of my own posts when CAN_BOOST permission is enabled.

image

Boost option DOES NOT appear on SEPs of my own posts when CAN_BOOST permission is NOT enabled.

image

I should not be able to navigate directly to the boost console when boosting is disabled OR I do not have the CAN_BOOST permission.

simplescreenrecorder-2024-05-16_18.15.55

I should not be able to navigate directly to the admin boost console when boosting is disabled OR I do not have the CAN_MODERATE permission.

simplescreenrecorder-2024-05-16_18.16.46

Enabled toggle will override all of these (see monetization tab).

simplescreenrecorder-2024-05-16_18.18.39

Creation

Channel boost creation.

simplescreenrecorder-2024-05-16_18.19.31

Group boost creation.

simplescreenrecorder-2024-05-16_18.20.02

Activity boost creation.

simplescreenrecorder-2024-05-16_18.20.25

Back and forward navigation works correctly for activity boosts.

simplescreenrecorder-2024-05-16_18.20.52

Back and forward navigation works correctly for channel boosts.

simplescreenrecorder-2024-05-16_18.21.37

Autoapprove does not work

simplescreenrecorder-2024-05-16_18.23.38

Custom sidenav

Boost item can be moved around in sidebar customization panel.

simplescreenrecorder-2024-05-16_18.26.26

Sidebar item should not appear when logged out.

image

User boost console

Boosts appear in user boost console following creation.

image

Explore tab shows currently running boosts.

image

Console updates with state as Boosts update.

image

Receipt links work.

simplescreenrecorder-2024-05-16_18.27.36

Admin boost console

Accepting boosts

simplescreenrecorder-2024-05-16_18.29.29

Declining boosts

simplescreenrecorder-2024-05-16_18.29.57

Viewing boosts

When boost is enabled, Boosts appear in feeds.

image

When boost is enabled, Boosts appear on other users channels.

image

When boost is enabled, Boosts appear in newsfeed sidebar (channel and group).

image

When boost is NOT enabled, Boosts DO NOT appear in feeds.

image

When boost is NOT enabled, Boosts DO NOT appear on other users channels.

image

When boost is NOT enabled, Boosts DO NOT appear in newsfeed sidebar (channel and group).

image

Emails

Emails arrive as expected and do not contain Minds specific language.

Non-tenant

Permissions

I can see the boost console.

image

I can see boosts in the admin console.

image

Boost option appears in post menu of an activity when NOT the activity owner.

image

Boost option appears on my channel.

image

Boost option appears on my groups.

image

Boost option appears on SEPs of my own posts.

image

Creation

Channel boost creation.

simplescreenrecorder-2024-05-16_18.38.15

Group boost creation.

simplescreenrecorder-2024-05-16_18.38.44

Activity boost creation.

simplescreenrecorder-2024-05-16_18.38.59

Back and forward navigation works correctly for activity boosts.

simplescreenrecorder-2024-05-16_18.39.33

Back and forward navigation works correctly for channel boosts.

simplescreenrecorder-2024-05-16_18.40.14

Boost audience and token boosting is accessible.

image

User boost console

Boosts appear in user boost console following creation.

image

Explore tab shows currently running boosts.

image

Console updates with state as Boosts update.

simplescreenrecorder-2024-05-16_18.42.09

Receipt links work.

simplescreenrecorder-2024-05-16_18.43.15

Admin boost console

Accepting / declining boosts

simplescreenrecorder-2024-05-16_18.44.10

Viewing boosts

Boosts appear in feeds.

image

Boosts appear on other users channels.

image

Boosts appear in newsfeed sidebar (channel and group).

image

Emails

image

image

image

Emails arrive as expected

image

image

image

Does this impact

  • Localization
  • Dark/light mode
  • Guest mode

Definition of Done Checklist

  • The Acceptance Criteria has been met
  • Code is tested: Testing includes unit/spec, E2E/automated and manual testing
  • Merge requests description has been filled out
Edited by Ben

Merge request reports