One of the things we struggle with on woof.group is un-actionable reports. For various reasons, most of the reports we handle are for posts that are either appropriately content-warned or don’t require a content warning under our content policy–things like faces, butts, and shirtlessness. We can choose to ignore reports from a domain, but we’d rather not do that: it means we might miss out on important reports that require moderator action. We can also talk to remote instance administrators and ask them to talk to their users about not sending copies of reports to the remote instance if they don’t know what the remote instance policy is, but that’s time consuming, and we only want to do it if there’s an ongoing problem.
I finally broke down and dug around in the data model to figure out how to get statistics on this. If you’re a Mastodon admin and you’d like to figure out which domains send you the most non-actionable reports, you can run this at rails console
:
# Map of domains to [action, no-action] counts
stats = Report.all.reduce({}) do |stats, r|
domain = r.account.domain
domain_stats = stats[domain] || [0, 0]
action = r.history.any? do |a|
# If you took action, there'd be a Status or Account target_type
a.target_type != 'Report'
end
if action
domain_stats[0] += 1
else
domain_stats[1] += 1
end
stats[domain] = domain_stats
stats
end
# Top 20 domains, sorted by descending no-action count
stats.sort_by do |k, stats|
stats[1]
end.reverse.take(20)
For example:
[[nil, [77, 65] ; nil is your local instance
["foo.social", [3, 52]],
["mastodon.oh.my.gosh", [40, 24]],
...
Chiming in somewhere, but will you publish the findings as part of maybe yearly moderation transparency reports for the instance (w/o disclosing which instance for privacy reasons)?