Master made bilingual pairing mandatory repo-wide; this PR's seam-split edits to the tasks docs get their zh counterparts: a new pair for the dsh-tasks-local README and minimal updates to the tasks core-data doc, agent-spine-demo README, and the tasks family READMEs, with pairing records re-recorded.
2.0 KiB
2.0 KiB
@deepseek-ai/dsh-tasks-local
English | 中文
@deepseek-ai/dsh-tasks 注册表 seam 的进程局部实现:LocalTaskService 把每条记录保存在内存中,按 kind 签发 <kind>-N id,并且只交出全新快照,从不交出实时状态。它没有配置;作为插件加载后即注册为 ctx.tasks。
生命周期
任务属于其 owner 和后端,而不是生产方工具 fiber,因此重载生产方或表层不会停止任务。某个 owner 的第一个任务会把一个受等待的 effect 附加到精确的 Agent scope。owner 释放会取消该对象的任务,等待生产方完全停稳,并移除其快照;复用 agent 或 Session id 无法重定向旧清理。
服务释放会关闭监听器、取消所有存活任务、等待其记录,并从仍存活的 owner scope 分离 effect。如果拆卸取消抛出异常,服务会强制把记录标为失败,并警告工作可能遗留,而不会死锁。取消已返回但始终不终止 done 时,系统无法将其与缓慢停止区分开,拆卸可能因此停滞。
结算遵循首次结果优先:最早出现的终止结果(生产方结算、被隔离为 failed 的 done 拒绝,或拆卸强制失败)只记录一次,只通知监听器一次并对每个监听器单独隔离故障,然后释放等待方。挂起的等待会在监听器运行前把任务标记为已报告,因此呈现完成情况的表层不会重复发出通知。
模型体验
通过生产方插件和 dsh-tool-tasks 间接影响;它们会渲染 task id、输出、状态、取消和完成通知。
KV Cache 影响
不会直接失效;请求前缀变更由命名消费方负责。
已知限制与暂缓事项
- 任务只存在于进程本地:记录随 harness 进程一起消亡;持久或跨重启执行需要一个单独实现该 seam 的后端。
- 静默无效的取消可能使拆卸停滞:只有显式抛出异常才能安全地强制标为失败。