Files
creator-hub/docs/product/compliance-product-plan.md
T
2026-08-27 16:13:57 +08:00

10 KiB
Raw Blame History

CreatorHub 内部技术探索方案

状态:已入库,阶段 A 按单用户范围验证 日期:2026-08-27 上游参考快照:3441293738/creatorhub@11df1389ee557169bb2381e5ea08de96f14f80c7

1. 定位

CreatorHub 是一个内部、非公开的多账号运行环境与运营任务技术实验台,只处理团队自有或已获明确授权的账号。

阶段 A 采用单用户模式,只用于验证账号隔离、任务幂等、停止和审计等核心能力。多用户协作、账号负责人、RBAC 和职责隔离后续另行规划,不属于当前实现或验收范围。

当前目标不是形成对外产品承诺,而是回答三个工程问题:

  1. 多账号 Profile、运行时和网络出口能否稳定隔离并可复现;
  2. 账号、单用户确认、任务和执行证据能否形成最小可审计闭环;
  3. 平台页面、登录态或运行环境变化时,系统能否及时观测、停止并安全恢复。

判断标准是实验可复现、凭据不泄露、账号不串用、任务不重复、异常可停止;不以“通过平台检测”或“降低封禁率”作为指标。

2. 探索范围

纳入本轮

  • 1 个本地 workspace
  • 团队自有或有明确授权记录的测试账号;
  • 指纹 Chromium 与系统 Chrome 的运行时接入、版本固定和 Profile 隔离;
  • 受管网络出口的绑定、健康观测和失败关闭;
  • 账号台账、凭据引用和状态;
  • 草稿、单用户显式确认、队列、执行结果、暂停和审计;
  • 授权沙箱中的兼容性矩阵、黑盒观测和停止条件。

暂不纳入

  • 公众注册、多租户 SaaS、计费、客服和 SLA;
  • 多用户协作、账号负责人、RBAC 和职责隔离;
  • 市场推广、外部客户承诺和规模化部署;
  • 自动评论、批量私信、自动关注、刷量和未授权数据采集;
  • 验证码或设备校验绕过、私有签名、逆向接口、TLS/JA3/指纹伪装;
  • 平台提示异常后通过换代理、换设备、换身份或自动重试继续执行。

这些边界保护实验账号、凭据和数据,也避免把不可验证的规避假设写成工程需求。

3. 五个领域的优先级

P0 是首轮验证必需,P1 仅在 P0 通过后开展。

领域 P0 P1 本轮停止线
运行环境 每账号独立 Profile;运行时版本固定;单实例占用锁;环境变更留痕;浏览器崩溃可见 升级灰度、备份恢复、跨 OS 兼容矩阵 Profile 串用、版本漂移、设备校验或未知挑战页
网络出口 账号稳定绑定;连通性与认证观测;出口失效时禁止静默直连;凭据脱敏 容量、延迟、可用率和成本统计 出口地址/地区异常变化、认证失败、网络策略不明确
账号池 自有/授权标记;平台账号唯一键;凭据只存引用;状态和撤销 标签、归档、登录态健康 授权不明、账号映射冲突、凭据进入日志
单用户确认 草稿显式确认;确认版本锁定;紧急停机;追加式审计 多用户、负责人和 RBAC 另行规划 确认版本不一致、无法确认操作者
任务编排 capability allowlist;幂等键;单次提交;暂停/取消;明确结果证据;needs_confirmation 排期、失败分类、人工恢复和只读健康看板 403/429、验证码、设备校验、平台警告、结果不确定

4. 最小系统形态

React/Vite 内部管理台
          │
          ▼
模块化单体控制面 ─── Postgres
          │
          ▼
一个持久任务 Worker
          │
          ├─ 官方能力连接器
          └─ 受控浏览器执行器

Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。

本轮不拆微服务、不引入通用工作流引擎。Postgres 的唯一约束、事务和行锁足以完成幂等、租约和状态推进。

最小实体

  • social_account, credential_ref
  • runtime_profile, network_exit, environment_binding
  • content_draft, confirmation, operation_task, execution_attempt
  • observation_event, audit_event

任务状态:

draft → pending_confirmation → confirmed → queued → executing → succeeded / failed / needs_confirmation / policy_hold / cancelled

needs_confirmationpolicy_hold 只能由当前用户核验后处理,不自动重试。

5. 授权沙箱威胁模型

资产

  • 账号凭据、Cookie/token、Profile 与本地存储;
  • 草稿、媒体、私信或其他账号数据;
  • 单用户确认版本和执行证据;
  • 网络出口凭据与环境观测数据。

高层威胁与控制

