/结课项目:让 Agent 安全交付一个改动登录后记录进度

结课项目:让 Agent 安全交付一个改动

建议用时:25 分钟(含练习)

学习目标

能够独立完成需求澄清、仓库探索、计划、实现、测试、审阅和提交说明。

本节产出

一个可运行改动及完整证据包

核心知识:交付一个别人可以审阅的小改动

本课程的结课项目不是让 Agent 一次生成一个庞大系统,而是完成一项范围明确、能够复现、可以验证并能说明风险的小改动。你要证明自己能够组织任务与证据,而不只是能写一句让模型开始工作的请求。

选择一个无敏感数据的练习项目,优先使用你已熟悉的环境。候选目标包括为空列表增加提示、修复一个确定的格式错误、为纯函数补上已经约定的边界行为。不要选择真实支付、权限迁移或生产数据库改造作为第一次练习,也不需要为了完成课程注册付费服务。

交付包包含四类内容:任务说明、实际改动、验证证据和交付结论。它们应能互相对应:说明中要求的行为在测试或观察里出现;diff 中的每项变化有任务依据;结论没有超出证据支持的范围。别人无需阅读全部聊天,就能判断这项工作是否可以接受。

结课项目从可复现问题和任务合同开始,经有限实施、行为验证和独立审阅,形成代码与证据齐全的交付包

图中的“独立审阅”可以由同伴、另一位审阅者或独立检查流程承担。关键是尝试反驳实现是否真的符合合同,而不只是重复作者总结。审阅如果指出实际问题,应修正、重测并再审阅,形成闭环。

案例:为名单页面增加准确的空态

虚构页面存在四种状态:加载中、请求失败、成功但名单为空、成功且有名单。当前后两者处理正常,但成功空名单时没有提示。目标是增加“暂无报名记录”,且不改变其他三种状态。输入全部使用虚构记录。

任务说明应把四种状态列清楚,指定组件与相关测试范围,要求最终提供 diff 和检查结果。Agent 编辑前先确认状态如何表达,是否存在把失败默认转换为空数组的逻辑。若存在,这可能影响空态准确性,需要根据实际合同决定是否纳入修复,而不是只增加一行文案。

输入状态期望呈现必须避免
加载中原有加载状态提前显示没有报名
请求失败原有错误提示假装成功空列表
成功空名单暂无报名记录空白区域
成功非空名单原有名单与链接顺手改变排序或字段

这个表可以直接指导行为测试和页面观察。测试代码不应只断言实现里出现某个字符串,而应在相应状态下检查用户能看到的内容。有交互时还要检查按钮和链接没有因为结构变化而失效。

执行与审阅顺序

  • 先保存基线:Git 状态、当前复现方式和已有检查结果。
  • 再做最小修改:运行与变化相称的测试。页面变化需要实际观察,尤其是窄屏和主题下的可读性。
  • 随后检查 diff:确认没有无关依赖更新、格式化或秘密文件。
  • 把准备提交的内容再核对一次:确保暂存区不是旧版本。

若环境缺失,记录具体原因并解决能够处理的部分,不把静态阅读当作完整运行验收。

提交是否需要推送或发布,按项目与用户授权执行;本结课练习的默认目标是可审阅交付,不要求改变任何公开网站。

怎样写诚实而有用的结论

可以写:“为成功空名单增加提示;保留加载、失败和非空状态;四项行为检查通过;已在两个视口观察;本次只修改组件与相关测试。”每句话都应有对应证据。如果只做了静态模拟,就把“通过”改成“已设计检查,尚未运行”,并说明下一步缺什么。

不要写“所有问题已彻底解决”,因为这项小任务没有审查整个系统。也不要用冗长执行日志淹没结果。结论先说用户能观察到的变化,再给必要验证与限制,读者就容易判断。

动手练习

  1. 选择一个小任务,填写四类交付内容的清单,并写清不在范围内的功能。
  2. 完成或静态模拟搜索、计划、编辑、测试、diff 审阅流程。每一步保存能够证明状态的证据。
  3. 让另一人按照任务说明评估交付包,记录至少一个质疑;如果质疑成立,修复并重新检查。

参考答案与推演

完成检查

  • 项目足够小,有真实或可复现的明确问题。
  • 改动、测试与任务合同互相对应,原有行为得到保护。
  • 独立审阅的问题已经处理或清楚记录。
  • 交付结论准确说明运行、提交与发布状态,未夸大范围。

参考与来源

结课项目:让 Agent 安全交付一个改动

3 道题 · 及格分 60 分

开始测验