r/ModsBr • u/KrasterII • 9h ago
🎉 Celebração/Vitória Peguei um sub abandonado no r/redditrequest e construí um bot próprio pra ele
Peguei o r/Opiniao pelo r/redditrequest esse mês. Estava abandonado, zero posts, e a ideia era transformar num hub de opinião: em vez de escolher entre vários subs de opinião espalhados, você posta num lugar só e a comunidade classifica votando nos comentários O/P popular, O/B burra, O/E esperta, O/C chata. Um bot apura e aplica a flair vencedora no post.
Como não achei nada pronto que fizesse isso, escrevi um app em Devvit. Aproveitando que aqui é sub de mod, deixo três coisas que descobri e que podem te poupar tempo se você for mexer com bot:
1. Maioria absoluta não funciona com mais de duas opções. Meu primeiro instinto foi "vence quem passar de 50%". Com quatro categorias, uma votação de 40/30/20/10 nunca passa de 50% quase nenhum post receberia flair. Troquei por pluralidade (vence quem tiver mais) com um quórum mínimo de votos. Se você for fazer votação com mais de duas opções, pense nisso antes de escrever o código.
2. Comentário que o AutoMod segura na fila NÃO dispara o gatilho de comentário novo. Como filtro contas com menos de 14 dias, o voto de todo usuário novo simplesmente não contava e continuava não contando mesmo depois de eu aprovar o comentário. Só resolveu quando passei a escutar também o evento de ação de moderação (approvecomment) e registrar o voto na hora da aprovação. Se você tem bot que reage a comentário e AutoMod em modo filter, provavelmente está perdendo eventos sem saber.
3. Cuidado com regex de menção a usuário em português. O padrão comum /?u/\w+ captura o "u/" de dentro de palavra: seu/sua, teu/tua e meu/minha iam todos parar na minha fila de moderação. Basta exigir que não venha letra antes ((?<![A-Za-z0-9])) que resolve. Testei no Python, que é o motor do AutoMod.
O sub ainda está no comecinho, recém-aberto ao público. Se alguém quiser dar uma olhada e mandar crítica da mecânica, das regras, do que for, eu agradeço. E se tiver dúvida sobre Devvit, pode perguntar que respondo o que eu souber.