Merge pull request 'HH-728: align phase A with single-user scope' (#3) from agent/agent/79d1b035-hh-728-single-user-plan into main
Reviewed-on: #3
This commit is contained in:
@@ -1,17 +1,19 @@
|
||||
# CreatorHub 内部技术探索方案(审查稿)
|
||||
# CreatorHub 内部技术探索方案
|
||||
|
||||
> 状态:待审查,暂不入库
|
||||
> 日期:2026-08-27
|
||||
> 状态:已入库,阶段 A 按单用户范围验证
|
||||
> 日期:2026-08-27
|
||||
> 上游参考快照:`3441293738/creatorhub@11df1389ee557169bb2381e5ea08de96f14f80c7`
|
||||
|
||||
## 1. 定位
|
||||
|
||||
CreatorHub 是一个**内部、非公开**的多账号运行环境与运营任务技术实验台,只处理团队自有或已获明确授权的账号。
|
||||
|
||||
阶段 A 采用单用户模式,只用于验证账号隔离、任务幂等、停止和审计等核心能力。多用户协作、账号负责人、RBAC 和职责隔离后续另行规划,不属于当前实现或验收范围。
|
||||
|
||||
当前目标不是形成对外产品承诺,而是回答三个工程问题:
|
||||
|
||||
1. 多账号 Profile、运行时和网络出口能否稳定隔离并可复现;
|
||||
2. 账号、负责人、任务和执行证据能否形成最小可审计闭环;
|
||||
2. 账号、单用户确认、任务和执行证据能否形成最小可审计闭环;
|
||||
3. 平台页面、登录态或运行环境变化时,系统能否及时观测、停止并安全恢复。
|
||||
|
||||
判断标准是实验可复现、凭据不泄露、账号不串用、任务不重复、异常可停止;不以“通过平台检测”或“降低封禁率”作为指标。
|
||||
@@ -24,13 +26,14 @@ CreatorHub 是一个**内部、非公开**的多账号运行环境与运营任
|
||||
- 团队自有或有明确授权记录的测试账号;
|
||||
- 指纹 Chromium 与系统 Chrome 的运行时接入、版本固定和 Profile 隔离;
|
||||
- 受管网络出口的绑定、健康观测和失败关闭;
|
||||
- 账号台账、负责人、凭据引用和状态;
|
||||
- 草稿、审核、队列、执行结果、暂停和审计;
|
||||
- 账号台账、凭据引用和状态;
|
||||
- 草稿、单用户显式确认、队列、执行结果、暂停和审计;
|
||||
- 授权沙箱中的兼容性矩阵、黑盒观测和停止条件。
|
||||
|
||||
### 暂不纳入
|
||||
|
||||
- 公众注册、多租户 SaaS、计费、客服和 SLA;
|
||||
- 多用户协作、账号负责人、RBAC 和职责隔离;
|
||||
- 市场推广、外部客户承诺和规模化部署;
|
||||
- 自动评论、批量私信、自动关注、刷量和未授权数据采集;
|
||||
- 验证码或设备校验绕过、私有签名、逆向接口、TLS/JA3/指纹伪装;
|
||||
@@ -46,8 +49,8 @@ P0 是首轮验证必需,P1 仅在 P0 通过后开展。
|
||||
|---|---|---|---|
|
||||
| 运行环境 | 每账号独立 Profile;运行时版本固定;单实例占用锁;环境变更留痕;浏览器崩溃可见 | 升级灰度、备份恢复、跨 OS 兼容矩阵 | Profile 串用、版本漂移、设备校验或未知挑战页 |
|
||||
| 网络出口 | 账号稳定绑定;连通性与认证观测;出口失效时禁止静默直连;凭据脱敏 | 容量、延迟、可用率和成本统计 | 出口地址/地区异常变化、认证失败、网络策略不明确 |
|
||||
| 账号池 | 自有/授权标记;平台账号唯一键;凭据只存引用;状态和撤销;负责人必填 | 标签、归档、批量交接、登录态健康 | 授权不明、账号映射冲突、凭据进入日志 |
|
||||
| 负责人 | Admin / Operator / Reviewer 最小角色;账号级授权;人工审批;紧急停机;追加式审计 | 临时授权、职责冲突提醒、审计导出 | 越权、审批版本不一致、无法确认操作者 |
|
||||
| 账号池 | 自有/授权标记;平台账号唯一键;凭据只存引用;状态和撤销 | 标签、归档、登录态健康 | 授权不明、账号映射冲突、凭据进入日志 |
|
||||
| 单用户确认 | 草稿显式确认;确认版本锁定;紧急停机;追加式审计 | 多用户、负责人和 RBAC 另行规划 | 确认版本不一致、无法确认操作者 |
|
||||
| 任务编排 | capability allowlist;幂等键;单次提交;暂停/取消;明确结果证据;`needs_confirmation` | 排期、失败分类、人工恢复和只读健康看板 | 403/429、验证码、设备校验、平台警告、结果不确定 |
|
||||
|
||||
## 4. 最小系统形态
|
||||
@@ -71,16 +74,16 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
|
||||
### 最小实体
|
||||
|
||||
- `member`, `social_account`, `account_assignment`, `credential_ref`
|
||||
- `social_account`, `credential_ref`
|
||||
- `runtime_profile`, `network_exit`, `environment_binding`
|
||||
- `content_draft`, `approval`, `operation_task`, `execution_attempt`
|
||||
- `content_draft`, `confirmation`, `operation_task`, `execution_attempt`
|
||||
- `observation_event`, `audit_event`
|
||||
|
||||
任务状态:
|
||||
|
||||
`draft → pending_review → approved → queued → executing → succeeded / failed / needs_confirmation / policy_hold / cancelled`
|
||||
`draft → pending_confirmation → confirmed → queued → executing → succeeded / failed / needs_confirmation / policy_hold / cancelled`
|
||||
|
||||
`needs_confirmation` 与 `policy_hold` 只能由负责人核验后处理,不自动重试。
|
||||
`needs_confirmation` 与 `policy_hold` 只能由当前用户核验后处理,不自动重试。
|
||||
|
||||
## 5. 授权沙箱威胁模型
|
||||
|
||||
@@ -88,7 +91,7 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
|
||||
- 账号凭据、Cookie/token、Profile 与本地存储;
|
||||
- 草稿、媒体、私信或其他账号数据;
|
||||
- 负责人授权、审批版本和执行证据;
|
||||
- 单用户确认版本和执行证据;
|
||||
- 网络出口凭据与环境观测数据。
|
||||
|
||||
### 高层威胁与控制
|
||||
@@ -98,11 +101,10 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
| Profile 或账号串用 | 当前账号标识与任务账号不一致 | 执行前双重校验、每账号锁、立即停机 |
|
||||
| 凭据泄露 | 日志/错误/导出中出现敏感字段 | Secret 引用、结构化脱敏、敏感字段扫描 |
|
||||
| 环境兼容性漂移 | 浏览器版本、启动结果、页面能力或登录态变化 | 固定版本、记录变更、按兼容矩阵回归;不猜测检测机制 |
|
||||
| 网络出口漂移 | 出口健康、地址或地区标签变化 | 稳定绑定、变更审批、失败关闭;不自动换出口继续 |
|
||||
| 重复或错误写入 | 重复任务、账号/草稿/审批版本不一致 | 唯一幂等键、版本锁定、一次提交、结果核验 |
|
||||
| 平台挑战或限制 | 验证码、设备校验、403/429、警告、未知阻断页 | 暂停账号和相关任务,保存最小证据,交负责人手工核验 |
|
||||
| 网络出口漂移 | 出口健康、地址或地区标签变化 | 稳定绑定、变更确认、失败关闭;不自动换出口继续 |
|
||||
| 重复或错误写入 | 重复任务、账号/草稿/确认版本不一致 | 唯一幂等键、版本锁定、一次提交、结果核验 |
|
||||
| 平台挑战或限制 | 验证码、设备校验、403/429、警告、未知阻断页 | 暂停账号和相关任务,保存最小证据,交当前用户手工核验 |
|
||||
| 浏览器/UI 变化 | 元素缺失、导航异常、成功证据缺失 | 连接器隔离、明确超时、进入 `needs_confirmation` |
|
||||
| 越权操作 | 成员尝试访问或执行未分配账号 | 服务端授权校验、拒绝并写审计 |
|
||||
|
||||
威胁模型只记录外部可见信号、影响和停止策略,不记录平台内部检测项猜测、规避参数或可操作绕过步骤。
|
||||
|
||||
@@ -115,7 +117,7 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
- 网络出口的内部标签与健康状态,不记录可复用凭据;
|
||||
- 开始/结束时间、任务状态、浏览器退出码、页面可用性;
|
||||
- 平台返回的通用状态分类:成功、认证失效、限流、挑战、未知;
|
||||
- 操作者、批准版本、停止原因和人工核验结论。
|
||||
- 当前用户、确认版本、停止原因和人工核验结论。
|
||||
|
||||
### 不记录
|
||||
|
||||
@@ -132,16 +134,20 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
|
||||
### 阶段 A:离线闭环
|
||||
|
||||
范围:1 workspace、2 个内部角色、2 个虚拟账号、Mock 连接器、20 个任务。
|
||||
范围:1 workspace、1 个内部用户、2 个虚拟账号、Mock 连接器、20 个任务。
|
||||
|
||||
阶段 A 仅验证单用户核心闭环;负责人、RBAC、多用户协作和职责隔离不属于本阶段验收。
|
||||
|
||||
验收:
|
||||
|
||||
- 越权测试全部被拒绝;
|
||||
- 单用户从账号配置、草稿、显式确认到 Mock 执行和审计回溯的核心闭环可重复验证;
|
||||
- 20 个任务重复执行为 0;
|
||||
- 账号、草稿或审批版本不一致时执行为 0;
|
||||
- 账号、草稿或确认版本不一致时执行为 0;
|
||||
- 暂停账号后 1 分钟内不再领取新任务;
|
||||
- 日志、错误、导出中无密码、Cookie/token 和网络凭据;
|
||||
- 每个结果都能回溯到账号、负责人、批准版本和执行尝试。
|
||||
- 每个结果都能回溯到账号、单用户确认版本和执行尝试。
|
||||
|
||||
阶段 B/C 仅保留后续验证门槛,本轮不实施、不接入真实平台;进入任一阶段前需重新规划并审查范围。
|
||||
|
||||
### 阶段 B:本地授权沙箱
|
||||
|
||||
@@ -150,19 +156,19 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
验收:
|
||||
|
||||
- 连续 10 次启动均命中同一账号与 Profile,无串用;
|
||||
- 运行时或出口配置变化会阻止任务并要求负责人确认;
|
||||
- 运行时或出口配置变化会阻止任务并要求当前用户确认;
|
||||
- 浏览器崩溃、登录失效、挑战页和网络失败都能进入明确停止状态;
|
||||
- 不通过自动刷新、重试、换出口或换环境消除异常。
|
||||
|
||||
### 阶段 C:受控写入
|
||||
|
||||
前提:阶段 A/B 通过;账号负责人明确批准;连接器 capability 已核验。
|
||||
前提:阶段 A/B 通过;当前用户明确确认;连接器 capability 已核验。
|
||||
|
||||
范围:同一自有测试账号,5 个低风险草稿,逐次人工审批和原生平台核验。
|
||||
范围:同一自有测试账号,5 个低风险草稿,逐次显式确认和原生平台核验。
|
||||
|
||||
验收:
|
||||
|
||||
- 重复写入、错账号写入、未审批写入均为 0;
|
||||
- 重复写入、错账号写入、未确认写入均为 0;
|
||||
- 5 次执行都有明确成功证据或进入 `needs_confirmation`;
|
||||
- 任一停止条件出现即终止本阶段,不扩大样本。
|
||||
|
||||
@@ -171,14 +177,14 @@ Secret Manager / OS Keyring 只保存凭据,数据库仅存引用。
|
||||
### 立即停止条件
|
||||
|
||||
- 验证码、设备校验、平台警告、403/429 或未知挑战页;
|
||||
- 账号、Profile、网络出口或审批版本不一致;
|
||||
- 账号、Profile、网络出口或确认版本不一致;
|
||||
- 代理认证失败、出口异常变化或发生静默直连;
|
||||
- 提交结果不确定、浏览器崩溃或成功证据缺失;
|
||||
- 凭据泄露、越权或跨账号数据出现。
|
||||
- 凭据泄露或跨账号数据出现。
|
||||
|
||||
### 恢复条件
|
||||
|
||||
只允许负责人在原生平台/可见浏览器中完成核验,并记录原因与结论后恢复。恢复沿用原账号、原 Profile 和已批准环境;不得通过换代理、换设备、换身份、自动刷新或规避步骤推进实验。
|
||||
只允许当前用户在原生平台/可见浏览器中完成核验,并记录原因与结论后恢复。恢复沿用原账号、原 Profile 和已确认环境;不得通过换代理、换设备、换身份、自动刷新或规避步骤推进实验。
|
||||
|
||||
## 9. 审查决策
|
||||
|
||||
|
||||
Reference in New Issue
Block a user