Files
deepseek-harness/packages/spill
Tianyi Cui a7a5be1703 docs(notes): archive low-future-value Agent Notes
Run the dsh-archive-agent-notes audit over every active Agent Note on
current master, judging each record by whether its rationale still guides
work rather than by size or age.

- Archive 453 implemented bilingual triplets (417,882 English words):
  completed UI chrome, narrow adapters, closed bug fixes, implementation
  walkthroughs whose package READMEs, docs pages, generators, or successor
  notes now carry the useful behavior, and 51 records fully superseded by
  a later active note. Keep 201 implemented notes whose ownership rules,
  negative guarantees, durable or wire semantics, security rules,
  reintroduction conditions, or still-tempting rejected alternatives
  remain useful.
- Reject 7 proposals whose premise is gone or whose work shipped in
  amended form under other records; delete 2 rejected notes that no
  longer prevent a plausible mistake.
- Retarget every remaining inbound link to the archived path, and repair
  active prose that named an archived record as the owner of a live fact:
  parenthetical citations drop, ownership sentences redirect to the
  README, docs page, or active note that states the fact, and history
  citations say so. Chinese files link the English archived path because
  the pairing gate treats the frozen tree as outside the bilingual corpus.
- Seal 1,359 new frozen artifacts; existing seals are unchanged and
  outbound links from archived notes are neither inspected nor repaired.
- Regenerate docs/config-catalog.md after the hook-bridge comment edits
  shifted two source line numbers.
2026-09-05 14:37:32 +08:00
..
2026-09-04 15:38:55 +08:00

description, kind
description kind
Package map for the tool-output spill capability family: what the storage service, the local backend, and the result policy each provide. package-group

spill/ — tool-output spill capability family

English | 中文

Summary

The spill/ group keeps oversized tool output out of the model's context without losing it: when a tool result exceeds a deployment's byte cap, the full text is saved to a spill artifact and the model sees a bounded preview plus a locator it can read or search later. The family splits into three packages — the storage service in spill/, the local filesystem backend in spill-local/, and the result policy in spill-policy/ that decides when a final tool result is too large. Spilling is opt-in and best-effort: the policy acts only when maxInlineBytes is configured, and a storage failure leaves the original result visible. The group owns storage and result replacement only; preview mechanics live in dsh-output-retention, and provider resource caps remain separate.

Table of Contents


Packages

Three packages play the spill roles; the subsystem reference owns the exhaustive vocabulary and contracts.

Package Role ctx key
spill/ Storage service: saves oversized tool text and returns a locator plus retrieval guidance ctx.spillStore
spill-local/ Saves spilled text to private session-scoped files on this machine registers on ctx.spillStore
spill-policy/ Replaces oversized plain-text tool results with a preview and locator listens on ctx.tools

Start with the subsystem reference for the shared vocabulary, then the design decision.

  • Spill subsystem — the SaveTextSpill/SpillRef vocabulary, ownership, and backend relationships.
  • Tool output spill decision — the capability boundary between storage, retention, and tool-owned output handling.

Dev Note

Working context for maintainers — click to expand

None.