giseldo/neodataset huggingface dataset:
(bug): There is a misspelled word in the error message which gets displayed when a group is inaccessible for whatever reason.

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Reported by a user in H&S: https://www.minds.com/newsfeed/940192328231264256

Reads "THE GROUP COULD NOT BE GOUND"

Should be "THE GROUP COULD NOT BE FOUND"

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

Reads "THE GROUP COULD NOT BE GOUND"

### What is the expected *correct* behavior?

Should be "THE GROUP COULD NOT BE FOUND"

### Relevant logs and/or screenshots

![25](/uploads/084e44bc6720e34d0530ac7b7cbe8054/25.jpg)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Fix the double event firing in the queue runner

### Summary

Queue runners are double firing events registered via modules

### Steps to reproduce

Run a runner via the command line (the same way supervisord does). If you add logging to an event registered via the modules, it will fire twice 

### Platform information 

Backend

### What is the current *bug* behavior?

Events registered via modules fire twice

### What is the expected *correct* behavior?

Events registered via modules fire once



### Possible fixes

Both cli and QueueRunners instantiate minds. We need to refactor the event loaders to be callable from the outside so we can safely wireup events when we need too.

Story points: 10.0
(feat): Actions must update ElasticSearch

The "Actions" performed as a result of moderation by admins and mods must be modified to update ES correctly. For the immediate future, the updates will happen in parallel to the Cassandra updates. In the interim, ElasticSearch is the query source for all reports and Cassandra is the Truth.

In the near future, Cassandra will either be updated to accommodate the newer model or it will be discarded as the source of truth for reporting.

Story points: 15.0
(bug): help desk save button not highlighting after edit

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Edit help desk response, cannot save. 

### Steps to reproduce

As admin, go to edit a help desk answer. Save button does not illuminate.

### Platform information 

Chrome, Macbook air 


### What is the expected *correct* behavior?

Save button should illuminate once edit is made.

### Relevant logs and/or screenshots

array(10) { [0]=> string(4) "How " [1]=> string(7) "How do " [2]=> string(9) "How do I " [3]=> string(13) "How do I buy " [4]=> string(20) "How do I buy Ether? " [5]=> string(7) "Ether? " [6]=> string(11) "buy Ether? " [7]=> string(13) "I buy Ether? " [8]=> string(16) "do I buy Ether? " [9]=> string(20) "How do I buy Ether? " } {"status":"success","uuid":"46258a77-53bd-4498-9e9b-035f575a6656"}

Story points: 1.0
Images in comments are not working, when clicked, on destop and webapp browsers

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

