首页
All Posts

一人公司 的粗略想法(六)

一人公司 的粗略想法(六)

反垃圾审核与社区运营

版本:2026-04-26

为什么这是核心模块

论坛成败不只取决于技术。一个论坛最容易死于三件事:

  • 没有人发高质量内容。
  • 垃圾内容和广告淹没正常讨论。
  • 社区氛围劣化,早期优质用户离开。

所以反垃圾、审核和运营不是上线后的“运营细节”,而是产品系统的一部分。第一版就要做最小可用治理。

分层防线

推荐五层防线:

访问门槛
  -> 发帖限频
  -> 内容规则
  -> 自动风险评分
  -> 人工审核和社区举报

不要指望单一手段解决垃圾内容。邀请码、限频、审核队列、举报、封禁要组合使用。

访问门槛

早期建议开启:

  • 邀请制。
  • 候补名单。
  • 邮箱/OAuth 登录。
  • 新用户发帖限制。

新用户默认:

trust_level = 0
每日主题数:1-2
每日回复数:5-10
禁止图片上传或限制 1 张
链接数量限制
首帖可进入 pending 审核

稳定用户逐步放宽:

trust_level = 1 正常发帖
trust_level = 2 更高限额
trust_level = 3 可协助标记垃圾内容

速率限制

需要限制的动作:

  • 登录尝试。
  • 邀请码兑换。
  • 创建主题。
  • 回复。
  • 上传附件。
  • 举报。
  • 搜索。
  • 私密/付费板块访问异常。

实现选择:

  • Upstash Redis:推荐,适合滑动窗口、短期锁、IP/用户组合限频。
  • Postgres 计数表:低频动作可用。
  • Vercel WAF/Bot 能力:后续增强。

限频维度:

user_id
ip
email domain
user agent
board_id
action

错误返回不要暴露太多细节。例如邀请码失败时,不要告诉用户“这个码存在但不是你的邮箱”。

内容规则

第一版要明确规则,不要等冲突出现才补:

  • 禁止垃圾广告。
  • 禁止人身攻击。
  • 禁止违法内容。
  • 禁止灌水刷屏。
  • 禁止未授权推广。
  • 付费板块内容不能随意外传。

规则要能落到系统动作:

  • 隐藏。
  • 锁帖。
  • 删除。
  • 警告。
  • 暂停发帖。
  • 封禁。

自动风险评分

第一版不用上复杂 AI 审核。先用规则评分:

新账号 +2
首次发帖 +2
包含多个链接 +3
包含短链 +3
重复内容 +4
高频发帖 +4
命中 blocklist +5
被多人举报 +5
历史被处理过 +3

处理策略:

score < 3      直接发布
3 <= score < 7 发布但进入观察
7 <= score < 10 pending 审核
score >= 10   拒绝或隐藏

这些阈值应该放在配置里,便于调整。低频更新的规则可以放 Edge Config;高频用户状态和计数不要放 Edge Config。

审核队列

moderation_queue
  id
  target_type             thread | post | user
  target_id
  reason
  risk_score
  status                  pending | approved | rejected | escalated
  assigned_to nullable
  created_at
  resolved_at

后台需要支持:

  • 查看待审核内容。
  • 一键批准。
  • 隐藏/删除。
  • 锁定主题。
  • 暂停用户。
  • 查看用户历史发帖和举报。
  • 批量处理明显垃圾。

每个审核动作写 moderation_actionsaudit_events

举报机制

举报流程:

用户举报 -> 写 moderation_reports -> 增加 target report_count -> 达阈值自动进入 queue -> 版主处理

反滥用:

  • 新用户每日举报数限制。
  • 恶意举报可降低 trust level。
  • 同一用户对同一内容只能举报一次。

举报原因要结构化:

spam
abuse
off_topic
illegal
privacy
other

结构化原因方便统计和自动化。

封禁与限制

用户处罚不要只有“永久封禁”。

状态:

active
limited        限制发帖/上传
suspended      暂停一段时间
banned         永久封禁

限制项:

can_post
can_reply
can_upload
can_react
can_report

这样可以对不同问题采取不同处理。例如广告号直接 ban,情绪冲突可以 suspend 3 天。

通知和留存

论坛需要通知,但不要第一版轰炸用户。

通知类型:

  • 回复我的主题。
  • 有人提及我。
  • 我关注的主题有新回复。
  • 我的帖子被版主处理。
  • 我关注的板块有精选内容。
  • 会员状态变化。

站内通知实时写数据库,邮件通知异步发送。

邮件策略:

  • 默认发送重要通知。
  • 摘要邮件每周一次。
  • 用户可关闭大部分邮件。
  • 退订链接必须有效。

队列任务:

post_published -> fanout notifications
daily/weekly cron -> digest email
moderation_action -> notify author
billing_event -> notify user

社区冷启动

论坛的冷启动不是“上线等人来”。需要人为种子内容。

建议上线前准备:

  • 20-30 个高质量主题。
  • 5-10 个可讨论问题。
  • 3-5 篇长文/指南。
  • 1 篇社区规则。
  • 1 篇“为什么创建这个论坛”。
  • 1 个持续更新的资源帖。

上线初期节奏:

第 1 周:邀请 10-20 个目标用户,只求高质量反馈
第 2 周:开放候补名单,手动筛选
第 3 周:发布第一份周报/精选
第 4 周:测试会员或 Founder 支持

早期你本人要像“首席版主 + 首席内容编辑”一样工作。论坛不可能只靠技术自动生长。

内容运营指标

不要只看注册数。第一阶段看这些:

  • 每周新增高质量主题数。
  • 新主题 24 小时内有回复的比例。
  • 零回复主题数量。
  • 活跃发帖用户数。
  • 用户第二周回访率。
  • 举报处理平均时间。
  • 垃圾内容拦截率。
  • 新用户从注册到首次发帖转化率。
  • 会员转化或付费意愿反馈。

论坛的关键健康指标是“高质量互动密度”,不是总用户数。

版主机制

第一版可以只有你一个管理员。但数据模型要支持版主:

board_moderators
  board_id
  user_id
  permissions jsonb
  created_at

版主权限:

  • 处理举报。
  • 隐藏帖子。
  • 锁定主题。
  • 移动主题。
  • 编辑标签。

封禁用户、调整付费权益、删除大量内容等高危动作只给 admin。

规则透明度

用户需要知道内容为什么被处理。

建议:

  • 隐藏帖子给作者显示原因。
  • 被暂停用户显示到期时间。
  • 管理员处理动作可有公开说明。
  • 社区规则固定置顶。

透明度能减少用户对“黑箱审核”的不信任。

后续 AI 审核

AI 审核可以后置,不是第一版必需。

适合 AI 的场景:

  • 垃圾广告分类。
  • 违规风险提示。
  • 长帖摘要。
  • 重复问题检测。
  • 标题质量建议。

但 AI 审核必须有人工复核路径,不能直接删除高价值争议内容。所有 AI 判定要写 moderation_events.metadata,便于回溯。