This one relates to T266446: Add Link engineering: Provide a mechanism for storing data about which link recommendations were rejected by the user in that T266446 also is concerned with what happens to "no" or "skip" actions.
Unlike T266446, here we want to specifically account for cases where a user might review (just "reject"? or also "skip" actions?) all link recommendations for an article. The user hasn't made an edit, but we will want to record this as a contribution on the user's impact module.
Some ideas:
- store some structured data in a user preference.
- retain the rows in the MySQL table (never delete) used for caching link recommendations, and have a new table where we store information about what actions a user took for a particular set of recommendations
- create a log type and log to Special:Log. (The UX would have to be clear to the user that even though they didn't make an edit, their activity would still be visible publicly to other users.)
Note: from the design perspective, we are in favor of this information being public. We'll need to include some kind of disclosure in the user experience telling the user that their "no" answers will be available publicly for others to see.