本章进度 7 / 18
39%
正文已完成
L138把“正在处理”拆成真实状态
用状态、事件、迁移和守卫条件表达任务实际进度。
先用本课建立“状态机”的基本直觉,后面的判断和练习才不会只靠记结论。
建议按完整课程顺序先看上一课;如果术语陌生,可以随时回补。
- 无需安装新工具
- 直接阅读并完成本页理解检查
只有“处理中”和“已完成”两个标签时,系统不知道在等资料、等批准还是执行失败。状态机让当前事实和允许动作显式化。
能把模糊流程拆成至少四个互斥状态和对应迁移。
核心概念
先把关键判断说清楚
状态描述稳定事实
draft、validated、awaiting_approval 等状态应互斥,并能决定当前允许哪些动作。
事件触发迁移
用户提交、校验通过、批准和超时是事件,不应与状态名称混在一起。
守卫阻止非法跳转
只有 validation_passed=true 才能从 draft 进入 ready,不能靠模型直接改状态。
案例拆解
报销单不再只有“处理中”
用户无法知道报销卡在哪里,运营也难定位积压。
- 01
拆为 draft、needs_documents、validated、awaiting_approval、submitted、rejected。
- 02
每次迁移记录触发事件和责任人。
- 03
缺票据只能进入 needs_documents,不能直接 submitted。
案例结果
进度变得可解释,非法跨越校验和审批也被状态守卫阻止。
提交前练习
现在轮到你
把一个“处理中”的任务拆成状态机骨架。
选做练习:本节练习可用于加速你巩固,但不影响继续学习。
内容会自动保存在当前设备
查看参考答案与评分标准
参考答案
文章,draft→fact_check→awaiting_approval→published;事件为提交核验、核验通过、批准、发布回执;守卫为来源齐全、approval_id 匹配内容哈希。
评分标准
- 状态互斥且可观察
- 事件与状态分开
- 至少一条守卫可由系统验证
本课收口 · 理解检查
用 30 秒确认你理解了
用 30 秒理解检查确认你抓住了重点;阅读标记、练习和总结都不设硬门槛。
你现在更接近哪一种状态?
尚有必填项未完成,请补齐后再继续。
资料来源
继续核对与延伸阅读
本课内容最近更新于 。
- Trustworthy agents in practice↗paper · 核对日期 2026-08-23
- JSON Schema Core Specification 2020-12↗standard · 核对日期 2026-08-23