威胁 可观测现象 系统控制
Profile 或账号串用 当前账号标识与任务账号不一致 执行前双重校验、每账号锁、立即停机
凭据泄露 日志/错误/导出中出现敏感字段 Secret 引用、结构化脱敏、敏感字段扫描
环境兼容性漂移 浏览器版本、启动结果、页面能力或登录态变化 固定版本、记录变更、按兼容矩阵回归;不猜测检测机制
网络出口漂移 出口健康、地址或地区标签变化 稳定绑定、变更确认、失败关闭;不自动换出口继续
重复或错误写入 重复任务、账号/草稿/确认版本不一致 唯一幂等键、版本锁定、一次提交、结果核验
平台挑战或限制 验证码、设备校验、403/429、警告、未知阻断页 暂停账号和相关任务,保存最小证据,交当前用户手工核验
浏览器/UI 变化 元素缺失、导航异常、成功证据缺失 连接器隔离、明确超时、进入 needs_confirmation

威胁模型只记录外部可见信号、影响和停止策略,不记录平台内部检测项猜测、规避参数或可操作绕过步骤。

6. 兼容性观测方案

记录维度

  • 平台与场景:登录、只读同步、草稿准备、受控发布;
  • OS、浏览器后端、运行时版本、Profile 标识;
  • 网络出口的内部标签与健康状态,不记录可复用凭据;
  • 开始/结束时间、任务状态、浏览器退出码、页面可用性;
  • 平台返回的通用状态分类:成功、认证失效、限流、挑战、未知;
  • 当前用户、确认版本、停止原因和人工核验结论。

不记录

  • 平台检测脚本、私有接口、签名材料或 Cookie 拼装方式;
  • TLS/JA3、Canvas、WebGL 等伪装参数与“通过率”;
  • 验证码、设备校验或封禁后的规避路径;
  • 可用于换身份、换地区或复现他人账号环境的敏感细节。

输出

每次实验只产出一条结构化记录和必要的脱敏截图/日志:输入版本、环境版本、预期、结果、停止原因、是否可复现。未知结果保留为未知,不推断平台检测逻辑。

7. 验证方案

阶段 A:离线闭环

范围:1 workspace、1 个内部用户、2 个虚拟账号、Mock 连接器、20 个任务。

阶段 A 仅验证单用户核心闭环;负责人、RBAC、多用户协作和职责隔离不属于本阶段验收。

验收:

  • 单用户从账号配置、草稿、显式确认到 Mock 执行和审计回溯的核心闭环可重复验证;
  • 20 个任务重复执行为 0
  • 账号、草稿或确认版本不一致时执行为 0;
  • 暂停账号后 1 分钟内不再领取新任务;
  • 日志、错误、导出中无密码、Cookie/token 和网络凭据;
  • 每个结果都能回溯到账号、单用户确认版本和执行尝试。

阶段 B/C 仅保留后续验证门槛,本轮不实施、不接入真实平台;进入任一阶段前需重新规划并审查范围。

阶段 B:本地授权沙箱

范围:1 个平台、1 个自有测试账号、1 个固定 Profile、1 个受管出口;仅验证登录、只读页面、启动/停止和观测链路。

验收:

  • 连续 10 次启动均命中同一账号与 Profile,无串用;
  • 运行时或出口配置变化会阻止任务并要求当前用户确认;
  • 浏览器崩溃、登录失效、挑战页和网络失败都能进入明确停止状态;
  • 不通过自动刷新、重试、换出口或换环境消除异常。

阶段 C:受控写入

前提:阶段 A/B 通过;当前用户明确确认;连接器 capability 已核验。

范围:同一自有测试账号,5 个低风险草稿,逐次显式确认和原生平台核验。

验收:

  • 重复写入、错账号写入、未确认写入均为 0;
  • 5 次执行都有明确成功证据或进入 needs_confirmation
  • 任一停止条件出现即终止本阶段,不扩大样本。

8. 停止与恢复

立即停止条件

  • 验证码、设备校验、平台警告、403/429 或未知挑战页;
  • 账号、Profile、网络出口或确认版本不一致;
  • 代理认证失败、出口异常变化或发生静默直连;
  • 提交结果不确定、浏览器崩溃或成功证据缺失;
  • 凭据泄露或跨账号数据出现。

恢复条件

只允许当前用户在原生平台/可见浏览器中完成核验,并记录原因与结论后恢复。恢复沿用原账号、原 Profile 和已确认环境;不得通过换代理、换设备、换身份、自动刷新或规避步骤推进实验。

9. 审查决策

  • 通过:定位、范围、五领域 P0、威胁模型、观测字段和停止条件获得确认,由工程师入库并拆阶段 A。
  • 修改后通过:仅调整内部实验规模、字段或职责,不放宽安全边界。
  • 不通过:目标依赖检测规避、验证绕过、私有签名、指纹伪装或换身份/出口继续执行。

10. 参考输入

上游根目录在该快照未发现明确许可证文件,因此本方案只参考公开产品行为和领域概念,不授权复制上游源码、测试或资源。