Files
deepseek-harness/packages/tasks
_Kerman 225552fb32 fix(tui,tool-tasks): finish removing dispose-ness from delivery
The TUI's referenced-prompt snapshot now rides the prompt's own
admission transaction instead of a pre-admission inject: while idle, a
one-shot prepended agent/prompt-submit wrapper appends the snapshot to
the allow decision's additionalContexts, so a blocking hook discards
the prompt and its attached context together instead of stranding the
snapshot in history for the next unrelated prompt. A prompt discarded
before admission releases the wrapper; steering keeps the inject path
since it bypasses admission and drains at the same boundary. The
session-reference snapshot adapter pinned the old context-before-prompt
order; the branch-wide order (prompt first, its contexts after) is now
asserted and the fixture re-recorded.

tool-tasks drops the last consumer of the removed thrown-disposed
contract: completion notices now inject unconditionally, which is
well-defined during owner teardown — the loop treats disposal like any
cancel, so the notice appends as durable idle context (persisted for
resume while the session is attached, dropped with the detached log
after). README pair and the owner-disposal tests state the new
delivery contract.
2026-07-26 22:08:35 +08:00
..
2026-07-26 05:06:39 +08:00
2026-07-26 05:06:39 +08:00

tasks/ — background task capability family

English | 中文

The shared home for background-task ids, owner isolation, reads, cancellation, waiting, and completion notices. Bash, subagents, and future long-running tools use one model-facing protocol. See the background-task runtime Agent Note.

Package ctx key Role
tasks (@deepseek-ai/dsh-tasks) ctx.tasks The registry service: branded <kind>-N ids, owner-fenced read/kill/wait/list, settlement bookkeeping, the awaited owner-cleanup path, and the attachSurface misconfiguration fence
tool-tasks (@deepseek-ai/dsh-tool-tasks) The model-facing control surface: task_output, task_list, task_kill, the completion-notice injection, and the background-habit prompt section

The registry owns state across producer or surface reloads; the tool package owns presentation. Producers register execution hooks through ctx.tasks.start and own whether their config exposes run_in_background.