chore: initial commit — import worldmodel workspace (plans/, research/)
This commit is contained in:
@@ -0,0 +1,491 @@
|
||||
# CrowdRoom · 治理与社区规则(v0.1)
|
||||
|
||||
> 本章承接 [`00_overview.md`](00_overview.md) §8 风险 RK-3(UGC 审核),并对 [`04_web_app_plan.md`](04_web_app_plan.md) §13 移交的治理类契约 **P-W-3 ~ P-W-6** 逐一拍板。隐私类契约(P-1 ~ P-6 与 P-W-1/2/7)见 [`09_privacy.md`](09_privacy.md)。
|
||||
>
|
||||
> 本章不重复 [`02_api_contract.md`](02_api_contract.md) §2 E-14 举报端点的请求/响应格式,所有「实现位置」均回指既有章节。
|
||||
>
|
||||
> **本章核心论断**:CrowdRoom 治理走「**默认透明 + 自动隐藏 + 人工兜底**」三件套,把审核成本压到 MVP 阶段 1 个兼职 reviewer 可承担的水位;最尖锐的「父房间被作者硬删后 Remix 何去何从」冲突,本章以「**硬删时父几何快照转移到 Remix**」拍板,保护 Remixer 既得权。
|
||||
|
||||
---
|
||||
|
||||
## 1. 治理总原则
|
||||
|
||||
| # | 原则 | 一句话定义 | 落地证据 |
|
||||
|---|------|-----------|---------|
|
||||
| **GR-1** | **默认透明** | 所有治理决策(隐藏、限流、封禁)必须给被处罚用户一份**结构化通知**:违反哪条规则、谁判定、何时生效、如何申诉。不允许「悄悄降权」。 | §8 申诉流程 + §6 处罚阶梯 |
|
||||
| **GR-2** | **社区自治优先,平台兜底** | 优先用「自动审核 + 用户举报 + 信任分」放大社区自我治理能力;人工 reviewer 只在自动判定失败或申诉时介入。 | §2 审核流程图 + §3 团队规模 |
|
||||
| **GR-3** | **升级机制清晰** | 处罚必须分级(警告 → 限流 → 禁言 → 封禁),跳级处罚仅允许在「严重违规」白名单内(NSFW 含未成年 / 暴力威胁等)。 | §6 处罚阶梯表 |
|
||||
| **GR-4** | **创作者既得权 vs 原作者撤回权的平衡** | 已发表 Remix 是 Remixer 的独立创作产物,原作者的「撤回权」止于「下架自己的原作品 + 自动转移最后一个公开快照到 Remix」,不能让 Remix 跟着消失。 | §4 P-W-3 决策 + §7 创作者权益 |
|
||||
|
||||
> GR-4 是本章最具争议的拍板项。它的本质是:CrowdRoom 把房间视作「**公共创作品**」而非「**作者私有数字资产**」——一旦作者把房间设为 `public` 并被 Remix 采纳,作者保留**作品归属权**与**下架原作权**,但放弃了**让所有衍生作品同步消失的权力**。这与 GitHub fork 模型一致,与小红书「删笔记 = 删评论」不一致——CrowdRoom 站队 GitHub。
|
||||
|
||||
---
|
||||
|
||||
## 2. UGC 内容审核流程
|
||||
|
||||
### 2.1 上传 / Remix 发布的自动审核
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
autonumber
|
||||
participant U as 用户
|
||||
participant App as iOS App / Web
|
||||
participant E as Edge Function
|
||||
participant W as Transcode Worker
|
||||
participant Mod as Auto Moderator
|
||||
participant Q as 人工 review 队列
|
||||
participant R as Reviewer
|
||||
|
||||
U->>App: 提交上传 或 Publish Remix
|
||||
App->>E: POST upload-complete 或 remix-publish
|
||||
E->>W: enqueue 转码
|
||||
W->>W: 转码完成 生成 thumbnail webp
|
||||
W->>Mod: POST 自动审核 thumbnail title description tags
|
||||
Mod->>Mod: NSFW 图像分类器对 thumbnail
|
||||
Mod->>Mod: 敏感词匹配 title description tags
|
||||
alt 全部通过
|
||||
Mod-->>E: pass
|
||||
E->>App: status ready 房间可见
|
||||
else NSFW 命中 且 score 大于等于 0 9
|
||||
Mod-->>E: hard_block
|
||||
E->>App: 房间被 自动下架 通知作者 + 工单进入严重违规队列
|
||||
else 任一信号低置信 0 5 0 9
|
||||
Mod-->>Q: 进入人工 review 队列
|
||||
E->>App: status ready 但 标 under_review 仅作者可见
|
||||
R->>Q: 24 小时内 review
|
||||
R->>E: PATCH approve 或 reject
|
||||
E->>App: 公开 或 永久下架并通知
|
||||
end
|
||||
```
|
||||
|
||||
| 自动信号 | 工具 | 阈值 | 触发动作 |
|
||||
|---------|------|------|---------|
|
||||
| NSFW 图像分类 | NSFWJS(开源 mobilenet 模型,跑在 Edge 上 cold start 1–2 s) | `score >= 0.9` | **硬下架**(无需人工) |
|
||||
| NSFW 图像分类 | 同上 | `0.5 <= score < 0.9` | 进人工队列 |
|
||||
| 敏感词(中文 + 英文) | [sensitive-word](https://github.com/houbb/sensitive-word) DFA 词库 + 自维护补丁(政治、暴恐、毒品) | 命中任一 | 进人工队列;命中「儿童相关 + NSFW 词」立即硬下架 |
|
||||
| 标签数 > 8 | Edge Function 校验 | 直接拒收(业务错误码 `INVALID_TAGS`) |
|
||||
| 重复内容(与现有公开房间 SHA256 一致) | Worker 在转码后比对 `canonical.glb` 哈希 | 命中 | 标 `duplicate_of` 字段(不下架,但发现页降权) |
|
||||
|
||||
### 2.2 用户举报的处理流程
|
||||
|
||||
```mermaid
|
||||
stateDiagram-v2
|
||||
[*] --> Visible: 内容已发布
|
||||
Visible --> Visible: 0 1 个举报 不动作
|
||||
Visible --> Hidden: 3 个独立举报 自动隐藏
|
||||
Visible --> HardDown: 严重违规白名单 立即下架
|
||||
Hidden --> Reviewing: 自动入人工队列
|
||||
Reviewing --> Visible: Reviewer 判 误报 恢复
|
||||
Reviewing --> HardDown: Reviewer 判 违规 永久下架
|
||||
HardDown --> Appealing: 作者发起申诉
|
||||
Appealing --> HardDown: 申诉驳回 终审
|
||||
Appealing --> Visible: 申诉成立 恢复
|
||||
HardDown --> [*]: 30 天后 数据进入注销硬删流
|
||||
```
|
||||
|
||||
**关键决策点**:
|
||||
|
||||
| 决策点 | 拍板 | 理由 |
|
||||
|--------|------|------|
|
||||
| 自动隐藏阈值 | **3 个独立举报**(同 user_id 重复举报只算 1 次;同 IP 24h 内多次只算 1 次) | 行业经验值(Reddit/Discord 均为 3–5),低于 3 易被恶意 brigading,高于 5 反应过慢 |
|
||||
| 「严重违规白名单」 | 儿童不适内容 / 暴恐威胁 / 实名隐私曝光 / 仿冒平台或他人账号 | 这 4 类一经举报立即下架,绕过 3 次阈值——降低司法风险 |
|
||||
| 自动隐藏期内的可见性 | 作者本人可见(标红「内容已暂时隐藏」),其他用户不可见 | GR-1 透明原则;让作者知情而非被静默处理 |
|
||||
| 人工 SLA | **24 小时**(从工单进队列到 reviewer 判定) | 与 §3 团队规模匹配;超时则自动恢复显示 + 工单升级到 owner-team |
|
||||
| 申诉窗口 | 下架后 14 天内可申诉 1 次 | 给冷静期;超 14 天进入终审归档 |
|
||||
|
||||
### 2.3 评论与用户层面的处理
|
||||
|
||||
| 对象 | 自动信号 | 处罚 |
|
||||
|------|---------|------|
|
||||
| 评论(`comments` 表) | 敏感词命中 / 长度异常(< 2 或 > 1000 已数据库约束)/ 30 秒内 > 3 条 | 自动隐藏 + 作者收警告(首次) |
|
||||
| 用户档案(handle / bio) | handle 含敏感词或仿冒平台命名(如 `admin`、`crowdroom_official`) | 注册时直接拒;事后发现走人工下架 + 强制改名 |
|
||||
| 用户行为 | 1 小时内被 ≥ 5 人举报且分散在 ≥ 3 个内容上 | 触发账号级人工 review(不立即处罚,只是把工单优先级提升到 P0) |
|
||||
|
||||
---
|
||||
|
||||
## 3. 审核团队规模与 SLA 预算
|
||||
|
||||
### 3.1 MVP 阶段(8 周窗口)
|
||||
|
||||
| 角色 | 配置 | 工时预算 | 工具 |
|
||||
|------|------|---------|------|
|
||||
| **兼职 Reviewer** ×1 | 项目组成员轮值 | 每日 2 小时(约工单 30–50 条/日上限) | Supabase Studio + 内部 Next.js Admin 页(`/admin/reports`,仅 owner-team 可登) |
|
||||
| **Owner-team 终审委员会** | 项目方 2 人 | 每周 1 小时 round-up | 同上 |
|
||||
| **DPO(兼隐私事件)** | 1 人 | `privacy@crowdroom.app` 监控 | 邮箱 + Notion |
|
||||
|
||||
**SLA**:
|
||||
|
||||
| 类目 | 首响应 | 处置完成 |
|
||||
|------|--------|---------|
|
||||
| 普通举报 | 24 h | 48 h |
|
||||
| 严重违规(白名单) | 自动下架即时 | 人工复核 12 h |
|
||||
| 隐私事件(DPO) | 72 h | 视个案 |
|
||||
| 申诉 | 5 工作日 | 14 工作日 |
|
||||
|
||||
### 3.2 P1 阶段(DAU > 5 000 起)
|
||||
|
||||
- 引入「**信任分 + 志愿者审核团**」:
|
||||
- 用户初始信任分 50;每次成功举报(被 reviewer 判定为有效)+5;每次被举报且判定有效 −20;满 100 分可申请加入「志愿者审核团」
|
||||
- 志愿者投票多数(5 选 3 通过)等价于 1 个 reviewer 判定,可绕过 24 h SLA
|
||||
- 信任分公开(用户主页可展示徽章),但具体数值仅自己可见
|
||||
- 引入「**自动学习敏感词补丁**」:reviewer 拒绝某关键词 ≥ 5 次后自动加入候选库,等待 owner-team 确认
|
||||
|
||||
### 3.3 P2 阶段(DAU > 50 000)
|
||||
|
||||
- 全职 Trust & Safety 团队 ≥ 2 人
|
||||
- 接入第三方审核服务(如 Hive Moderation / Microsoft Content Moderator)做兜底
|
||||
- DPIA 评估(见 [`09_privacy.md`](09_privacy.md) §6.2 C-P2-1)
|
||||
|
||||
---
|
||||
|
||||
## 4. Web 移交契约(P-W-3 ~ P-W-6)逐条决策
|
||||
|
||||
### P-W-3 — 父房间硬删后 Remix 的继承策略
|
||||
|
||||
> **决策**:✅ **父房间硬删时,平台自动把父房间「最后一个 `ready` 公开版本」的几何快照(`canonical.glb` + `layer_manifest.json` + `redactions[]`)转移到引用该版本的所有公开 Remix 的独立目录下;Remix 继续可见,但署名变为「fork from former user」**。这是 GR-4 的最尖锐落地点。
|
||||
>
|
||||
> 具体规则:
|
||||
>
|
||||
> | 父房间动作 | 父几何 | 已发表公开 Remix(`is_public=true`) | 草稿 Remix(`is_public=false`) |
|
||||
> |-----------|--------|------------------------------------|-------------------------------|
|
||||
> | **作者「设为私有」** | 私有 bucket 保留 | 继续渲染(公共 bucket 缓存仍有效);但 `/r/{parent_id}` 跳父房间会 401 | 草稿编辑器抓 `REMIX_PARENT_DELETED` → 提示用户「另存独立副本」 |
|
||||
> | **作者「软删除」**(默认删除按钮) | 标 `deleted_at`,30 天保留 | 同上 + 父名称显示为「Former room」+ 跳链 disabled | 同上 |
|
||||
> | **作者「立即硬删」**(隐藏的高级选项) | **触发快照转移**:把父 `canonical.glb / layer_manifest.json / redactions[]` 复制到 `public/remix-fallbacks/{parent_room_id}/`,所有引用该父版本的 `remixes` 行 `parent_snapshot_path` 字段指向新路径;之后父原路径硬删 | 继续渲染,URL 不变;详情页顶部显示「原始作者已注销/移除 · 此版本由 CrowdRoom 保留作为 fork 基础」;署名行原作者变为「Former CrowdRoom user」 | 同上(独立副本) |
|
||||
> | **账号注销 T+30 硬删**([`09_privacy.md`](09_privacy.md) §4 P-4) | 同「立即硬删」分支 | 同上 | 同上 |
|
||||
>
|
||||
> **理由**:
|
||||
>
|
||||
> 1. **Remixer 既得权**:Remix 一经公开,就是 Remixer 的独立创作产物(含 overlay + 选择 + 描述),让父作者「一键带走全社区的衍生作品」违反 GR-4。GitHub fork、Tumblr reblog、Twitter retweet 在原帖删除后均保留衍生内容,CrowdRoom 站队这一行业惯例。
|
||||
> 2. **原作者的"展示完毕"尊严**:原作者已经把作品公开过、被赞过、被 Remix 过,社会语义上他/她已经「获得了发表的尊严」,删除原作时主要诉求是「我不想继续署名」而非「让所有衍生消失」——后者属于过度索权。署名替换为「Former CrowdRoom user」即满足前者。
|
||||
> 3. **存储成本可控**:单 Remix 复制 5 MB `canonical.glb` + 50 KB manifest,假设 MVP 期 1 万房间 × 平均 0.3 个 Remix × 5 MB ≈ 15 GB,Supabase Storage 月成本 < $5。
|
||||
> 4. **法律风险**:通过 ToS 第 4 章「内容授权」条款(§7 创作者权益)让用户在上传时签署 CC BY-NC 4.0 授权,允许平台在原账号注销后继续承载衍生作品。这条 ToS 条款必须在 [`09_privacy.md`](09_privacy.md) §6 C-2 同步落地。
|
||||
> 5. **隐私冲突**:父房间含 `redactions[]` 含被脱敏的人脸 bbox——快照中**只**复制 `canonical.glb`(已模糊)与 `layer_manifest.json`,**不**复制 `redactions[]` 表行(避免在原作者注销后还保留其脱敏审计数据)。这是隐私 P-2 + 治理 P-W-3 的边界对齐。
|
||||
>
|
||||
> **如何告知用户**:iOS App 与 Web 端的「删除房间」按钮旁固定 warning:「该房间有 N 个公开 Remix。删除后这些 Remix 仍会保留,但你的署名会被移除。」用户必须勾选确认才可继续。
|
||||
>
|
||||
> **实现位置**:
|
||||
> - [`01_data_schema.md`](01_data_schema.md) §3.6 `remixes` 表追加 `parent_snapshot_path TEXT NULL` 字段(在 v0.2 schema 中补)
|
||||
> - [`02_api_contract.md`](02_api_contract.md) 新增 Edge Function `room-delete-with-snapshot`(v0.2 补 E-16,逻辑:复制快照 → 更新 remixes 行 → 删父)
|
||||
> - [`04_web_app_plan.md`](04_web_app_plan.md) §7.2 已抓 `REMIX_PARENT_DELETED`,文案与本决策对齐
|
||||
> - 本章 §7 创作者权益 + ToS 4 章「内容授权」
|
||||
|
||||
### P-W-4 — 公共资产库协议白名单
|
||||
|
||||
> **决策**:✅ **MVP 全 CC0(无署名要求);P1 开放 CC-BY 4.0(要求 attribution);CC-BY-NC / CC-BY-SA / 付费素材推到 P2**。
|
||||
>
|
||||
> 具体规则:
|
||||
>
|
||||
> | 协议 | MVP | P1(DAU > 5 000) | P2 |
|
||||
> |------|-----|------------------|-----|
|
||||
> | **CC0**(公共领域) | ✅ 默认 | ✅ | ✅ |
|
||||
> | **CC-BY 4.0**(要求署名) | ❌ | ✅ 引入;Remix 编辑器自动追加 `attribution.json` 到 overlay;详情页展示「素材来源」区 | ✅ |
|
||||
> | **CC-BY-SA**(同等共享) | ❌ | ❌ 与本平台 CC BY-NC 默认协议冲突,永不接 | ❌ |
|
||||
> | **CC-BY-NC**(非商业) | ❌ | ❌(CrowdRoom 本身默认 CC BY-NC,再加一层 NC 会让 Remix 商业化路径完全堵死) | 视商业模型再议 |
|
||||
> | **付费素材 / 创作者上传素材** | ❌ | ❌ | P2 引入「素材市场」+ 分成模型 |
|
||||
>
|
||||
> **资产入库审核流程**(即便都是 CC0):
|
||||
>
|
||||
> 1. 运营/素材管理员通过内部 Admin 页批量导入(来源:Poly Pizza、ambientCG、Polyhaven,全为 CC0)
|
||||
> 2. 自动跑 NSFW 分类(同 §2.1 阈值)+ 几何完整性检查(vertex count、texture 完整性)
|
||||
> 3. 入库后默认 `is_public=false`,owner-team 二次抽查后改 `true`
|
||||
>
|
||||
> **理由**:① MVP 全 CC0 把版权审查负担降到 0([`04_web_app_plan.md`](04_web_app_plan.md) §5.4 已硬过滤);② CC-BY 在 P1 引入是因为 Polyhaven 等优质资产库主要走 CC-BY,不接等于放弃 80% 优质素材池;③ CC-BY-SA 不接是因为其「衍生作品必须同协议」会污染整个 Remix 树;④ 付费素材推 P2 是因为分成模型涉及税务、对账、退款 —— 超 MVP 预算。
|
||||
>
|
||||
> **实现位置**:[`04_web_app_plan.md`](04_web_app_plan.md) §5.4 顶部「仅显示 CC0」开关 + [`01_data_schema.md`](01_data_schema.md) §3.9 `assets.license` 字段约束 + 本章 §7 版权与署名规则
|
||||
|
||||
### P-W-5 — 举报按钮 E-14 可达性
|
||||
|
||||
> **决策**:✅ **所有 UGC 显示位置必须 ≤ 2 次点击可触达举报弹层;举报按钮在视觉上不能比「点赞」更弱**。
|
||||
>
|
||||
> 具体落地:
|
||||
>
|
||||
> | 显示位置 | 举报按钮位置 | 点击次数 |
|
||||
> |---------|------------|---------|
|
||||
> | 房间详情页 `/r/[room_id]` | 顶栏 ⋯ 菜单第一项 | 2(点 ⋯ → 点举报) |
|
||||
> | Remix 详情页 `/remix/[remix_id]` | 同上 | 2 |
|
||||
> | 评论行(`comments`) | 评论行右侧 ⋯ 第一项 | 2 |
|
||||
> | 用户主页 `/u/[handle]` | 顶部 ⋯ 第一项 | 2 |
|
||||
> | 资产卡片(`/assets`) | 卡片右下角 ⚠ 图标直接展示 | 1 |
|
||||
> | Remix 编辑器(编辑某房间时) | 顶部工具栏 ⚠ 图标 | 1 |
|
||||
> | iframe 嵌入 `/embed/r/[room_id]` | 右下角 "Report" 文字链接(不打 logo) | 1 |
|
||||
> | iOS App 详情页 | 底部 Sheet → ⚠ 举报 第一项 | 2 |
|
||||
>
|
||||
> **视觉权重要求**:举报按钮图标尺寸 ≥ 24×24,颜色对比度满足 WCAG AA;不允许藏在「⋯ → 更多 → 更多」三级菜单后。
|
||||
>
|
||||
> **未登录用户**:点击举报 → 弹出登录引导(保留举报 intent 到 localStorage,登录后自动回到该弹层)。**不允许匿名举报**(避免 brigading),但保留入口可见。
|
||||
>
|
||||
> **理由**:① E-14 是 §2.2 自动隐藏机制的唯一信号源,可达性低则整个治理失血;② 1-2 次点击是行业惯例(YouTube/Reddit 均为 2 次);③ iframe 嵌入版必须可达举报否则恶意嵌入网站可永久承载违规内容;④ 不允许匿名是因为「举报需要追责」是 §6 信任分系统的前提。
|
||||
>
|
||||
> **实现位置**:[`04_web_app_plan.md`](04_web_app_plan.md) §8.3 顶栏操作 ⚠ 举报(已落 1 次点击至弹层,本决策追加「⋯ 菜单下也保留」)+ §8.5 评论区(追加 ⋯ 菜单)+ R-12 `/embed` 路由(追加右下角 Report 链接)+ [`03_ios_app_plan.md`](03_ios_app_plan.md) §1.2 ReportSheet(已存在)
|
||||
|
||||
### P-W-6 — iframe 嵌入的频次/速率限制
|
||||
|
||||
> **决策**:✅ **基于 Referer + IP 双键限流;不计入原房间作者流量配额(CDN 流量由平台兜底),但极端滥用者整域永久 ban**。
|
||||
>
|
||||
> 具体规则:
|
||||
>
|
||||
> | 嵌入来源 | 频次 | 触发处置 |
|
||||
> |---------|------|---------|
|
||||
> | **未注册 Referer**(任意网站第一次嵌入) | 5 req/min/Referer + 30 req/hour/IP | 超限返回 429 + Retry-After |
|
||||
> | **注册 Referer**(owner 在 `/me/embeds` 主动登记自家域名) | 30 req/min/Referer + 配额按账户档位(free 1 万 req/月、creator 10 万、pro 100 万) | 超档位返回 429 |
|
||||
> | **嵌入到 NSFW / 违规域名** | 0 | owner-team 维护黑名单 referer,命中直接 403 + 通知房间作者 |
|
||||
> | **嵌入到自家 `crowdroom.app`**(如博客嵌入自己详情页) | 不限制 | 走站内同源 |
|
||||
>
|
||||
> **CDN 流量归属**:
|
||||
>
|
||||
> - iframe 加载的 `canonical.glb / thumbnail` 走公共 CDN,**不计入**房间作者的 Storage 流量(Storage 配额仅算上传字节)
|
||||
> - CDN 流量费由平台统一承担;MVP 期 CloudFlare 免费档足够(无需 R2 出口费用),DAU > 1 万时迁到 Cloudflare R2 + Vercel Image Optimization 双层缓存
|
||||
> - 房间作者可在 `/me/embeds` 看到自己被嵌入的 Referer 列表与日访问量(透明展示,不收费);作者可一键封禁某 Referer
|
||||
>
|
||||
> **关闭嵌入的能力**:
|
||||
>
|
||||
> - 在房间详情页「设置 → 嵌入」可一键关闭嵌入(默认开),关闭后 `/embed/r/{id}` 返回 403
|
||||
> - 这是隐私默认值表([`09_privacy.md`](09_privacy.md) §7)中「iframe 嵌入我的房间」开关的实际后端落地
|
||||
>
|
||||
> **理由**:① iframe 嵌入是 CrowdRoom 病毒传播的关键路径,过严限流损失增长;② 限流是 P0 风控刚需——避免广告联盟把 CrowdRoom 当免费 3D 展示组件无限抓取;③ 不计作者配额是「平台兜底基础设施成本,作者只为存储付费」的清晰边界;④ NSFW Referer 黑名单是 §2 治理 + P-W-5 举报联动的下游消费方。
|
||||
>
|
||||
> **实现位置**:[`04_web_app_plan.md`](04_web_app_plan.md) R-12 `/embed/r/[room_id]` 路由(追加 Referer/IP 限流中间件,可用 Vercel Edge Middleware 或 Upstash Rate Limit)+ [`02_api_contract.md`](02_api_contract.md) §7 错误码(追加 `EMBED_RATE_LIMITED` `EMBED_FORBIDDEN`)+ 新增 `/me/embeds` Web 子页
|
||||
|
||||
---
|
||||
|
||||
## 5. 社区规则文档大纲(5 条核心规则)
|
||||
|
||||
> 本节是面向用户的「社区准则」(Community Guidelines)的工程版骨架;正式版由法务 + 运营在 [`04_web_app_plan.md`](04_web_app_plan.md) R-13 `/legal` 页编辑 MDX。每条规则含:1 段解释 + 违规等级映射 + 处罚阶梯(详见 §6)。
|
||||
|
||||
### CR-1:禁止上传他人住宅未授权扫描
|
||||
|
||||
**解释**:CrowdRoom 用于分享你**自己有权处置**的空间——你的家、你租住的房间、得到主人许可的朋友家。**任何未经主人明确授权扫描的他人住宅**(包括 Airbnb 短租房未告知房东、酒店房间含私人物品、商业空间未与运营方协调)均违反本条。
|
||||
|
||||
| 违规等级 | 典型行为 | 处罚阶梯 |
|
||||
|---------|---------|---------|
|
||||
| L2(限流) | 短租房扫描但未声明授权 | 警告 + 房间设为 unlisted |
|
||||
| L3(禁言 + 强制下架) | 他人住宅扫描被主人/居住者举报 | 房间硬删 + 7 天禁止上传 |
|
||||
| L4(永久封禁) | 多次重犯 或 含强制取证(含他人证件、私人通信暴露) | 账号永久封禁 + 全部房间硬删 |
|
||||
|
||||
### CR-2:禁止 NSFW / 暴力 / 仇恨内容
|
||||
|
||||
**解释**:CrowdRoom 是 App Store 17+ 但**非成人平台**。禁止内容包括:成人/裸体内容(含艺术品的露点雕塑;中性的人体素描可豁免)、写实暴力血腥、对个人或群体的仇恨言论与符号(种族、性别、宗教、性取向)、明显宣扬非法行为的场景陈设(吸毒器具特写、武器展柜)。
|
||||
|
||||
| 违规等级 | 典型行为 | 处罚阶梯 |
|
||||
|---------|---------|---------|
|
||||
| **白名单立即下架** | 任何含未成年的 NSFW | 账号永久封禁 + 必要时报警 |
|
||||
| L4(永久封禁) | 成人内容 / 仇恨符号 | 房间硬删 + 账号永久封禁 |
|
||||
| L3(禁言 7 天) | 边缘暴力或暗示性内容 | 房间下架 + 警告 |
|
||||
| L1(警告) | 模糊的成人暗示标签(用户辩称误标) | 标签清理 + 警告 |
|
||||
|
||||
### CR-3:禁止商业广告(非合作伙伴)
|
||||
|
||||
**解释**:禁止把房间标题、描述、评论、handle 用作直接商业引流(含但不限于:联系方式、推广短链、二维码贴在贴图上、电商商品页链接)。**例外**:与 CrowdRoom 签约的家居品牌方可走「认证账号 + 公开商业内容」通道(P2 商业化)。
|
||||
|
||||
| 违规等级 | 典型行为 | 处罚阶梯 |
|
||||
|---------|---------|---------|
|
||||
| L1(警告) | 评论里发软广 | 评论隐藏 + 警告 |
|
||||
| L2(限流) | 标题/描述含联系方式 | 字段清空 + 房间发现页降权 |
|
||||
| L3(禁言) | 反复在多个房间植入广告 | 7 天禁言 + 全部含广告内容下架 |
|
||||
| L4(永久封禁) | 机器化批量推广 | 账号封禁 + IP 段封禁 |
|
||||
|
||||
### CR-4:尊重原作者署名(Remix 必须标注 fork from)
|
||||
|
||||
**解释**:所有 Remix 必须自动且不可隐藏地保留「fork from @原作者 / 房间标题」的署名行(即便原账号已注销,仍显示「Former CrowdRoom user」——见 P-W-3)。禁止:移除署名、在评论/标题中暗示「这是我的原创扫描而非 Remix」、在导出/外发的物料里抹除来源。
|
||||
|
||||
| 违规等级 | 典型行为 | 处罚阶梯 |
|
||||
|---------|---------|---------|
|
||||
| L2(限流) | 标题暗示「我的原创」 | 强制标题前加 [Remix] 标签 |
|
||||
| L3(禁言) | 拒不修改并反复操作 | 该 Remix 下架 + 3 天禁言 |
|
||||
| L4(永久封禁) | 系统性抹除署名 + 商业利用 | 永久封禁 |
|
||||
|
||||
### CR-5:不得伪造他人作品(含 AI 仿冒)
|
||||
|
||||
**解释**:禁止:用 handle / 头像 / 房间标题模仿其他用户造成混淆;声称某房间是知名设计师/品牌方作品而实际不是;上传 AI 生成的房间扫描却标注为「真实扫描」(CrowdRoom 是「真实空间共享」平台,AI 生成 P2 单独开分区)。
|
||||
|
||||
| 违规等级 | 典型行为 | 处罚阶梯 |
|
||||
|---------|---------|---------|
|
||||
| L2 | handle 与他人相似 | 强制改名 |
|
||||
| L3 | 房间冒充他人作品 | 房间下架 + 7 天禁言 |
|
||||
| L4 | 系统性伪造(含商业目的) | 永久封禁 + 法律追究权保留 |
|
||||
|
||||
---
|
||||
|
||||
## 6. 处罚阶梯表
|
||||
|
||||
> 4 级阶梯 + 「立即下架白名单」越级通道。所有处罚走 GR-1 透明通知(通过 App 内通知 + 注册邮箱双通道)。
|
||||
|
||||
| 等级 | 名称 | 行为定义 | 首次处罚 | 重复处罚(90 天内累计 ≥ 2 次同等级) | 申诉机制 |
|
||||
|------|------|---------|---------|---------|---------|
|
||||
| **L1** | **警告** | 轻微违规(边缘标签、单条软广评论) | 在线通知 + 内容隐藏 / 字段清理;信任分 −5 | 升级 L2 | 不可申诉(轻量、自动撤销 30 天后清除记录) |
|
||||
| **L2** | **限流** | 中度违规(短租未授权、标题广告、handle 仿冒) | 内容隐藏;该用户全部公开内容**发现页排序权重 × 0.3** 持续 14 天;信任分 −15 | 升级 L3 | 申诉窗口 14 天(§8) |
|
||||
| **L3** | **暂时禁言** | 较重违规(多次软广、未经允许扫描他人住宅、抹除署名) | 7 天禁止:上传新房间 / 发布 Remix / 发评论 / 举报;但仍可浏览;信任分 −30 | 升级 L4 | 申诉窗口 14 天 |
|
||||
| **L4** | **永久封禁** | 严重违规(NSFW、仇恨内容、系统性伪造、批量商业推广) | 账号永久封禁;30 天内所有内容硬删;公共 Remix 走 P-W-3 快照转移流;IP/设备指纹加入黑名单 | — | 申诉窗口 30 天 + 终审委员会复核 |
|
||||
| **WL** | **立即下架白名单**(越级) | 含未成年 NSFW / 实名隐私曝光 / 明确暴恐威胁 / 仿冒平台账号 | 内容立即硬下架 + 账号永久封禁;视情况上报执法机关 | — | 申诉窗口 7 天(但永不撤销「上报执法」动作) |
|
||||
|
||||
**累计与衰减规则**:
|
||||
|
||||
- L1 警告 30 天内未再触发 → 自动清零(不计入累计)
|
||||
- L2/L3 处罚记录保留 12 个月,期间无新处罚 → 衰减为 L1
|
||||
- L4 永久封禁不衰减
|
||||
- 信任分(§3.2 P1 起启用):跌至 0 自动触发 L2;跌至 −50 自动触发 L3 人工复核
|
||||
|
||||
---
|
||||
|
||||
## 7. 创作者权利与义务
|
||||
|
||||
### 7.1 权利
|
||||
|
||||
| 权利 | MVP 范围 | P2 扩展 |
|
||||
|------|---------|---------|
|
||||
| **作品归属** | `rooms.owner_id` 字段绑定;UI 顶部固定展示 handle | 上链/可验证证明 |
|
||||
| **删除权** | 可软删(30 天可恢复)+ 硬删(走 P-W-3 快照流) | — |
|
||||
| **下架权** | 可随时切换 `visibility=private` | — |
|
||||
| **转移所有权** | ❌ MVP 不做(避免账号买卖灰产) | ✅ 提供「正式所有权转让」流程(双方邮件+签字) |
|
||||
| **拒绝 Remix** | 房间设置中可关闭 `allow_remix`(默认开) | — |
|
||||
| **商业化收益** | ❌ MVP 不做 | ✅ 素材市场分成 / 品牌方合作分成 |
|
||||
| **被举报时知情权** | 收到举报后 24 h 内通知作者(除非「严重违规白名单」需先下架) | — |
|
||||
| **申诉权** | §8 流程 | — |
|
||||
|
||||
### 7.2 义务
|
||||
|
||||
| 义务 | 验证方式 |
|
||||
|------|---------|
|
||||
| **原创性声明** | 上传时勾选「我有权处置该空间且扫描内容真实」(ToS 第 3 章) |
|
||||
| **隐私脱敏责任** | iOS-X1 端侧脱敏强制 + 手动框选机制([`09_privacy.md`](09_privacy.md) §3.2) |
|
||||
| **举报响应** | 收到平台关于自己作品的举报通知后,7 天内未申诉视为接受处罚 |
|
||||
| **遵守社区规则** | §5 CR-1 ~ CR-5 |
|
||||
| **不规避平台机制** | 不得用脚本绕过配额、不得伪造举报、不得用机器人刷点赞 |
|
||||
|
||||
---
|
||||
|
||||
## 8. 版权与署名规则(CC 协议)
|
||||
|
||||
### 8.1 平台默认协议:CC BY-NC 4.0
|
||||
|
||||
> 用户上传到 CrowdRoom 的所有公开房间默认遵守 **Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**:
|
||||
>
|
||||
> - **BY**:他人 Remix / 引用必须署名(自动 fork-from 标注满足)
|
||||
> - **NC**:禁止商业使用(含商品图、广告素材、付费课程教材)
|
||||
>
|
||||
> 用户在上传表单可选择「升级到 CC BY 4.0」(允许商业使用,仍需署名)或「保留全部权利」(不允许 Remix——`allow_remix=false`)。**默认 CC BY-NC**。
|
||||
|
||||
### 8.2 协议对照表
|
||||
|
||||
| 协议 | Remix 允许 | 商业允许 | 衍生协议要求 | CrowdRoom 支持 |
|
||||
|------|-----------|---------|------------|--------------|
|
||||
| 保留全部权利(All Rights Reserved) | ❌ | ❌ | n/a | ✅(上传时可选) |
|
||||
| **CC BY-NC 4.0** | ✅ | ❌ | 必须署名 | ✅ **默认** |
|
||||
| CC BY 4.0 | ✅ | ✅ | 必须署名 | ✅(上传时可选升级) |
|
||||
| CC BY-SA | ✅ | ✅ | 同等共享(衍生必须同协议) | ❌ 永不支持(污染 Remix 树) |
|
||||
| CC0(公共领域) | ✅ | ✅ | 无 | ✅(仅适用于公共资产库 §P-W-4) |
|
||||
|
||||
### 8.3 署名格式
|
||||
|
||||
```
|
||||
原作者 @alice · 房间「我的客厅」· 协议 CC BY-NC 4.0
|
||||
```
|
||||
|
||||
- Remix 详情页顶部固定显示
|
||||
- OG 卡片下方小字
|
||||
- iframe 嵌入版右下角
|
||||
- 用户导出/截图工具自动在角落添加水印(P1)
|
||||
|
||||
### 8.4 第三方资产(公共资产库)的协议处理
|
||||
|
||||
详见 §4 P-W-4 决策与 [`04_web_app_plan.md`](04_web_app_plan.md) §5.4。
|
||||
|
||||
---
|
||||
|
||||
## 9. 争议解决与申诉流程
|
||||
|
||||
### 9.1 用户与用户之间
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
autonumber
|
||||
participant A as 用户 A 被举报方
|
||||
participant B as 用户 B 举报方
|
||||
participant Sys as 平台自动系统
|
||||
participant R as 人工 Reviewer
|
||||
|
||||
B->>Sys: 举报 A 的房间 reason detail
|
||||
Sys->>Sys: 累计第 3 个独立举报 触发自动隐藏
|
||||
Sys->>A: 通知 你的房间被暂时隐藏 处于 review 中
|
||||
Sys->>R: 入工单队列 24h SLA
|
||||
R->>R: 综合 NSFW score 敏感词命中 举报理由 检查内容
|
||||
alt 判定违规
|
||||
R->>Sys: reject
|
||||
Sys->>A: 通知 房间永久下架 等级 L 处罚 申诉窗口 14 天
|
||||
Sys->>B: 通知 举报成立 信任分 加 5
|
||||
else 判定误报
|
||||
R->>Sys: approve
|
||||
Sys->>A: 通知 内容已恢复
|
||||
Sys->>B: 通知 举报未成立 信任分 不变 但 第 3 次连续误报 减 5
|
||||
end
|
||||
opt 用户 A 申诉
|
||||
A->>Sys: POST appeals 附详细说明
|
||||
Sys->>R: 不同 reviewer 二次审查
|
||||
alt 申诉成立
|
||||
Sys->>A: 撤销处罚 + 内容恢复 + 信任分回补
|
||||
else 申诉驳回
|
||||
Sys->>A: 维持原判 + 提示终审权
|
||||
end
|
||||
end
|
||||
```
|
||||
|
||||
### 9.2 用户与平台之间
|
||||
|
||||
| 阶段 | 通道 | SLA |
|
||||
|------|------|-----|
|
||||
| 1. 在线申诉 | App 内 / Web 内「申诉」入口 → 写明工单号 + 申诉理由(≤ 1000 字) + 可附证据链接 | 5 工作日首响应 |
|
||||
| 2. 邮件复核 | `appeals@crowdroom.app`(每个工单的处理通知中包含此邮箱) | 7 工作日 |
|
||||
| 3. 终审委员会 | MVP 阶段 = 项目方 owner-team 2 人 + DPO;P2 引入外部委员 1 人(社区代表) | 14 工作日 |
|
||||
| 4. 法律诉求 | 用户保留按所在国法律走司法途径的权利;平台不在 ToS 中强制仲裁条款(不剥夺用户起诉权) | 视司法管辖区 |
|
||||
|
||||
**申诉成立的判定标准**:
|
||||
|
||||
1. 原举报理由与实际内容不符(误报)
|
||||
2. 内容已修改并满足规则(如手动框选脱敏后重新提交)
|
||||
3. 程序瑕疵(如未在 24 h SLA 内首响应、reviewer 利益冲突)
|
||||
|
||||
**申诉失败后的最终路径**:保留个人数据导出权([`09_privacy.md`](09_privacy.md) §6 C-4),鼓励迁移到其他平台,不阻止公开吐槽(GR-1)。
|
||||
|
||||
---
|
||||
|
||||
## 10. 下线 / 退场规范
|
||||
|
||||
> 若 CrowdRoom 产品最终下线(融资失败、合并、战略调整),治理义务并不随之消失。本节是面向**未来某一天**的合同性承诺。
|
||||
|
||||
| 阶段 | 时间 | 行为 |
|
||||
|------|------|------|
|
||||
| **T-90 天** | 决策发布 | 在 `/` 顶部 banner + 注册邮箱通知所有用户「CrowdRoom 将于 X 月 Y 日下线」;同时给媒体一份新闻稿(避免突然消失引发恐慌) |
|
||||
| **T-90 → T-30** | 60 天导出窗口 | `account-export` API 保持可用且**无限次免费**;新增「批量导出我所有 Remix 来源父房间几何快照」一键功能 |
|
||||
| **T-30 → T-7** | 只读模式 | 关闭上传 / Remix 发布 / 评论;保留浏览 + 导出 + 删除账号 |
|
||||
| **T-7 → T-0** | 数据迁移 | 与社区协商接收方(如 Internet Archive、某非盈利艺术机构);所有 `visibility=public` 且协议为 CC0/CC-BY/CC-BY-NC 的房间**继续以 CC0 镜像**对外可访问;用户数据(私有房间、私信、未公开 Remix)一律不迁移 |
|
||||
| **T+0** | 服务关闭 | 主域名跳转到归档静态镜像;数据库 + 私有 Storage 销毁;归档镜像由接收方运营,CrowdRoom 团队不再有访问权 |
|
||||
| **T+30** | 数据销毁完成 | 公开销毁证明(含 SHA256 哈希链上锚定,P2 可选) |
|
||||
|
||||
> 这条「**公开数据继续 CC0 镜像**」承诺是 CrowdRoom 对社区的最重要长期信用——它让创作者愿意把扫描放上来,因为知道即便平台死了,作品还在。这与 Reddit/Flickr/Instagram 的「关张即归零」形成对照,是本平台差异化的合规底色。
|
||||
|
||||
---
|
||||
|
||||
## 11. 本章小结
|
||||
|
||||
| 关键产出 | 一句话 |
|
||||
|----------|--------|
|
||||
| **4 条治理原则 GR-1 ~ GR-4** | 默认透明 / 社区自治优先 / 升级机制清晰 / 创作者既得权 vs 撤回权平衡 |
|
||||
| **UGC 自动审核流程** | NSFW 分类 + 敏感词 DFA,硬阈 0.9 立即下架,软阈 0.5–0.9 入人工 24 h |
|
||||
| **举报状态机** | 3 个独立举报自动隐藏 → 人工 24 h → 申诉 14 天;严重违规白名单越级 |
|
||||
| **MVP 团队规模** | 1 兼职 reviewer + owner-team 终审 + DPO 隐私邮箱;P1 引入信任分 + 志愿者审核团 |
|
||||
| **4 条治理契约 P-W-3 ~ P-W-6** | 父硬删快照转移到 Remix / MVP 全 CC0 P1 加 CC-BY / 举报 ≤ 2 次点击可达 / iframe Referer+IP 限流不计作者配额 |
|
||||
| **5 条社区规则 CR-1 ~ CR-5** | 禁未授权他宅扫描 / 禁 NSFW 暴力仇恨 / 禁广告 / 必须 Remix 署名 / 不得伪造他人作品 |
|
||||
| **4 级处罚阶梯 + 白名单越级** | L1 警告 / L2 限流 / L3 7 天禁言 / L4 永久封禁 / WL 立即下架 |
|
||||
| **CC BY-NC 4.0 默认协议** | 用户可升级 CC BY 4.0 或保留全部权利;公共资产库 CC0 |
|
||||
| **3 级申诉流程** | 在线申诉 → 邮件复核 → 终审委员会,保留司法救济权 |
|
||||
| **退场规范** | 90 天预警 + 公开数据 CC0 镜像永久承诺,对照 Reddit/Flickr 关张归零 |
|
||||
|
||||
读完本章你应能:
|
||||
- ✅ 给运营团队一份 MVP 8 周内可启用的审核 SOP(含工具、阈值、SLA、信任分初值)
|
||||
- ✅ 给法务一份 ToS / 社区准则 / 申诉条款的结构骨架(再做语言润色即可发布)
|
||||
- ✅ 解释为什么 CrowdRoom 在「父删 vs Remix 保留」这一争议点上站队 GitHub fork 模型,并对作者诉求做了「署名替换」式补偿
|
||||
|
||||
---
|
||||
|
||||
**章节版本**:v0.1 · 草案
|
||||
**关键收获**:CrowdRoom 治理的灵魂是 GR-4「**创作者既得权 vs 原作者撤回权平衡**」的一次明确拍板——以「快照转移 + 署名替换」化解 P-W-3 的根本矛盾,并配合 CC BY-NC 默认协议、4 级处罚阶梯、90 天退场承诺,把一个社区平台的「长期信用」三件套(**透明 / 公平 / 不可消失**)一次性敲定。
|
||||
Reference in New Issue
Block a user