Coding Agent 工作流与长任务

共 18 题
#

1. 长周期 Coding Agent 如何保存目标、已改文件、测试证据、Checkpoint 和恢复条件

A 完全不保存状态,直接重跑
B 持久化目标、diff、测试证据与 Checkpoint,恢复前校验状态仍有效 ✓ 正确答案
C 只保存对话历史,其余重新生成
D 只保存已改文件,不校验测试
#

2. Sub-Agent 并行处理独立模块时,如何划分 Worktree、接口契约和合并顺序

A 提前对 Worktree 划分边界并冻结接口契约,按依赖拓扑排序合并 ✓ 正确答案
B 所有 Agent 在同一个分支随意修改
C 让每个 Agent 改完全部代码再统一处理
D 不规定接口,靠最后人工修复
#

3. Coding Agent 如何把 RFC/Issue 拆解为 Plan—Edit—Test—Review—Commit 状态机,避免“跳跃式”开发

A 加快代码生成速度
B 强制按阶段验证推进,避免跳跃式、未验证的开发 ✓ 正确答案
C 减少代码行数
D 让 Agent 一次提交全部改动
#

4. MCP 工具接入代码搜索、Issue 和 CI 时,怎样限制能力与可信数据范围

A 默认只读+最小权限,并区分可信数据与参考引用 ✓ 正确答案
B 开放全部读写能力
C 允许 Agent 任意修改 CI 配置
D 完全信任工具返回的所有内容
#

5. 计划与执行分离后,哪些路径扩大、依赖新增和危险命令必须重新获得批准

A 修改计划内已列出的同一文件
B 读取计划内声明的只读 API 数据
C 运行计划内已列出的测试命令
D 新增一个未声明的 npm 依赖并写入锁文件 ✓ 正确答案
#

6. Agent 上下文压缩后如何防止遗忘原始验收标准和已发现的失败证据

A 把验收标准与失败证据作为硬事实锚点单独持久化,压缩后以锚点为准 ✓ 正确答案
B 尽量压缩,减少上下文
C 完全依赖模型记忆
D 压缩后重新开始写代码
#

7. 计划与执行分离(Plan Mode vs Act Mode)在 Coding Agent 中的实现,计划产物、执行准入与回退机制如何设计

A 让 Agent 更快地写代码
B 减少人工介入
C 执行前先形成可审阅计划,通过批准后再限制范围执行,失败可回退到计划阶段 ✓ 正确答案
D 让 Agent 自由探索所有文件
#

8. Coding Agent 的 diff 大小控制(每次提交不应过大)应如何落地,任务切分、提交边界与合并策略

A 尽量一次提交所有改动
B 只关注最终 PR,忽略中间提交
C 提交时不做任何测试
D 把任务切分为可独立验证的小步骤,每个逻辑单元单独提交,按依赖合并 ✓ 正确答案
#

9. 如何从低风险仓库逐步引入 Coding Agent,并设置人工接管和退出条件

A 直接在所有仓库启用,不设限制
B 不设监控,出了问题再处理
C 只让 Agent 负责部署
D 从低风险仓库试点,设置人工接管与指标驱动的退出条件,并保留回滚 ✓ 正确答案
#

10. Coding Agent 的“循环执行”——重复失败、相同错误如何检测并强制人工干预

A 错误签名相同且状态无实质进展,触发后强制人工干预 ✓ 正确答案
B 执行次数足够多
C 只要输出有内容就正常
D 只看 token 消耗
#

11. Coding Agent 的工作目录(Worktree)、分支策略(Branch)与隔离环境应如何设计,避免多 Agent 并发冲突

A 所有 Agent 共用同一工作目录和分支
B 让 Agent 随意修改任何文件
C 每个 Agent 独立 worktree、独立分支与隔离环境,按契约与依赖顺序合并 ✓ 正确答案
D 不合并,各用各的
#

12. Coding Agent 的夜间批量任务(Nightly Run)应如何定义任务清单、验收标准与失败告警,避免无人值守误操作

A 让 Agent 自由探索任意任务
B 不做任何告警
C 失败后无限重试
D 明确有界任务清单、可自动判定的验收标准,危险操作禁用、重大失败自动中止并告警 ✓ 正确答案
#

13. AI SDK 5 中流式响应断线后客户端 reconnect 时,服务端应如何利用 lastMessageId / resume 标记精确续传而不是重放整段生成,如何处理 reasoning part 在续传时不可重新可见的特殊性

A 把 reasoning 视为已消费,续传只补 text/tool 等持久 part,reasoning 不可重新可见 ✓ 正确答案
B 续传时完整重放 reasoning
C 用 lastMessageId 无意义
D 放弃续传,整段重放
#

14. Coding Agent 编排多 MCP Server(Playwright MCP、Filesystem MCP、Sentry MCP)时,工具命名冲突与权限边界如何管理

A 用命名空间区分工具,按 Server 维护最小权限边界,按需挂载 ✓ 正确答案
B 所有工具同名,不区分
C 让 Server 互相访问密钥
D 同时挂载所有 Server 不设限制
#

15. AI SDK 5 的 useChat 在 abort 后应如何与服务端确认“已停止计费”——abort signal 仅终止前端消费,服务端是否真的取消生成、是否仍按已生成 token 计费,团队应如何接入网关层的 abort 传播与对账

A 把 abort 传播到网关/服务端向 Provider 取消,并用网关对账确认用量与账单一致 ✓ 正确答案
B 前端 abort 即可,服务端必然停止
C 不关心服务端是否继续
D 只在前端显示停止,不通知服务端
#

16. Cline、Roo Code、Cursor、Claude Code、Codex CLI 的工作流能力应如何用同一任务比较

A 每个工具用不同任务
B 统一任务与环境,定义能力维度,自动验收并控制变量 ✓ 正确答案
C 只看工具宣传话术
D 只比较 UI 美观
#

17. Vercel AI SDK 5 的 UIMessageStream 引入了强类型的 message parts(text / reasoning / tool-call / source / data / step-finish),前端应如何为每个 part 声明独立的渲染器、断线续传标识与 schema 版本,才能避免不同模型返回的 part 顺序差异造成 UI 闪烁

A 强制所有模型返回相同 order
B 每次整条消息重新渲染
C 为每个 part 独立渲染器,用唯一 ID 做 keyed 增量更新,并带 schema 版本 ✓ 正确答案
D 忽略 part 类型
#

18. 服务端 tools 声明里 execute 函数负责真正执行,needsApproval: true 把决定权抛给客户端——应如何在服务端把审批请求路由到正确的用户渠道(IDE 内通知 / Slack / 邮件)而不泄露跨租户的审批意图

A 把所有审批发到公共频道
B 不校验租户
C 审批链接永久有效
D 先校验租户与用户权限,只路由到该用户渠道,用一次性 token 绑定租户与操作 ✓ 正确答案