#4917 - Redesign how points work, for greater transparency

Identifier #4917
Issue type Feature request or suggestion
Title Redesign how points work, for greater transparency
Status Completed
Tags

Roadmap: v11 (custom)

Handling member PDStig
Addon points
Description It's always been the case that points are calculated on the fly, from a number of variables. Sometimes this is via hidden CPFs, sometimes it's just by counting stuff in the database or looking at the passage of time.

This is for 2 reasons:
1) On non-Conversr forum drivers we cannot track when new posts happen, or new members join
2) It would be very tedious to list out every single forum post etc someone makes on the ledger

I think we could do better though. I think it's important for 2 reasons:
i) For accountability we should be able to show EXACTLY how points are earned, not relying on tallies
ii) Having point totals fluctuate as configuration options are changes is not good when people can give points to others, you could end up negative through no fault of your own

We could consider changing this by introducing a couple of new approaches:
a) Assign points for forum posts, and to new members, via nightly Cron hook checks to see what's happened
b) Have a concept of a 'low_info' transaction. By default 'low_info' transactions would all be folded together when looking at the ledger. There'd be a toggle to show the full detail.

Also, we could implement a feature to download a CSV of the ledger for a particular user, or for all users.
Document this as a way of the system providing accountability to users. Also document that the points RSS feed does the same.

Making these changes may allow us to calculate points directly from the ledger. We'd import any CPFs from v10 as legacy ledger records, then delete them.
This then allows leaderboard generation to be far more efficient, which is another big advantage. Alter that so it can pull stuff via a simple ORDER BY query and not have to read in every member.
Steps to reproduce

Funded? No
The system will post a comment when this issue is modified (e.g., status changes). To be notified of this, click "Enable comment notifications".

Rating

Unrated