When clicking through to view an image from a thread (https://www.minds.com/newsfeed/938949270826668032), it is coming up as a "post may not exist" error.  It works on the apps, but not on webapp or browser.

Image link e.g. https://www.minds.com/media/938988244965883904

### Steps to reproduce

Go to the chat in top link, scroll down and click the image.

### Platform information 

Windows 10, Chrome, Brave

iPhone SE, Safari

### What is the current *bug* behavior?

### What is the expected *correct* behavior?

Image should display as normal on all browsers/apps.

### Relevant logs and/or screenshots

![comment_image_2](/uploads/68a60fd549f6090fc4b7e4d6bfbae66e/comment_image_2.PNG)

![comment_image](/uploads/e45425ab2cd734f24f9c601b4e10e7ac/comment_image.PNG)

### Possible fixes

Story points: 2.0
(bug): Images Library Has Disappeared

### Summary

The image library that was once available on a channel's left sidebar, under the Bio, has disappeared; making it impossible to browse a channels uploaded images.

### Steps to reproduce

Open a channel page and scroll down to just below the channel's Bio, and on top of the Video library, and you wont see what was once there; the image library.

### Platform information 

Firefox 30.3.0 esr; Debian Stretch 9.6

### What is the current *bug* behavior?

The lack of a channels image libary.

### What is the expected *correct* behavior?

An image library should be available just below the Bio and above the video library on a users channel.

### Relevant logs and/or screenshots

![Selection_526](/uploads/4b530e5430dc576d03f9cbb118e1849a/Selection_526.png)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 5.0
(bug): group owners cannot delete a group unless there are no other members

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Group owners are unable to delete a group they own, unless the group has no other members.

### Steps to reproduce

1. Create a group or go to a group you own with 2+ members
2. Delete the group and confirm
3. Group does not get deleted

## Expected Behavior

Group owners should be able to delete a group they own at any time.

### Platform information 

Chrome, MacBook Air, iOS 10.14.1

## Logs 

![cannot_delete_a_group](/uploads/96f555be7b2e1bd95a6645d5b3cbad73/cannot_delete_a_group.mov)### What is the expected *correct* behavior?

Story points: 2.0
(bug): iOS push notification not being delivered

### Summary

No push notifications on iOS app. 

### Steps to reproduce

Enable all push notifications, use another channel to send yourself a notification. No push notification sent.

### Platform information

iPhone 7, iOS 12.1

### App version

3.1.2000

### What is the current *bug* behavior?

No push notifications.

### What is the expected *correct* behavior?

You should receive push notifications for all notifications you have selected in settings.

Story points: 5.0
(feat): Group converation reply notifications should load from offset

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

(bug): Popup notification of a reply to my comment in group conversation led to nowhere

### Steps to reproduce

(How one can reproduce the issue - this is very important)

reply to a comment in a group convo, tap on the popup desktop notif in the other account

### Platform information 

(Browser, device, system stats, screen size)

firefox, ubuntu

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

Should direct to exact location

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 5.0
(bug): group creation stalling with large banner

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

above

### Steps to reproduce

(How one can reproduce the issue - this is very important)

start a group and upload decently large banner

### Platform information 

(Browser, device, system stats, screen size)

chromebook

### What is the current *bug* behavior?

(What actually happens)

loads into infinity

### What is the expected *correct* behavior?

(What you should see instead)

works...

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 5.0
If a user replies to a comment, they should receive notifications for all replies to that comment

## Current behavior

If I make a level 2 comment reply, and someone else replies to that, it creates another level 2 comment and I do not receive a notification that someone replied to my comment.

## Intended Behavior

If I make any comment reply, I should receive notifications for ALL replies from other users on the comment that I replied to. You should not receive notifications for your own comments on replies.

## Example

1. Jack makes a post
2. Tom comments on the post (level 0) saying "Cool post"
3. Jack receives notification about the comment. 
4. Jack replies (level 1) to Tom's comment saying "Hey, thanks."
5. Tom receives notification about the comment.
6. Tom replies (level 2) to Jack's comment saying "Where did you see that"
7. Jack receives notification about the comment.
8. Jack replies (level 2) to Tom's comment saying "Arizona"
9. Tom receives notification about the comment.
10. Mark replies (level 2) to Jack's comment and says "I have been there before"
11. Jack and Tom receive notification about the comment.

Story points: 2.0
(feat): OnChain boost updates

OnChain Boost Update:

* [x] Boost max increased to 10,000 views - this should almost be completed per Ben

* [x] OnChain boosts to have an icon+text showing OnChain boost and a clickable link to the Etherscan boost transaction (mockup below)

* [ ] Users who boost OnChain 1 time get a badge icon for 7 days on profile (needs front end)

* [ ] Link OnChain boost button to Etherscan transaction page

* [ ] Update Boost prompt text and design

## New Boost Prompt

![Boost_Prompt](/uploads/5d3e11713db7d08b8a62879910fc05d0/Boost_Prompt.png)

## OnChain Boost Icon and Badge

![Screen_Shot_2019-04-02_at_12.55.24_PM](/uploads/78384a8e5c16ebd42deb4af757347c71/Screen_Shot_2019-04-02_at_12.55.24_PM.png)

Story points: 10.0
(bug): group moderators cannot delete messages in Conversations

### Summary

I am a group admin in the support group and I cannot delete messages in the Conversation tab. 

### Steps to reproduce

1. Create a group
2. Set a user to Admin 
3. Log in as Admin user
4. Try to delete a message in group conversation - no option

### Platform information 

Chrome, iOS, Macbook Air

### What is the expected *correct* behavior?

Group moderators, and Group Admins should be able to delete messages in Group Conversations

Story points: 5.0
(bug): Media is still accessible after deleting comment containing it

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

1. Navigate to a post.
2. Comment with an image.
3. Click on the image.
4. Get the image link.
5. Delete the post containing image.
6. Go to the image link.

### Platform information

HUAWEI (HUAWEI ANE-LX1) / Android 8.0.0

Environment: Laptop Core i7 7700HQ, Windows 10, Chrome browser

### What is the current *bug* behavior?

Media is still accessible after deleting comment containing it.

### What is the expected *correct* behavior?

Image should be deleted if the comment is deleted (user expectations).

### Relevant logs and/or screenshots

https://dashboard.ubertesters.com/uploads/8463/11810/issues/40/151802/data%20privacy.mp4

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
(bug)[front] Start a new group flow does not allow edit banner selection after initial selection

### Summary

Cannot change banner selection in initial flow to start a new group (walrus)

### Steps to reproduce

As you go thru start a new group flow, there is no way to edit banner after you upload the first time (in case you change your mind and want a different a banner) There is no way to edit the first selection and you need to exit the entire start a new group flow.
### Platform information 

chrome windows

### What is the current *bug* behavior?

After you upload your first banner selection, it is necessary to abort the entire flow and start over if you want to change banners. 

### What is the expected *correct* behavior?

Should be an edit button on the banner to try another

### Relevant logs and/or screenshots


### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 5.0
(bug): Banners not saving down, ditch carousels

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

Banners are not saving down on mobile or web for channels repeatedly. 

### Steps to reproduce

(How one can reproduce the issue - this is very important)

Upload a new banner, especially larger files

### Platform information 

(Browser, device, system stats, screen size)

chrome, firefox, android

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

saves down no issues

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)



### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 10.0
Newfeed tags not taking user's Open Option into account

### Summary

When a user has open content enabled, the tag newsfeed is not including content with a rating of 2


### Steps to reproduce

Set your Open and Explicit filters to on, so everything should be included

Ahem, look at this totally work related hash tag https://walrus.minds.com/newsfeed/tag/porn;ref=hashtag


### Platform information 

Mac, Chrome

### What is the current *bug* behavior?

You will not see anything inappropriate.

### What is the expected *correct* behavior?

You should see inappropriate content.


### Possible fixes

Include the user's content rating in repository look up so it passes in their preferences

Story points: 4.0
Create a kibana dashboard widget that analyzes the user retention metrics

With #100 and #101, we should now be able to create a kibana dashboard widget that queries elastic search and returns a break down of:

- New: Accounts less than the given time period old

- Core: Users who are active 75% of the time over a given period

- Casual: Users who are active to 25% of the time over a given period

- Cold: Users who are active 0% of the time over a given period.

- Resurrected: User who were Cold during the previous given period, but active this one

Story points: 5.0
(feat): create user centric index and sync runners

For a given time period, create an elastic search query that returns user activity

For a given user_guid, classify the user into one of four categories:

New: user whose account time stamp is less than 7 days old
Core: user whose has active actions for 75% of the days of the given time period
Casual: user who has active actions for 25% of the days of the given time period
Cold: user who has active actions for 0% of the given time period
Resurrected: user has at least 1 active action of the given time period compared to the previous span of the given time period

Story points: 5.0
(feat): improve notification and appeal system

## Goal: 
Meet requirements of Santa Clara Principles - https://newamericadotorg.s3.amazonaws.com/documents/Santa_Clara_Principles.pdf

## Specs:
All users should receive in-app notification when a piece of content, or their channel, receives any type of moderation. All users should be able to view these actions in the Reported Content section of their settings console. 

**Notification Triggers:**

- Content marked explicit = in-app notification and listed in reported content console
- Channel marked explicit = in-app notification and listed in reported content console
- Boost rejected = in-app notification and listed in reported content console
- Channel marked as spam = in-app notification and listed in reported content console
- Channel banned = email notification

**All moderation notifications should contain:**
- sufficient information to identify content in violation
- specific clause in terms that was violated
- how the content was flagged and actioned on 
- clear explanation of how to appeal the decision

**Appeal process:**
- reviewed by different people than who made the original decision
- grant user opportunity to provide additional information for review of appeal
- notification of the results of the appeal so user may understand decision

Story points: 30.0
(feat): group reports of the same reported content into one spot in the report queue

## Goals:
- Improve efficiency of report queue 
- Create process for community to contribute (longer term).

## Specs:
- If 50 users report the same post, consolidate reports into one slot in the queue rather than 50 spots.

This work covers the engine work required to return the data in the correct format, which now has multiple child user_reports per reported_entity

https://gitlab.com/minds/engine/merge_requests/83

Story points: 10.0
(bug)[front]: Wire transaction debits sender wallet even though transaction fails

### Summary

@john wiring 20 tokens to @howtostyle and the transaction failed several times on @howtostyle side because their wallet was not fully set up.  After helping @howtostyle set up their wallet, the transaction conmpletes, but @john wallet was debited for each failed attempt, but @howtostyle only credited once 

### Steps to reproduce

