a↗Agent 工程实战中文课程 / v1.0.0⌕ 搜索课程/
I01 · 互动推演

三种状态与一份日志

区分上下文、执行状态、业务事实以及派生日志。

合成教学数据 · 未运行真实模型
静态推演与完整规格

I01 三种状态与一份日志

关联章节:M00 · 交互类型:classification · 状态:提供完整状态/验收规格,UI待实现

教学目标

区分上下文、执行状态、业务事实以及派生日志。

初始状态


{
  "cards": [
    "用户最近一句话",
    "未确认operation_id",
    "退款账本",
    "工具输出摘要",
    "WAITING_APPROVAL",
    "订单余额",
    "UI事件序号"
  ],
  "buckets": {}
}

操作控件

  • 键盘选择卡片与分类

  • 允许标注双重用途

  • 提交

  • 展开解释

状态变化规则

  • 先要求标注权威存储,再标记是否进入模型上下文。

  • 提交逐项解释;允许同一事实被引用,但权威归属不随复制改变。

黄金案例与反馈

default

输入:


"七张状态卡"

期望:


{
  "用户最近一句话": "context",
  "未确认operation_id": "execution",
  "退款账本": "business",
  "工具输出摘要": "context",
  "WAITING_APPROVAL": "execution",
  "订单余额": "business",
  "UI事件序号": "event"
}

日志中复制余额不让日志变成余额的权威数据源。

完成条件

  • 7项归属完成

  • 说明至少一个可被压缩而不丢权威事实的对象

反馈层次

  • 提交预测后显示结果;允许跳过预测但记录跳过,不阻止阅读

  • 结果同时显示状态变化、原因与被拒绝动作;不是只给红绿灯

  • 第一次错误给边界提示,第二次提供最小反例;参考推导始终可主动打开

  • 重置恢复固定初始状态并保留历史尝试供用户手动清除

无障碍与静态替代

  • 全部操作有原生button/input/select替代,不依赖拖拽

  • 图与动画提供同步文字状态表;支持prefers-reduced-motion

  • 状态改变用aria-live=polite摘要,不逐字朗读长日志

  • 焦点不跳走;错误提示关联输入;颜色不是唯一编码

无JavaScript时直接展示初始输入、规则和黄金案例表,读者仍能完成纸面推演。状态动画仅作解释,不能成为获取答案的唯一途径。

持久化与重置

使用版本化键agent-course:1:I01,仅保存本地学习状态。支持单卡重置和全站清除;存储失败时以内存模式继续,不阻断阅读。

必须避免的误导

不要把分类设计成绝对互斥的物理存储要求;关键是权威归属。

执行边界

纯本地教学状态机;不执行任意代码,不连接真实资金/模型/宿主Shell。