返回快讯列表
开源生态

Mastra 1.76 为持久 Agent 加入运行归属,避免故障恢复时双重写入

多实例恢复会跳过仍有有效 claim 的运行,存储 fencing 拒绝失去所有权的执行;PostgreSQL 工作记忆也支持原子合并。

Mastra 发布 core 1.76.0,修复多实例部署中持久 Agent 被重复恢复的问题。此前,恢复流程可能把仍在其他进程执行的 running 任务再次启动,两个执行同时写入同一线程,原执行还可能覆盖恢复后的消息。新版本为运行建立执行归属,并在任务进行时续期 claim。

恢复流程会跳过仍持有有效 claim 的任务,进程退出后 claim 约在 30 秒失效;显式强制接管则让原执行停止。支持 run fencing 的存储适配器还会拒绝失去所有权的执行继续写入消息、线程或工作流状态,从数据层阻止双写。

工作记忆部分,PostgreSQL 的 resource 范围局部更新改为在行锁事务中深度合并,多个进程修改不同字段时可各自保留结果。HTTP API 也可明确指定 merge 模式,不支持原子合并的适配器会返回错误。同期 Observational Memory 默认改为 model:auto,跟随主模型或供应商选择 Observer、Reflector;原先固定摘要模型的项目需要留意这一默认值变化。

更多快讯