@howtostyle wallet was verified with a cell number but the subsequent steps aka "next" was not completed linking metamask and on chain, etc. @repeated wire attempts to @howtostyle from @john fail with error, but debited @john wallet for each failed attempt and @howtostyle only credited for one successful attempt after their wallet setup was completed fully. see screen shots of both wallets

### Platform information 

windows chrome

### What is the current *bug* behavior?

Wire sender is debited for all failed transactions, bit wire receiver is only credited for the successful transaction

### What is the expected *correct* behavior?

Error message should appear on sender side of the transaction "transaction failed because receivers wallet is not set up" also the sender should not be debited for failed transactions. Receiver should receive notif to set up their wallet in order to receive a wire transaction

### Relevant logs and/or screenshots

![token_23](/uploads/509c33620f8f669c2cc8bbf7e56651b5/token_23.PNG)
![token22](/uploads/ce644136b1762f3dde492983ca1dd32b/token22.PNG)
### Possible fixes

Story points: 3.0
(feat): De-activating, delete and ban actions should trigger cleanup process

* [x] Remove right-side from `friends` and `friendsof` table (inverse only)
* [x] Upon reactivation, resync left-side of `friends` and `friendsof` table
* [x] Ensure `elasticsearch` and `cockroachdb` are aware and trigger delete
* [ ] Add Queue runner in production

Story points: 15.0
Refactor RateLimits/Manager to use KeyValueLimiter instead of CLI Job

The 'legacy' `Core\Security\RateLimits\Manager` relies on a CLI job that reads from metrics. Unfortunately the metrics have a refresh latency of > 120s (for indexing performance gains). This makes a lot of these rate limits ineffective. 

We should refactor these to instead use the KeyValueLimiter that uses Redis and is real time.

Story points: 2.0
Add top filter to newsfeed

## Problem

The best content is frequently getting buried in the reverse chronological timeline. If you do not log in at the time someone posts something that gets good engagement, the chances are you will not scroll deep enough into your newsfeed to see it, therefore never seeing it.

Minds has a stance that they will remain committed to the reverse chronological feed by default to ensure creators reach 100% of their audience.

## Goal

Allow users to filter their newsfeed by top content to make sure they see the best content from the people they subscribe to. Keep reverse chronological newsfeed (latest feed) as the default option, but remember the feed that the user was last on for when they come back.

## Key Metrics

By exposing the best subscribed content to users in their newsfeed, there will be many benefits:

- Creators will receive more engagement
- Consumers will have more popular content in their feeds to keep them engaged
- The global trending feed will improve because subscribed content will get more engagement

Therefore, we should monitor the following KPI's to assess the success of this change:

- Retention
- Total votes, comments, reminds

## Design

Use Top/Latest filter design from search and discovery.

## Logic

To try and surface the best, most relevant content to a user in their newsfeed when they sort by Top:

1. Prioritize content from subscriptions who they engage with the most frequently that they have not yet engaged with (ex: jack very frequently engages with bill's posts, therefore prioritize recent posts from bill that jack has not yet engaged with). 

2. Rank subscribed content based on highest engagement score in the past 72 hours. The algorithm would be: (Unique Votes * 1) + (Unique Comments * 2) + (Unique Reminds * 4). We could also just mimic the algorithm used in discovery currently.

3. To ensure that a single popular user does not take every spot in your top feed, only allow a single user to take up one slot for every 12 available slots.

4. To ensure that the top feed does not get stale throughout the course of the day, prioritize posts that the user has not already engaged with in the top feed. 


## Other potential factors

- whether a user has seen a post already or not


## Navigation

Aside from the Top/Latest filter on top of the newsfeed, we should do everything we can to encourage users to visit the Top newsfeed as this will be the best content for them to see.

To encourage this navigation, we should insert a "Top Post" entity that is similar to the "Boosted Post" entities in the newsfeed. Every X posts, insert a "Top Post" that a user has not engaged with to ensure more visibility on the best posts in their newsfeed.

Story points: 5.0
Timestamp filter logic on subscribed feed may be breaking the mobile portrait feed



### Summary
The mobile's portrait feed is filtering the posts of the latest 48hs using the to_timestamp filter parameter (api/v2/feeds/subscribed/activities)

But this filter doesn't seem to be working anymore. Maybe because of the changes of this commit https://gitlab.com/minds/engine/-/commit/fb8c477087447591c0b6285b17338258e52db298

Story points: 2.0