42 KiB
架构-04:状态机与约束清单
- 版本:v7
- 更新日期:2026-07-20
- 目标读者:架构 / 后端 / 前端 / 测试 / 产品
- 阅读时间:45-60 分钟
- 边界说明:本文件是 Muse 生命周期、状态流转和不可绕过约束的架构层单一来源;状态值是概念层合同,具体字段名、表结构和接口路径由后端阶段承接。系统边界见
架构-01-系统全貌与边界上下文.md,核心模型见架构-02-核心数据结构与双轨模型.md。 - 变更记录:v7(2026-07-20)§5.2.1 登记正文实验候选与生产候选隔离、编辑版本重检、detector 绿证据、
accept_preflight和 CAS 状态约束;实验阶段不改 API/DB。v6(2026-05-24)收束 Muse 生命周期、来源传播和不可绕过约束。
1. 状态机总原则
本文件回答三个问题:
- 每类核心对象允许如何流转。
- 哪些前置条件、后置条件和失败路径不能被实现绕过。
- 授权、来源、配置、任务、导出和审计如何在状态变化中保持可追溯。
全局原则:
- 状态机按 owner BC 写入,不能由页面、聚合视图或外部服务直接改写。
- 状态变化必须保留 actor、owner、object、action、version、source、authorization snapshot 和审计上下文。
- AI、市场资产、外部知识、用户智能体和系统任务不能直接写作品事实。
- 已确认 Canonical 不因撤权、下架、召回或外部失败自动回滚;但受限来源不得继续用于新生成、新绑定、新导出许可范围或新的来源型知识确认。
- 高影响操作必须支持影响预览、二次确认、分权复核、幂等、取消、失败恢复和审计。
2. 通用状态语义
2.1 通用任务状态
| 状态 | 含义 | 允许离开方式 | 约束 |
|---|---|---|---|
| queued | 已创建,等待执行 | running / canceled | 必须有 owner、任务类型、幂等键或去重上下文 |
| running | 执行中 | succeeded / failed / canceled | 必须记录配置快照和授权快照 |
| partial_completed | 批量任务部分子任务完成 | running / succeeded / failed / canceled | 只允许作为父任务聚合视图;子任务仍必须有各自终态 |
| succeeded | 成功完成 | 终态 | 必须满足对应后置条件 |
| failed | 失败 | 终态或新任务重试 | 失败不得静默写 Canonical |
| canceled | 用户或系统取消 | 终态 | 取消不得保留可继续消费的待审写入 |
2.2 通用版本状态
| 状态 | 含义 | 允许离开方式 | 约束 |
|---|---|---|---|
| draft | 草稿 | review / active / archived | 可编辑但不可被正式运行链路使用 |
| review | 待复核 | active / rejected / draft | 高风险版本必须进入此状态 |
| active | 当前可用 | disabled / archived / superseded | 运行任务读取 active 快照后不得中途混用新版本 |
| disabled | 已停用 | active / archived | 停用后不得进入新任务 |
| superseded | 被新版本替代 | archived | 历史任务仍可追溯 |
| archived | 归档 | 终态 | 不能再被新任务引用 |
2.3 通用来源状态
| 状态 | 含义 | 对后续动作的影响 |
|---|---|---|
| active | 来源有效 | 可按许可参与检索、生成、绑定或确认 |
| stale | 来源快照与当前来源不匹配 | 待审确认禁用,需重新提取或重验 |
| revoked | 授权撤销 | 禁止新生成、新绑定、新来源型确认和受限导出 |
| delisted | 市场下架 | 禁止新获取和新安装;已授权使用按治理策略限制 |
| recalled | 召回 | 影响已安装、已绑定、运行中任务、导出和未确认对象 |
| owner_missing | 源 owner 缺失或权限转移不明 | 禁止模板化、参考写入、AI 上下文绑定和高风险使用 |
| disabled | 来源变化后直接停用 | 禁止继续使用,等待恢复或终态 |
| blocked | 合规、安全、侵权或隐私阻断 | 禁止继续使用,保留审计和申诉路径 |
来源变化时直接决策 active 或 disabled,不使用中间 needs_recheck 状态。
2.4 MetaSchema 与配置版本写入约束
MetaSchema 是 MetaSchema BC(独立模块)的治理版本,不是 Content 普通内容状态。
硬约束:
- MetaSchema 发布、回滚、停用和影响预览只能由 MetaSchema facade-api 写入,并进入高危审计。admin 写入全局定义,用户可在作品级覆盖扩展字段,业务模块通过 facade-api 只读消费。
- 如果物理表因 yudao-cloud fork 或旧模块兼容暂落 Content,Content 也只能承载/消费投影,不能绕过 MetaSchema facade-api 修改字段结构、可见性、AI 上下文或导出语义。
- MetaSchema 版本变化只能让投影、任务、上下文组装、导出和知识确认进入 stale 或 disabled,不能自动改写正文、知识、规划或 Narrative State Canonical。
3. 账号、权限和安全状态
3.1 用户状态
| 状态 | 含义 | 允许进入方式 | 允许离开方式 |
|---|---|---|---|
| active | 正常可用 | 注册完成、撤销删除 | pending_deletion / suspended |
| pending_deletion | 用户申请删除,处于缓冲期 | 用户本人确认删除 | active / deleted |
| suspended | 安全或合规限制 | 管理员治理动作 | active / deleted |
| deleted | 已删除或匿名化完成 | 删除任务完成 | 终态 |
硬约束:
- 删除、封禁、恢复都必须写审计。
- 删除不得破坏法务、审计、交易、授权和安全留存例外。
- 管理员不能通过用户状态绕过作品事实确认。
3.2 安全事件状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| detected | 发现风险 | pending_user_confirm / resolved / dismissed |
| pending_user_confirm | 等待用户本人确认 | resolved / expired |
| resolved | 已处理 | 终态 |
| expired | 确认过期 | 终态或重新发起 |
| dismissed | 被有权角色关闭 | 终态 |
硬约束:
- 敏感导出、下载、二次验证、异常登录和凭证失效必须进入安全事件或下载审计。
- 安全事件只能限制权限或提示用户,不能直接改写作品正文、知识或市场资产事实。
3.3 个人中心聚合状态
个人中心不是事实 owner,但它聚合多个 owner 的账户视图。
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| fresh | 聚合结果与 owner 数据一致 | stale / hidden |
| stale | owner 数据、授权、用量或安全状态变化,等待刷新 | fresh / hidden |
| hidden | 权限或隐私限制导致不可展示 | fresh / stale |
硬约束:
- Account Profile 和会话安全归 Identity/Auth;Usage Record、Entitlement Snapshot、Personal Center Account Summary、下载审计归 Account/Usage/Audit。
- License Record、Purchase Record、Publish Record、Asset Summary 必须从 Marketplace/Asset、Agent、Knowledge 或 Work owner 聚合,个人中心不能反写这些 owner 事实。
- Security Event Export 只能导出用户本人有权访问的安全事件摘要,导出任务和下载凭证仍受导出状态机约束。
4. 作品、正文和导入解析状态
4.1 作品生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| active | 正常创作中 | read_only / archived / pending_deletion |
| read_only | 权限、来源、封禁、召回或安全原因导致只读 | active / archived / pending_deletion |
| archived | 用户归档 | active / pending_deletion |
| pending_deletion | 用户请求删除,等待影响预览或缓冲期结束 | active / deleted |
| deleted | 已删除或按策略匿名化 | 终态 |
硬约束:
- 作品删除、归档、恢复必须先做影响预览,覆盖章节、正文、规划、Local KB、导出任务、市场发布状态、知识来源绑定、智能体槽位和运行中任务。
- 已发布为市场作品资产或存在授权记录的作品,删除不能直接破坏市场审计、授权记录、发布快照和法务留存例外。
- read_only 只能限制新写入、新生成、新导出或新绑定,不能静默改写已确认 Canonical。
4.2 章节生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| active | 正常可编辑 | archived / pending_deletion |
| archived | 章节归档或隐藏 | active / pending_deletion |
| pending_deletion | 等待删除影响预览或确认 | active / deleted |
| deleted | 已删除或按策略移除 | 终态 |
硬约束:
- 删除章节必须处理 Block、候选、知识草稿、章节解析结果、规划项、叙事状态和投影影响。
- 已确认知识不自动回滚;如果来源章节被删除,相关来源快照进入 stale 或 disabled,后续来源型确认和导出按来源状态限制。
4.3 正式规划项与叙事状态生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| active | 当前正式可用 | superseded / invalidated / archived |
| superseded | 被新规划或新叙事状态替代 | archived |
| invalidated | 来源、章节、角色、事件或权限变化导致需重验 | active / archived |
| archived | 历史记录 | 终态 |
硬约束:
- 正式规划项只能来自用户确认、用户手动保存或明确 owner 写入规则。
- Narrative State 必须有真实持久化载体,不能只靠 MetaSchema。
- 规划项和 Narrative State 进入 AI 上下文前必须校验来源、版本、可见性和
aiContext语义。
4.4 作品导入状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| not_imported | 未导入旧稿 | importing |
| importing | 导入中 | imported / import_failed / canceled |
| imported | 导入完成,正文已初始化 | parsing / archived |
| import_failed | 导入失败 | importing / archived |
| canceled | 用户取消导入 | 终态或重新导入 |
硬约束:
- 导入正文可以初始化 Canonical 正文。
- 导入失败不得留下半写入正文;若支持分批导入,必须能解释已写范围和回退范围。
- 导入后的解析结果仍进入 Shadow,不直接写 Local KB。
4.5 全书解析任务状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| not_parsed | 未开始解析 | queued |
| queued | 已排队 | parsing / canceled |
| parsing | 解析中 | parsed / parse_failed / canceled |
| parsed | 已完成一次解析结果生成 | 终态或新版本重新解析任务 |
| parse_failed | 解析失败 | queued / canceled |
| canceled | 已取消 | 终态 |
硬约束:
- Import task/context 归 Work/Content;Parse Job 和 Chapter Parse Result 归 AI Orchestration;Chapter Review 是解析结果审阅态;Knowledge BC 只在章节审阅确认后创建或更新 Knowledge Draft。
- 解析任务只生成章节解析结果,不写 Canonical 知识,也不直接创建正式 Knowledge。
- 拆分切块、静态检查、入 RAG 和解析保护链路是系统保护节点,用户智能体不可替换。
- 重新解析必须形成新解析批次或版本,不得混用旧章节确认状态。
4.6 文本块写入状态
文本块(Block)本身不需要复杂生命周期,但每次写入必须满足:
- 必须带 expectedRevision。
- expectedRevision 必须等于当前 revision。
- 成功后 revision 单调递增。
- 写入后可触发异步提取或投影,但异步失败不得回滚正文。
- 如果正文来自 AI、市场智能体/知识库、外部知识、授权知识来源或未来已开启的作品资产参考,当前正文 revision 必须写 Block Source Attribution,后续知识草稿、生成上下文、导出和来源传播都必须从当前正文追溯该来源。
5. AI 任务、候选和规划状态
5.1 AI 生成任务状态
queued -> running -> succeeded -> terminal
queued -> canceled -> terminal
running -> failed / canceled
硬约束:
- 任务启动时必须固化配置快照、系统功能链路版本、智能体槽位快照、知识来源授权快照和上下文摘要。
- 任务启动时必须生成 Agent Runtime Permission Envelope,所有工具调用、上下文读取和外发请求都由服务端执行边界校验。
- 输入合规、权限过滤、来源状态校验、质量门控和输出合规不可绕过。
- 任务成功只能生成候选、草稿、风险、质量结果或记录,不能直接写正文、规划正式项或 Local KB。
5.2 AI 候选生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| pending_review | 待用户处理 | accepted_as_is / merged_after_edit / discarded / expired / invalidated |
| accepted_as_is | 原样接受,正文写入成功 | archived |
| merged_after_edit | 修改后合并,正文写入成功 | archived |
| discarded | 用户丢弃 | archived |
| expired | 超时过期 | archived |
| invalidated | 来源、权限、文本 revision、合规或质量状态变化导致不可接受 | archived 或重新生成 |
| archived | 终态历史 | 终态 |
硬约束:
- 候选接受前不改正文。
- 原样接受或修改后合并只写正文 Canonical 和候选 Archive。
- 如果候选包含 AI、市场智能体/知识库、外部知识、授权知识来源或未来已开启的作品资产参考,接受或合并后写入的正文 revision 必须同步写 Block Source Attribution。
- 接受候选不自动确认知识草稿;关联草稿保持待确认或因修改后合并失效。
- 修改后合并必须让旧知识草稿失效,并基于最终正文重新提取。
- 候选来源撤权、下架、召回、owner 缺失、文本 revision 冲突或合规阻断时,接受和合并禁用。
5.2.1 正文候选的实验隔离与接受子状态
正文实验候选和生产候选共享检测规则,但不共享接受资格。
| 对象 | 允许流转 | 不可绕过约束 |
|---|---|---|
| 诊断/评测正文候选 | draft -> checking -> passed / rejected / failed / invalid_unstable |
acceptanceEligible=false 为不变量;passed 只表示本次检测或评测完成,候选永远不能进入 accept_preflight 或 Canonical |
| 生产正文候选版本 | draft -> checking -> shadow_ready -> accept_preflight -> accepted_as_is / merged_after_edit / revision_conflict / authorization_stale / source_stale / quality_stale |
只有 detector 绿且报告绑定当前 candidateVersion、candidateSha256、contextSnapshotSha256 和 qualityPolicyVersion,才能进入 shadow_ready |
| 用户编辑版本 | shadow_ready -> edited_candidate -> checking |
编辑必须创建严格递增的新 candidateVersion;旧版本和旧 detector 报告立即失去接受资格,不允许“改完直接合并” |
accept_preflight 只允许 mode=production、acceptanceEligible=true 的当前版本进入,并实时校验候选未过期、detector 绿证据、上下文快照、授权、来源状态、策略版本和 expectedRevision。写入 Canonical 必须采用 compare-and-set(CAS):服务端记录同时匹配 runId + attempt + candidateVersion + candidateSha256 + currentState + expectedRevision 才能原子递增 Block revision,并按用户决策迁入 accepted_as_is 或 merged_after_edit 后归档。旧 attempt、旧 candidateVersion、迟到结果和重复事件只能返回冲突或幂等旧结果,不能覆盖当前候选或正文。
实验台只验证上述状态合同,不写正式正文库,不修改产品 API、Flyway 或业务数据库结构。产品化必须在正文 Gate B 通过后另立计划;Gate B 通过前不得启动细纲智能体真实能力验收。接受命令的具体前置与事务边界只引用 专题-01 §6,本文件不重复定义。
5.3 规划候选生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| pending_review | 待用户选择 | confirmed / edited_and_confirmed / discarded / invalidated / expired |
| confirmed | 用户确认进入正式规划 | archived |
| edited_and_confirmed | 用户修改后进入正式规划 | archived |
| discarded | 用户忽略 | archived |
| invalidated | 来源、版本或权限变化 | 重新生成或 archived |
| expired | 超时 | archived |
硬约束:
- 规划候选确认前不得进入后续生成上下文。
- 规划候选来源失效、授权撤销、下架或召回时,确认禁用。
- 确认后的规划项必须保留来源和用户取舍。
6. 知识草稿、知识确认和全书解析章节确认
6.1 知识草稿生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| pending_review | 待用户处理 | confirmed_from_source / confirmed_after_edit / rewritten_as_user_fact / ignored / stale / blocked / expired |
| confirmed_from_source | 来源事实确认,写入 Local KB | archived |
| confirmed_after_edit | 修改来源事实后确认,写入 Local KB | archived |
| rewritten_as_user_fact | 用户走独立原创/自有事实确认路径 | archived 或 pending_review |
| ignored | 用户忽略 | archived |
| stale | 来源快照失效 | 重新提取 / archived |
| blocked | 授权、召回、合规、隐私或冲突阻断 | archived 或待用户处理 |
| expired | 超时 | archived |
| archived | 终态历史 | 终态 |
硬约束:
- 知识草稿必须携带来源快照、上游 lineage、授权快照、风险标记和来源状态。
- 来源型确认必须要求来源 active、授权有效、未下架、未召回、无阻断冲突。
- “改写为用户自有事实”不能删除 prior lineage、授权快照、召回状态和风险标记;撤权、召回或权利不清来源不能只靠改写解除限制。
- 知识确认成功必须写 Local KB 正式知识、属性变更历史、审计和投影事件。
- 忽略、过期、阻断、stale 不得写 Local KB。
6.2 全书解析章节审阅生命周期
全书解析章节确认是“解析审阅确认”,不是“知识入库确认”。
parse_job:succeeded
-> chapter_review(pending_review, parse_job_id + chapter_id)
-> confirm_review -> review_confirmed + create_or_update knowledge_drafts
-> reject_review -> review_rejected
-> stale / blocked / expired
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| pending_review | 章节解析结果待审阅 | review_confirmed / review_rejected / stale / blocked / expired |
| review_confirmed | 用户确认该章节解析审阅结果 | 终态;对应知识草稿进入 pending_review |
| review_rejected | 用户驳回该章节解析结果 | 终态 |
| stale | 导入正文、章节内容、来源快照或解析版本变化 | 重新解析或终态 |
| blocked | 冲突、授权、来源或校验失败 | 重试 / 驳回 |
| expired | 超时未处理 | 终态或重新解析 |
硬约束:
- Parse Job 和 Chapter Parse Result 归 AI Orchestration BC;Chapter Review 是该解析结果的审阅状态;Knowledge BC 只在审阅确认后创建或更新 Knowledge Draft。
- 批量边界固定为 parse_job_id + chapter_id。
- 同一章节内审阅确认 all-or-nothing。
- 任一条来源失效、冲突、校验失败或导入失败,整章确认失败。
- 章节确认不写 Canonical 知识,不写 Narrative State Canonical。
- 章节确认成功只标记解析审阅结果已确认,并产生或更新待确认知识草稿。
- 正式知识仍由知识草稿确认链路写入 Local KB。
7. 知识库状态
7.1 知识库版本状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| draft | 创建中 | processing / archived |
| processing | 资料处理、校验、切块、索引中 | active / processing_failed / disabled |
| active | 可按授权使用 | disabled / archived / processing |
| processing_failed | 处理失败 | processing / disabled / archived |
| disabled | 停用 | active / archived |
| archived | 归档 | 终态 |
硬约束:
- 全局知识库 authority 由管理员治理;普通用户只能看到授权范围。
- 用户知识库 owner 是普通用户;已授权或已安装市场知识库不能被当作用户自有资产再发布。
- 资料处理失败不得进入生成上下文。
- 知识库删除、停用、撤权、下架或召回必须触发来源状态传播。
7.2 知识来源绑定状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| prechecking | 绑定前校验 | active / rejected / canceled |
| active | 可作为作品知识来源 | disabled / revoked |
| disabled | 用户停用或系统停用(来源变化时直接决策) | active / revoked |
| revoked | 授权撤销、下架或召回 | 终态或重新授权新绑定 |
| rejected | 预检失败 | 终态 |
| canceled | 用户取消 | 终态 |
硬约束:
- 绑定只授予检索或生成来源可用性。
- 绑定不写正文、不写规划、不写 Local KB。
- 每个作品绑定必须固化知识库版本、授权快照、用途范围和来源状态。
8. 智能体和槽位状态
8.1 智能体版本生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| draft | 编辑中 | testing / review / active / archived |
| testing | 试用隔离执行 | draft / review / active |
| review | 高风险或市场发布复核 | active / rejected / draft |
| active | 可被使用 | disabled / superseded / archived |
| disabled | 停用 | active / archived |
| rejected | 复核驳回 | draft / archived |
| superseded | 被新版本替代 | archived |
| archived | 归档 | 终态 |
硬约束:
- 扩大工具授权、扩大真实上下文外发、改变输出合同、改变默认系统智能体必须进入高风险复核或灰度。
- 用户智能体和市场智能体默认不可信,试用必须隔离。
- 智能体版本不能修改保护节点分类。
- 智能体版本只能声明需要的工具和上下文范围;实际运行权限以服务端生成的 Agent Runtime Permission Envelope 为准。
8.2 槽位绑定生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| using_default | 使用系统默认子智能体 | prechecking_override |
| prechecking_override | 校验用户智能体或市场智能体是否兼容槽位 | active_override / rejected / canceled |
| active_override | 使用用户选择的子智能体 | using_default / disabled |
| rejected | 预检失败 | using_default |
| disabled | 撤权、越权、输出不合约或安全阻断(来源变化时直接决策) | using_default |
| canceled | 用户取消替换 | using_default |
硬约束:
- 只能替换开放槽位中的子智能体。
- 输入输出合规、权限过滤、拆分切块、入 RAG、语义围栏、静态检查、Shadow -> Canonical、质量门控等保护节点不可替换。
- 替换失败、撤权、越权、空输出或输出不合约时,只能回退默认子智能体或阻断当前链路,不能扩大权限。
- active_override 进入运行前必须生成运行时权限包,绑定 actor、work、slot、agentVersion、allowedTools、allowedContextScopes、egressPolicy、budget、sourceSnapshot 和审计要求。
8.3 工具授权与运行时权限包约束
工具授权(Tool Grant)和 Agent Runtime Permission Envelope 是智能体安全边界,不是 AI runtime 自管理状态。
硬约束:
- Agent 版本只能声明需要的工具、上下文和外发范围;Tool Grant 由 Agent authority 与 Security facade 计算权限上限。
- 运行任务启动时,Security facade 必须结合 actor、owner、slot、agentVersion、来源状态、授权快照、预算和风险状态签发不可变 Agent Runtime Permission Envelope。
- AI Orchestration、Integration 和 tool broker 只能校验并消费运行时权限包,不能自行新增工具、扩大上下文、改变外发策略或复用旧权限包。
- Tool Grant、授权快照、来源状态、槽位版本或保护节点规则变化后,相关运行任务和槽位绑定必须进入 disabled、回退默认或阻断。
9. 市场资产、授权、安装和治理状态
9.1 市场发布状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| draft | 发布草稿 | checking / canceled |
| checking | 发布检查中 | submitted / needs_changes / rejected / canceled |
| submitted | 已提交审核 | under_review / withdrawn |
| under_review | 审核中 | approved / rejected / needs_changes |
| needs_changes | 需补材料 | submitted / withdrawn |
| approved | 审核通过,可上架 | listed / suspended |
| listed | 已上架 | delisted / recalled / suspended / version_superseded |
| rejected | 审核驳回 | draft / terminal |
| withdrawn | 发布者撤回 | terminal |
| delisted | 下架 | appeal_pending / restored / recalled |
| recalled | 召回 | appeal_pending / restored / terminal |
| suspended | 临时限制展示或安装 | listed / delisted / recalled |
| restored | 恢复展示或使用 | listed 或受限 listed |
| version_superseded | 被新版本替代 | archived |
| archived | 归档 | 终态 |
硬约束:
- 发布必须检查资产类型、权利声明、许可范围、公开范围、来源追踪摘要和安全风险。
- submitted 必须原子消费未过期且匹配当前资产版本、发布草稿版本、材料 hash、权利声明和安全检查结果的 Publish Check Snapshot。
- 发布材料、资产版本、公开范围、许可或来源摘要变化后,旧 Publish Check Snapshot 立即失效,必须重新检查。
- 作品资产必须区分 sourceWorkOwner、marketplaceAssetRecord、publishSnapshot 和 targetWorkOwner。作品资产只有在作品发布准备能力、作品资产 owner 角色、使用预检和来源承接能力闭合后,才允许进入可提交和可审核状态;否则只能保留阅读、收藏和授权记录。
- 恢复、部分恢复或撤销召回不是反向按钮,必须重跑权利、隐私、工具授权、来源状态和版本检查,并重新传播状态。
- 市场审核、合规处置、安全审计和系统配置必须分权,不能自批自审。
9.2 授权状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| available | 可获取 | authorized / unavailable |
| authorized | 用户已获得许可 | installed(仅智能体和知识库)/ revoked / expired |
| installed | 智能体或知识库已加入账户可用资产 | linked_or_bound / disabled / revoked |
| linked_or_bound | 已关联作品槽位或绑定知识来源 | disabled / revoked |
| disabled | 用户停用或系统停用(来源变化时直接决策) | installed / revoked |
| revoked | 授权撤销、下架或召回限制 | 终态或重新授权 |
| expired | 授权到期 | 重新授权或终态 |
| unavailable | 不可获取 | available |
硬约束:
- License 不等于 Install。
- Install 不等于作品关联或知识绑定。
- 关联智能体必须通过 Agent Slot Binding 预检。
- 绑定知识库必须通过 Knowledge Source Binding 预检。
- 作品资产授权当前不进入安装、绑定、模板化、参考来源或 AI 上下文链路。
- 作品资产模板化、参考来源写入和 AI 上下文绑定受显式 Feature Gate 控制,默认全部关闭;开启前必须完成 ADR、
产品-02Cowner、Schema/API、使用预检、来源 lineage、授权快照、导出限制和状态机承接。
产品可见状态到架构状态的映射:
| 产品可见状态 | 架构状态 | 后续 API 枚举 |
|---|---|---|
| 可发现 | available | 后端阶段定义 |
| 已授权 | authorized | 后端阶段定义 |
| 已安装到账户 | installed | 后端阶段定义 |
| 已绑定到作品 / 已关联槽位 | linked_or_bound | 后端阶段定义 |
| 已用于生成 / 检索 | 不单独成授权状态,记录在 Usage Record 和 Source Lineage | 后端阶段定义 |
| 已撤权 / 已召回 / 已下架限制 | revoked / recalled / delisted 来源状态 | 后端阶段定义 |
9.3 申诉状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| not_open | 未申诉 | appeal_submitted |
| appeal_submitted | 已提交 | under_review / withdrawn |
| under_review | 申诉审核中 | upheld / overturned / needs_more_info |
| needs_more_info | 需补材料 | under_review / withdrawn |
| upheld | 维持治理动作 | 终态 |
| overturned | 撤销或调整治理动作 | restored 或部分恢复 |
| withdrawn | 申诉撤回 | 终态 |
硬约束:
- 申诉不自动恢复资产。
- 申诉通过后的恢复仍要走重检、影响预览、复核和来源传播。
- 申诉处理人不能是发布者、直接受益人或原治理动作的利益冲突角色。
10. Handoff 状态
10.1 Handoff Token 生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| issued | 来源空间已生成 | consumed / expired / canceled |
| consumed | 目标空间已消费并生成 session | 终态 |
| expired | 超时 | 终态 |
| canceled | 用户取消或来源状态变化 | 终态 |
10.2 Handoff Session 生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| active | 目标空间落地 | prechecked / canceled / expired |
| prechecked | 目标 owner 完成预检 | confirmed / rejected / canceled |
| confirmed | 用户确认,准备原子消费 | consumed / failed |
| consumed | 写入目标 owner 事实成功 | 终态 |
| rejected | 预检失败或权限/授权/对象/版本/来源变化导致不可继续 | 终态 |
| failed | 写入失败 | 终态或重新发起 |
| canceled | 用户取消 | 终态 |
| expired | 超时 | 终态 |
硬约束:
- Handoff 是应用层协议:来源 BC 只签发一次性 token,目标 owner BC 创建 session 和 precheck,Account/Usage/Audit 只记录跳转和消费审计。
- Market 作为来源空间时,只能记录来源侧 handoff、listing/license/install/source status 和返回点;目标 owner 的 target precheck 由目标 BC 创建和消费。
- Handoff 必须绑定 actor、目标 owner、对象、动作、版本、授权快照、返回点和取消状态。
- 来源空间不能替目标 owner 写最终事实。
- 重复消费只有在同 actor、同 owner、同对象、同动作、同版本、同授权快照且未取消时,才允许幂等返回旧结果。
- 目标空间落地后必须重新校验权限、授权快照、对象状态、版本和来源状态。
- token 缺失、上下文为空、目标 owner 不存在、precheck 过期、目标写入失败或返回点失效时,必须拒绝写入并返回来源空间刷新状态。
11. 来源状态传播
11.1 触发事件
来源传播由以下事件触发:
- 市场资产下架、召回、撤权、恢复、部分恢复。
- 全局知识库停用、授权撤销、版本变化。
- 用户知识库删除、停用、资料处理失败、发布许可变化。
- 智能体撤权、版本停用、工具授权变化、输出合同变化。
- 作品资产 owner 缺失、发布快照失效、权限转移不明。
- 合规、安全、侵权、隐私或权利风险阻断。
11.2 传播任务状态
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| queued | 已创建传播任务 | running / canceled |
| running | 正在按目标处理 | succeeded / partial_completed / failed / canceled |
| partial_completed | 部分目标处理完成,存在失败或跳过目标 | running / succeeded / failed |
| succeeded | 所有必须目标已处理 | 终态 |
| failed | 传播失败 | retry / terminal |
| canceled | 任务取消 | 终态 |
硬约束:
- Source Status Event 必须有来源 owner、source id、source version、事件类型、原因、幂等键和影响范围。
- Authorization Snapshot 必须在使用时固化 actor、owner、source version、license/policy、allowed purpose、forbidden purpose、status、checkedAt、expiresAt 或重验条件;消费方只能引用快照 id 或不可变指纹。
- Source Propagation Job 必须按目标对象记录处理状态;失败目标默认禁止新使用,直到重试成功或人工关闭。
- 传播任务不得修改已确认 Canonical,只能限制后续使用、标记需重验、作废未确认对象或失效下载凭证。
11.3 传播目标
| 目标 | 处理方式 | 不允许 |
|---|---|---|
| AI 候选 / 规划候选 | 标记来源不可用,禁用接受或确认 | 自动删除正文 |
| 知识草稿 | 禁用来源型确认,保留只读摘要和 lineage | 删除 prior lineage |
| 章节解析结果 | 标记需重验或阻断章节确认 | 部分确认 |
| 作品知识来源绑定 | disabled / revoked | 继续用于新生成 |
| Agent Slot Binding | 回退默认 / disabled | 扩大权限继续运行 |
| 已安装智能体 / 知识库 | 停用、只读或 disabled | 自动迁移为用户自有资产 |
| 运行中任务 | 取消或阻断 | 继续消费旧授权快照 |
| 导出任务 / 下载凭证 | 失败、过滤、重验或失效 | 下载受限内容 |
| 个人中心记录 | 展示异常、治理结果和 owner 跳转 | 替 owner 空间写事实 |
| 市场记录和发布者记录 | 更新治理结果、申诉入口和影响摘要 | 隐藏审计 |
硬约束:
- 来源传播不得改写已确认 Canonical。
- 来源传播必须可观察、可重试、可审计。
- 传播失败时,系统宁可禁用新使用,也不能继续使用受限来源。
12. 导出和下载状态
12.1 导出任务生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| draft | 用户选择导出范围 | prechecking / canceled |
| prechecking | 权限、owner、来源、许可、导出范围校验 | queued / rejected / canceled |
| queued | 已创建导出任务 | running / canceled |
| running | 生成导出包 | ready / failed / canceled |
| ready | 导出包生成,等待下载 | downloaded / expired / revoked |
| downloaded | 用户已下载 | 终态 |
| rejected | 预检失败 | 终态或重新选择范围 |
| failed | 生成失败 | 终态或重新导出 |
| canceled | 取消 | 终态 |
| expired | 下载窗口过期 | 终态 |
| revoked | 来源或权限变化导致不可下载 | 终态 |
硬约束:
- Work Export Job 归 Work/Content,Knowledge Export Job 归 Knowledge,Account Export Job 归 Account/Usage/Audit;Account/Usage/Audit 可以统一下载凭证和下载审计,但不能替 owner BC 通过预检或生成导出内容。
- 创建、生成完成前和下载时都必须重验用户权限、对象 owner、来源授权、市场召回状态和导出许可。
- 来源撤权、下架、召回、合规阻断或权限变化时,导出任务必须失败、过滤受限内容或要求用户重新选择范围。
- 导出任务不得把受限来源洗成普通正文或普通知识。
- 导出包必须加密存储、按 owner / tenant 隔离、只允许服务端代理下载,不暴露永久对象地址。
- canceled、expired、revoked 或权限变化后,导出包本体必须按销毁或保留策略失效;管理员只能查看脱敏摘要,不能直接获取用户导出包。
12.2 下载凭证生命周期
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| issued | 已签发短期凭证 | used / expired / revoked |
| used | 已使用 | 终态 |
| expired | 过期 | 终态 |
| revoked | 权限、来源或任务状态变化 | 终态 |
硬约束:
- 下载凭证必须绑定 actor、导出任务、导出范围、对象版本和授权快照。
- 下载凭证过期、重复使用、actor 不匹配、任务作废或授权快照不匹配时,必须拒绝下载并写安全审计。
13. New-API 与外部调用状态
13.1 New-API 绑定和调用归属
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| unbound | Muse 用户未绑定网关用户 | binding_requested |
| binding_requested | 绑定请求已发起 | bound / binding_failed |
| bound | 绑定有效 | disabled |
| disabled | 停用(网关状态、权益、配额或归属异常时直接停用) | bound |
| binding_failed | 绑定失败 | binding_requested |
调用归属状态:
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| pending_attribution | 等待归属 | attributed / attribution_failed / needs_manual_review |
| attributed | 已归属到用户、作品、任务、智能体、知识来源或市场授权 | 终态 |
| attribution_failed | 自动归属失败 | pending_attribution / needs_manual_review |
| needs_manual_review | 需人工处理 | attributed / closed_unattributed |
| closed_unattributed | 无法归属,保留异常记录 | 终态 |
硬约束:
- New-API 是外部网关权威,模型供应商路由、底层成本日志和网关调用权威记录以 New-API 为准。
- 执行链是 AI Orchestration -> Integration Execution Facade -> New-API -> AI Task Result;归属链是 Integration Call Log -> Account/Usage/Audit attribution。
- Muse 只保存本地绑定、配置请求、调用归属、correlationId、idempotencyKey、重试组和异常状态。
- New-API 服务凭据必须只保存在密钥管理系统中,Muse 只持有凭据引用;凭据按环境隔离、最小权限、可轮换、可吊销,不得进入日志、Prompt、候选、导出包或用户可见错误。
- New-API 服务账号不得拥有供应商路由、供应商密钥或网关底层成本策略的管理权限,除非后续单独立项并更新架构边界。
- 同一外部调用不得重复归属、重复扣减或重复补偿。
- 用户取消、系统重试、合规阻断、资产撤权或下架导致的调用结果必须能区分待归属、已归属、异常、补偿待处理或关闭。
14. 任务治理和审计状态
14.1 管理员可治理任务
可治理任务包括:
- 全局知识资料处理。
- 用户知识库资料处理。
- 市场发布检查。
- 来源状态传播和召回传播。
- 质量评估。
- 导出审计摘要。
- New-API 调用归属。
管理员治理状态:
| 状态 | 含义 | 允许离开方式 |
|---|---|---|
| observable | 可观察 | retry_requested / canceled / escalated / closed |
| retry_requested | 请求重试 | running / failed / closed |
| escalated | 升级人工处理 | closed / retry_requested |
| closed | 已关闭 | 终态 |
硬约束:
- 管理员任务详情只能显示脱敏摘要、状态、错误类型、对象编号、来源状态和治理动作。
- 不展示用户正文全文、完整 Prompt、完整模型响应、Token、密钥或正文级上下文。
- 任务治理不能绕过用户确认、owner 边界或来源授权。
- 本阶段无管理员 break-glass 正文访问能力。确需后续设计时,必须单独定义合规访问申请、双人复核、step-up 验证、时间盒、字段级范围、只读水印、用户通知或延迟通知和全量审计。
14.2 审计约束
必须进入 append-only 审计的动作:
- 发布 MetaSchema、系统智能体、系统功能编排、保护节点、开放槽位、质量策略。
- 管理员授权、权限组变更、用户封禁、恢复和高危数据导出。
- 全局知识授权、撤权、停用和版本回滚。
- 市场审核、下架、召回、恢复、部分恢复、申诉终裁。
- 知识确认、来源型改写为自有事实、敏感导出、下载拒绝。
- New-API 权益配置请求、调用归属异常人工处理。
审计不得记录正文全文、完整密钥、完整外部凭证或不必要的敏感内容。
审计治理约束:
- 审计写入、读取、导出和保留策略必须分权。
- 普通管理员不得删除、改写或覆盖高危审计。
- 高危审计应采用 WORM、哈希链或等价防篡改机制。
- 审计导出必须脱敏、限范围、限时效,并记录审计访问审计。
- 留存期、删除例外、法务保留和用户删除请求的冲突处理由后端/合规阶段细化,但不能破坏高危审计可追溯性。
15. 非谈判项
以下规则不能被实现绕过:
- AI 不得直接写 Canonical。
- 用户智能体、市场智能体和工作流智能体不得替换系统保护节点。
- 输入合规、输出合规、权限过滤、拆分切块、入 RAG、语义围栏、静态检查、Shadow -> Canonical、质量门控不可开放为普通槽位。
- 正文 Block 写入必须有 revision 并发保护。
- 接受 AI 候选只写正文和候选归档,不自动确认知识草稿。
- 修改后合并必须让旧知识草稿失效,并基于最终正文重新提取。
- 知识草稿确认前必须校验来源快照、授权快照、召回/下架/撤权状态和冲突状态。
- 全书解析章节确认不写 Canonical 知识,只产生或更新待确认知识草稿。
- 知识库绑定只授予检索或生成来源可用性,不写 Local KB。
- 市场授权、购买、安装、收藏或绑定不等于所有权转移,也不等于写作品事实。
- 作品资产当前只允许阅读、收藏和授权记录;模板化、参考来源写入和 AI 上下文绑定受显式 Feature Gate 控制,默认关闭。
- Handoff 不能成为绕过权限、预检、确认、审计和 owner 写入边界的通道。
- 来源撤权、下架、召回、owner 缺失或合规阻断必须传播到候选、草稿、绑定、安装、运行任务、导出和个人中心记录。
- 已确认 Canonical 不自动回滚,但受限来源不得继续用于新生成、新绑定、新导出许可范围或新的来源型知识确认。
- New-API 是外部网关权威;Muse 不复制其供应商路由、底层成本日志和网关调用权威记录。
- 用量记录、权益快照和个人中心聚合不能替代业务事实 owner,也不能替代 New-API 权威成本。
- 管理员默认不能查看或修改用户私有正文、用户智能体内容或用户知识库内容;合规处置必须最小权限和审计。
- 个人中心是聚合和跳转入口,不是作品、智能体、知识库或市场事实 owner。
- 用户可见投影和检索投影是读模型,不得反向覆盖 Canonical。
- 所有高危治理动作必须支持影响预览、分权复核、审计和可回滚或可恢复策略。
- 正文 revision 如果包含 AI、市场智能体/知识库、外部知识、授权知识来源或未来已开启的作品资产参考,必须保留 Block Source Attribution。
- 智能体工具调用和上下文访问必须由服务端运行时权限包校验,不能由前端、智能体或 AI runtime 自报。
- 导出包必须加密、owner 隔离、短期可取、可失效或可销毁,不能暴露永久对象地址。
- New-API 服务凭据必须最小权限、密钥管理、环境隔离、可轮换且不得进入日志或导出。
- 高危审计必须防篡改,审计读取和导出本身也必须被审计。
16. 关联阅读
- 系统全貌与 BC:
架构-01-系统全貌与边界上下文.md - 核心模型与双轨边界:
架构-02-核心数据结构与双轨模型.md - 管理员操作流程:
流程-01A-管理员操作流程(操作视角).md - 普通用户操作流程:
流程-01B-普通用户操作流程(操作视角).md - 管理员系统处理流程:
流程-02A-管理员系统处理流程(系统视角).md - 普通用户系统处理流程:
流程-02B-普通用户系统处理流程(系统视角).md - 功能与交互边界:
产品-02-核心功能与交互边界.md