土法炼钢兴趣小组的算法知识备份

【系统架构设计】AI 原生开发流程:人机协同的架构实践

文章导航

分类入口
architecture
标签入口
#ai-native-workflow#human-in-the-loop#code-review#change-management#responsibility#agent#gates#conway

目录

Part XV 前三篇分别钉住三块积木:101 系统约束、102 流水线兜底、103 可读上下文。缺了第四块,组织仍会在日常里打架:谁可以让 Agent 改什么、何时必须人点头、出事算谁的

本文收束 Part XV:把人机分工、评审门槛与生产变更门禁编成 可审计流程。Agent 身份、委托链与工具级授权细节见 agent-identity,尤其 Human-in-the-Loop;LLM 作为在线依赖见 95。本文不写提示词技巧,不写法律意见——只写架构师能落地的责任面与状态机。

系列导航: ← 架构即 AI 上下文 · 系统架构设计索引 · Part XIV 不变量

相关专题: 康威定律 · ADR · SLO · agent-identity 落地架构


一、问题:吞吐上升之后,流程必须显式

1.1 隐式流程的破产

人写代码时代,许多团队靠隐式规范运转:资深审关键路径、新人改边角、生产变更走口头协调。AI 把「边角」与「关键」的边界模糊化——一次会话可以同时改 API、策略与迁移脚本。隐式流程的破产信号包括:

Conway 定律指出组织沟通结构映射到系统结构[1];AI 协作者加入后,若组织 没有 对应的沟通与批准结构,映射结果是任意的——通常表现为权限过大的默认路径。

1.2 本文核心问题

  1. 人机角色与责任面如何划分,才能既保吞吐又保审计?
  2. PR/生产变更的状态机应包含哪些硬门禁?
  3. 如何与 101–103、agent-identity HITL 组合,而不是另起一套口号?
  4. 责任归属争论停在哪条可辩护边界?

二、角色与责任面

2.1 角色

角色 做什么 不做什么
提议者(Agent 或人) 生成 diff、测试、说明;引用上下文路径 自批高风险合并;持有长期生产写权限
约束系统(101) 类型/契约/策略/沙箱默认生效 替人做产品权衡
流水线(102) 跑门禁、标失败语义、触发 canary 解释业务意图
上下文索引(103) 提供带版本的权威检索 自动把幻觉写回权威源(除非另有晋升流程)
审查者(人) 意图、权衡、高风险批准、责任承担 重复做机器已做的格式检查
值班/SRE 发布窗口、错误预算、回滚决策 代替功能 owner 做产品取舍

2.2 责任面(架构表达)

用三句话固定责任,避免事后扯皮:

  1. 机器可判定项 未绿,不得进入人审队列(节省人眼);
  2. 人审签字 覆盖「意图与风险接受」,不覆盖「保证无缺陷」;
  3. 生产事故 归因到 批准路径与身份,而不是「模型名字」——模型是工具;批准合并与放行发布的主体进入审计日志。

这与 agent-identity 的归因字段要求一致:哪个用户委托的哪个 Agent 做了什么[2]。开发期流程应复用同一归因思想:PR 元数据记录 generator=agent|humanapprover=policy_diff=


三、PR 与生产变更状态机

3.1 开发期(PR)

stateDiagram-v2
  [*] --> Draft: Agent_or_human_opens_PR
  Draft --> CI_Running: push
  CI_Running --> CI_Failed: hard_gate_red
  CI_Failed --> Draft: fix
  CI_Running --> Awaiting_Risk_Class: hard_gates_green
  Awaiting_Risk_Class --> Auto_Merge_Candidate: low_risk_policy
  Awaiting_Risk_Class --> Human_Review: high_risk_or_policy_widen
  Human_Review --> Changes_Requested: reject_or_ask
  Changes_Requested --> Draft: update
  Human_Review --> Approved: approve
  Auto_Merge_Candidate --> Approved: optional_light_review
  Approved --> Merged: merge
  Merged --> [*]

风险分级(与 101/102 同一尺子——副作用不可逆性):

级别 例子 门禁
文案、注释、测试补强(不删断言) CI 绿即可或轻量审
功能代码、非破坏 API 加字段 CI + 一人审
权限/策略放宽、迁移、多租户边界、密钥、支付 CI + 指定 owner 审 + 可要求双人

「为过测而删测试/放宽 schema」一律升为高风险。

3.2 生产期(发布)

stateDiagram-v2
  [*] --> Artifact_Ready: merge_builds_artifact
  Artifact_Ready --> Canary: progressive_rollout
  Canary --> Rolled_Back: SLI_breach
  Canary --> Full_Rollout: SLI_ok
  Rolled_Back --> [*]
  Full_Rollout --> [*]
  Artifact_Ready --> Blocked: error_budget_exhausted
  Blocked --> [*]

错误预算耗尽时冻结常规发布,见 28。AI 高频合并更需要这条冻结,否则 canary 永远在烧预算。

3.3 与 HITL 的衔接

