politics
Welcome to the discussion of US Politics!
Rules:
- Post only links to articles, Title must fairly describe link contents. If your title differs from the site’s, it should only be to add context or be more descriptive. Do not post entire articles in the body or in the comments.
Links must be to the original source, not an aggregator like Google Amp, MSN, or Yahoo.
Example:
- Articles must be relevant to politics. Links must be to quality and original content. Articles should be worth reading. Clickbait, stub articles, and rehosted or stolen content are not allowed. Check your source for Reliability and Bias here.
- Be civil, No violations of TOS. It’s OK to say the subject of an article is behaving like a (pejorative, pejorative). It’s NOT OK to say another USER is (pejorative). Strong language is fine, just not directed at other members. Engage in good-faith and with respect! This includes accusing another user of being a bot or paid actor. Trolling is uncivil and is grounds for removal and/or a community ban.
- No memes, trolling, or low-effort comments. Reposts, misinformation, off-topic, trolling, or offensive. Similarly, if you see posts along these lines, do not engage. Report them, block them, and live a happier life than they do. We see too many slapfights that boil down to "Mom! He's bugging me!" and "I'm not touching you!" Going forward, slapfights will result in removed comments and temp bans to cool off.
- Vote based on comment quality, not agreement. This community aims to foster discussion; please reward people for putting effort into articulating their viewpoint, even if you disagree with it.
- No hate speech, slurs, celebrating death, advocating violence, or abusive language. This will result in a ban. Usernames containing racist, or inappropriate slurs will be banned without warning
We ask that the users report any comment or post that violate the rules, to use critical thinking when reading, posting or commenting. Users that post off-topic spam, advocate violence, have multiple comments or posts removed, weaponize reports or violate the code of conduct will be banned.
All posts and comments will be reviewed on a case-by-case basis. This means that some content that violates the rules may be allowed, while other content that does not violate the rules may be removed. The moderators retain the right to remove any content and ban users.
That's all the rules!
Civic Links
• Congressional Awards Program
• Library of Congress Legislative Resources
• U.S. House of Representatives
Partnered Communities:
• News
view the rest of the comments
Yeah, reddit had something like that baked in, I'm not sure how lemmy could implement it.
"You are doing that too much, try again later."
It seemed to be tied to both the age of the account and the karma of the account. It varies from subreddit to subreddit.
There also seemed to be a difference if you were subscribed to the community or not.
But then we're comparing something relatively new (lemmy) to an established platform with over a decade of development too.
It's easy enough to limit for a local user posting. I guess the tricky part is what if this comes in through federation from an instance that doesn't support limiting. Probably just refuse the CREATE request with an appropriate error code (400?) and message (the "try again later one") and hope the user's home instance will report that back to the user.
Talked about this with the admins and the suggestion is to use some kind of automod, but implementing something like that is a little beyond my ability.
Ah - I can see why they'd prefer an automod (they'd not have to worry about configuring or changing the server software in that case).
Unfortunately, as far I can tell, none of the existing automods out there support deleting posts by a rate limit. It's not impossible to add this functionality, but it'd take a bit of work and time from a dev.
For example, I think for lemmymodbot one can modify the User Processor at https://github.com/noenfugler/LemmyModBot/blob/master/lemmymodbot/processors/user_processor.py to accomplish this.
Under line 8, add this line to create a user/seen hash
user_post_seen_hash = {}
and replace the entire execute function with something like this,
if content.actor_id in self.user_post_seen_hash:
if int(datetime.now().timestamp * 1000) - int(user_post_seen_hash[content.actor_id].timestamp * 1000) <= 300 * 1000:
handle.remove_thing("Posting too frequently, take a break")
self.user_post_seen_hash[content.actor_id] = datetime.now()
(Oh, and at the top of the file, also add above the first line,
from datetime import datetime, timedelta
)
But for lemmy.world (even if just looking at /m/politics) it would likely OOM from the in-memory hash due to the volume of users, so it'd need to be extended leverage the database for the lookup.
Something similar could be implemented on top of threativore, I think around this line might be the easiest place to implement the check of the username/timestamp, https://github.com/db0/threativore/blob/main/threativore/threativore.py#L285
Edit: Forgot to add, all the above code changes are completely untested by me, use at your own risk, etc.