No homemade tool syntax on the wire
Source:
docs/decisions/no-homemade-tool-syntax.md
Status: Current decision document.
No homemade tool syntax on the wire
Section titled “No homemade tool syntax on the wire”Decision
Section titled “Decision”Offload (memory, background thinking) is an ordinary silent tool call: a
tool_calls entry whose result is empty. There is no [offload {…}] assistant-text
marker, no [name args] projection pair, and no delivery: "silent" quasi-syntax that
a wire view has to parse. delivery: "silent" keeps the call and drops only the result;
TurnLeaseCallDelivery stays for lease revoke, which is not tool syntax.
Rationale
Section titled “Rationale”[offload {…}] was a second tool language. The completion graph already has
AgentCallJob / responseCalls, so a marker string meant two parsers, an eval overlay
(visible / stripped / injected), and a second set of wire tests — all to express what an
empty tool result already says. Memory provider is not a special fold; it is a call whose
result happens to be empty, same as every other silent bot-call.
The eval overlay that remapped the marker string died with the marker. Working proposals that still describe the marker experiment are historical; product code does not use it.
Legacy note
Section titled “Legacy note”Old plexus documents that hydrated harness:job:call-delivery:silent-marker will not
load that child. Nothing in current admission mints it.
See also: calls-propose-verdicts-dispose.md,
../runtime/approval.md §11.