运行中 Agent(客服改库、运维执行)的高风险步骤,用 agent-identity/05 的同步确认或异步审批。开发期 HITL 的对应物就是上表「高风险人审」与生产「发布窗口批准」。不要把两种 HITL 混成一个按钮:一个挡 工具副作用,一个挡 代码进入主干/生产


四、与 101–103 的组合装配

积木 在流程中的插入点
101 约束 CI 硬闸门;运行时默认身份最小权限;高风险工具沙箱
102 流水线 状态机中的 CI_Running、Canary、Rollback
103 上下文 Agent 开 PR 前的检索;人审时核对引用路径是否存在
本篇流程 风险分级、批准、归因、与 Conway 对齐的 owner

装配反模式:

落地参考架构可与 agent-identity/10 对齐:IdP + 策略引擎 + Agent 网关;开发期再加 必填 CI + CODEOWNERS + 发布控制器


五、争论:责任归属

5.1 双方常见主张

立场 主张 问题
厂商/模型责任 生成错误应由模型提供方负责 模型按提示与工具权限行事;权限是部署方配置
操作者全责 谁点合并谁负责 忽略平台未提供硬闸门时的系统过失
平台与操作者共责 闸门缺失属平台;越权批准属操作者 需在审计中可分拆

5.2 架构可辩护边界

在工程上可辩护、且与审计字段对齐的划分是:

  1. 平台责任:未提供或绕过可提供的硬约束(无契约校验、默认 admin、无可归因日志)导致的事故面;
  2. 批准者责任:在绿灯之后仍接受的高风险意图(放宽策略、破坏性迁移);
  3. 模型提供方:按其服务条款与缺陷披露流程处理模型层问题;不替代部署方的权限与门禁设计。

本站不提供法律责任结论;上表是 系统设计时的归因面,便于事后复盘写清「控制措施在哪一层缺失」。开放监管框架随司法辖区变化,工程上以 可证明的控制措施 为稳妥策略。


六、开放问题

  1. 多 Agent 协作变更的合并语义
    两个 Agent 并行改同一契约时,三方合并与意图冲突缺少标准协议(对比多人协作已有 Git 语义,但意图层无)。

  2. 自动晋升文档写回
    Agent 是否可以在合并后自动开「文档同步 PR」仍争议;与 103 开放问题相同,需人审晋升以免污染 SSOT。

  3. 跨组织 Agent
    供应商 Agent 提交 PR 时,委托链与责任面如何映射到内部 CODEOWNERS——身份模型见 agent-identity,流程模板仍不统一。


七、Part XV 收束

一句话
95 LLM 作为运行时依赖的超时、成本、编排
101 用类型/契约/策略/沙箱限制生成代码爆炸半径
102 用分层门禁与 canary/回滚兜住人审吞吐不足
103 用版本化 ADR/C4/spec/拓扑作权威上下文
104(本文) 用人机状态机与责任面把前三者编成可审计流程

100 不变量 的关系:Part XV 不推翻不变量,而是在「变更作者包含 AI」的前提下,把爆炸半径、反馈控制与可观测前提 操作化

落地检查清单

  1. PR 是否记录生成者/批准者/策略是否放宽?
  2. 高风险路径是否强制指定 owner,而非任意一人?
  3. CI 未绿是否无法进入人审?
  4. 生产是否有 canary + 错误预算冻结?
  5. 运行中 HITL 与开发期人审是否分开建模?
  6. 事故复盘是否能指出缺失的是约束、门禁、上下文还是批准?

参考资料

经典与工程文献

站内交叉

规范(边界)

核心文献(本主题)

文献 引用点
Conway 1968 组织结构映射系统结构
SRE / CD 变更门禁与渐进发布
agent-identity 系列 委托、HITL、归因

实验与数据


系列导航: ← 架构即 AI 上下文 · 系统架构设计索引 · 架构的不变量

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-07-29 · architecture

【系统架构设计】架构的不变量:穿越技术周期的设计原则

单体、微服务、边缘、AI 原生换的是部署形态与运行时组件,失败、尾延迟、一致性权衡、爆炸半径、反馈控制、组织同构与可观测性前提在二十年间并未消失。本文把 Part XIV 前沿篇收束为可核对的不变量清单,逐条链回本系列已写篇章与经典文献,并给出开放问题与自检用法。

2026-08-03 · architecture

【系统架构设计】AI 时代的工程基础设施:让 pipeline 替你兜底

人审吞吐跟不上 AI 变更速率时,质量只能前移到流水线。本文建立变更威胁模型,拆解 lint、类型、契约、策略、eval 与 canary 的门禁分层与失败语义,对照 Continuous Delivery 与 SRE 变更管理,并讨论 eval 能否替代代码评审的争论与开放问题。

2026-07-29 · architecture

【系统架构设计】AI 原生架构:LLM 时代的系统设计

当 LLM 从离线批处理变成在线运行时组件,超时预算、按 token 计费、非确定性输出与多轮 Agent 编排必须进入架构的一等公民。本文从依赖语义差异出发,衔接弹性与过载保护,讨论网关成本治理、结构化输出与人审闸门、checkpoint 恢复与隐私友好的可观测,并划定与 RAG、向量引擎及训练基础设施的分工边界。


By .