消息插队还是排队:Follow-up、Steer 与 Inject
先盯住一个动作
DSH 用 next-turn 与 next-step 两条持久队列编码运行中消息。followup、steer、inject 共用 send(),仅 target 与 wakeup 不同。
沿执行轨迹走
Turn 为完整工作
Turn 为完整工作,Step 为一次模型请求及工具执行。followup 进 next-turn,等整轮结束;steer 进 next-step,下步开头被见;inject 与 steer 同进 next-step,但不唤醒。
[repo]
消息领取制
消息领取制:step 开始取空 next-step,轮次边界取一条 next-turn。取走落盘删除事件。中断后唤醒请求降级为 next-turn,inject 不受影响。
[repo]
每一步改变了什么
pre-step 拒绝批次为何清空: claim 已使消息归属某 Turn,拒绝不回队以免重复消费。
中断后发 steer 会怎样: 检测到唤醒请求且活动已中止时,改成 next-turn 等善后重放。
这条轨迹没有说明什么
本页结论对应 revision
0a53fb55bea101816fa226bb964ae2bed71c343b。文件位置、命名和默认行为可能随版本变化,引用实现细节时应同时记录 commit。
来源与核验
- [repo] DeepSeek Harness 官方源码(固定 revision)
- [official] DeepSeek Harness 官方介绍
Revision:0a53fb55bea101816fa226bb964ae2bed71c343b · 核验日期:2026-08-31