Files
deepseek-harness/packages/timeout
Tianyi Cui 8590ba00a4 Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
# Conflicts:
#	docs/AGENTS.md
#	docs/config-catalog.md
#	packages/bash/bash-sandbox/src/index.ts
#	packages/bash/bash/src/session-mode.ts
#	packages/bash/tool-bash/README.md
#	packages/code-runtime/code-runtime-worker/README.md
#	packages/compact/compact/src/index.ts
#	packages/core/agent-core/README.md
#	packages/hooks/hooks-claude/src/config.ts
#	packages/hooks/hooks-claude/src/index.ts
#	packages/hooks/hooks-codex/src/config.ts
#	packages/hooks/hooks-codex/src/index.ts
#	packages/llm/llm/README.md
#	packages/session-persistence/session-persistence-jsonl/README.md
#	packages/session-persistence/session-persistence/README.md
#	packages/skill/skill-local/README.md
#	packages/support/acp-snapshot/README.md
#	packages/support/invariants/src/index.ts
#	packages/ui/acp/README.md
#	packages/ui/jsonrpc-agent/README.md
#	packages/ui/jsonrpc/README.md
#	packages/ui/permission/README.md
#	packages/ui/user-approval/README.md
#	packages/ui/user-interaction/README.md
#	packages/web/web-search-deepseek/README.md
2026-07-14 14:37:16 +08:00
..

timeout/ — tool-call timeout policy

The tool-call timeout policy plugin. A single product package: it is a deployment-policy consumer of the tools/execute around-dispatch seam (owned by dsh-tools) and the pure dsh-timeout library — not a swappable capability with an interface/implementation split, so it needs no seam trio.

Package Role ctx key
timeout-policy/ A tools/execute wrapper: for each configured tool it arms a per-call deadline on exec.signal and returns a structured TOOL_TIMEOUT result when that deadline wins (registers a tools/execute listener; injects nothing)

Timeout is split across three layers: dsh-timeout owns the pure timing/classification primitive (deadline/timeoutOf), each capability owns termination (bash kills its process group, the fetch provider tears down its socket), and this package owns the model-facing tool-call budget as deployment policy — no model-facing timeout argument, no global default. It is the middleware the timeout-library RFC foresaw. bash and hook command execution keep their own BASH_TIMEOUT backend timeout and do not route through this policy.