Skip to main content

Module tool

Module tool 

Source
Expand description

The tool seam (seam registry ARCHITECTURE 3). ToolMeta is the eight-field registration: a tool without a complete meta is invisible to the model. effect decides which gate a call passes; temporal decides whether its envelope carries a clock stamp. The part crates/kernel/spec/Tool.lean specifies this module.

Modules§

writes
What a call that ran may have written to the city’s tree, as its tool can tell (crates/kernel/spec/Tool.lean §8-23).

Structs§

ServerLabel
How one external server is named inside this city.
TimeoutMs
Declaring a timeout is a promise of cooperative cancellation; absence means no deadline.
ToolCall
ToolMeta
The eight-field registration, none optional in spirit: timeout: None is itself a declaration (no deadline), not an omission.
ToolName
Tool identity as it appears in catalog and events: non-empty ASCII lowercase, digits, underscore.
ToolOutcome

Enums§

CostTier
Cost bucket for budget and routing; the tool layer consumes it.
Effect
What kind of boundary a call crosses — this field routes the call to its gate; it is machine input, not documentation.
ExecArm
The exec three-arm shape. Lives on the tool face because discard::forecast consumes it and kernel cannot depend on runtime. Exactly three arms — deliberately exhaustive.
GateSubject
What one call is about, in the terms its own grammar names it.
RenderIntent
Presentation intent; per-call locations are a pure function of args (tool side). Meta-level declarations use an empty list.
Temporal
Whether “now” is load-bearing for this tool’s results (4.3).

Traits§

Tool
The tool port. Adapters: runtime L0 three, browser, protocol; second adapter: citysim scripted tools.