W7 代码练习打卡清单
可靠性工程 & 分层记忆 · 三层防御 到 故障不崩

规则:先读文件里的讲解,再运行自测,全部 PASS 才勾选。勾选状态存本浏览器。纯本地可跑(只需 numpy),只有把反思/摘要器换真实 LLM 才要 Key。

配套目录:agent-learning-w7/预计每日 4–6 小时周日 3 小时故障注入交付:可靠性中间件 + 三层记忆 + 测试报告
本周进度
0 / 0
周一工具层硬隔离:超时/重试/结构化错误/统一执行器纯本地reliability/{errors,retry,executor}.py

打卡任务

验收标准

  • 能对 timeout/rate_limit/dependency 说"该重试",对 validation 说"不重试"
  • 裸异常也被执行器归一成结构化错误

重难点

  • 复用"哪些错值得重试"而非"所有错都重试",否则纯烧钱
周二推理层熔断:四类死循环止烧钱纯本地reliability/circuit.py

打卡任务

验收标准

  • 能答"死循环最贵的是无限烧 token",熔断是止损机制
  • 能区分"重复模式"与"连续失败"两种粒度的检测

重难点

  • 连续失败看重连续;重复模式看重"同参数的调用环"
周三规划层自修正 + DAG 并行编排纯本地reliability/reflection.py

打卡任务

验收标准

  • 能画出三层防御的接管顺序:工具→推理→规划
  • 能说 DAG 并发降延迟(asyncio.gather / 线程池)

重难点

  • 反思别滥用:能自动修才反思,否则直接转人工省 token
周四短期记忆:滑动窗口 + 自动摘要纯本地memory/short_term.py

打卡任务

验收标准

  • 窗口溢出时最老一条被归档进摘要,最近条保住
  • 用户偏好这类"硬约束"不走窗口、独立存

重难点

  • 摘要失真成本高于硬截断吗?——先留住关键约束再谈精简
周五长期记忆:向量×时间衰减×重要性纯本地memory/long_term.py

打卡任务

验收标准

  • 能用一句话解释最终分 = 三因子相乘
  • 知道重要性高的记忆能顶住衰减被优先召回

重难点

  • importance 是"顶住老化的杠杆",不是越权放大
周六上下文压缩管线:水位分级触发纯本地memory/compressor.py

打卡任务

验收标准

  • 能报出"压缩前剩余空间 vs 后"并对比成功率
  • 知道硬约束(规则/偏好)是压缩的红线

重难点

  • 摘要有失真成本,分级触发+损失评估才是生产做法
周日故障注入演练 + 测试报告(收尾)纯本地day7_fault_injection.py

打卡任务

验收标准

  • 每个故障都有明确结局,没有"未知状态"
  • 能用这份报告回答"你怎么保证 Agent 不崩"

重难点

  • 重难点=区分自愈与止损的边界,别把可救的救了、不可救的空耗