The tool agent `timeout` config field (Actor Configuration Standard §4.5,
default 1s) was a static per-agent value, and the shell/http_request timeout
errors told the model to "increase the timeout config value" — an action an
LLM driving the tool cannot take at runtime. The model would instead thread
`timeout N` into the call, corrupting the command.
Both tools now accept an optional per-call `timeout` argument, resolved by a
new immutable `TimeoutPolicy` value object and bounded by a generic
`tools_max_timeout` config field (default 120s). An optional shell-only
`shell_max_timeout` refines the ceiling for `shell` alone and is never
consulted by `http_request`. Absent the argument, behaviour is byte-for-byte
unchanged. Invalid overrides are rejected before any subprocess is spawned or
request is sent; the timeout errors now direct a retry with a larger `timeout`
argument.
Implements ADR-2030 D-9 (accepted revision) and Actor Configuration Standard
§4.5 / §21.1 (Version 1.2.0).
ISSUES CLOSED: #111