transfer_admitted。该 receipt 只确认 transfer admission;
outcome_unknown=True 表示尚不知道目标是否执行,callable 返回 None 不代表任务完成。
目标使用既有 restore/CAS 提交 ownership_committed,再自行记录 running 与业务终态。
迟到的源 callback 不写 Session head。恢复后的当前 owner 可仅凭持久事实 reconcile,
不依赖源进程。已 admission 但调用结果未知的 operation 不自动重放;等待策略、业务重试
与人工 reconciliation 仍由应用负责。
Session
Session.delegate
Source
Session.spawn
Source
Session.fan_out
Source
Session.join
Source
Session.handoff
Source
WorkGraph
WorkGraph.from_canonical_dict
Source
WorkItem
WorkAttempt
DurableWorkRuntime
LocalWorkScheduler
WorkRuntimeError
确认未调度与目标恢复
Handoff receipt 的state=dispatch_not_started、admission_state=closed、
outcome_unknown=false 表示 scheduler 确认没有创建 worker;terminal_receipt_ref
记录安全的 dispatch 原因。同 operation 和 payload 重试返回该事实,修改 payload 会冲突。
在新 composition 重新绑定目标 Agent 与资源后调用 composition.restore(session_id),
再调用 session.run();无需再次调度。dispatch 后结果不明仍保持 unknown,不自动重放
未知 effect。Scheduler callable 返回不代表业务完成。
终态关联需要 descriptor work/session、显式 context transfer 引用与当前 owner generation;
不根据 Agent 名称或 ID 后缀推断。历史缺少绑定的 descriptor 保持未决;既有终态与无关 work
不变。
兼容说明:dispatch_not_started 是既有严格 operation-state 闭集中的新增值。旧 reader 会拒绝该值,需要升级,不能将其解释为 admitted/unknown。缺少显式 transfer 关联的历史 handoff descriptor 保持未关联,不能借用另一个 work item 的终态。