A per-link record of every deferred resolution, keyed by call-path within
the execution scope. Replay/recovery applies the record so the resolver is
never called twice for the same link. Captures both Resolved grants (with
their Tool Execution Binding) and negative NotAvailable results.
A host-authorized tool capability resolved for a deferred call-path. It
carries the callable contract and Lashlang identity (via the tool
definition) plus the host-owned Tool Execution Binding that routes a call to
the backing account, service, secret, or remote executor.
Marker key that wraps a Type literal at its outermost level so a host-side
consumer can tell a Type value apart from a plain record. The inner value
is the JSON-Schema representation of the type.
gather → resolve → link: resolve_and_fold_deferred then link. Used by
callers that do not maintain their own compile cache. NotAvailable (and no
resolver) leaves the symbol unresolved, surfacing a clean model-visible link
error.
gather → resolve: collect every module call-path program references,
resolve the ones host_environment does not already provide (without
failing fast on the first), record the outcomes, and fold Resolved grants
into host_environment. Returns the augmented host environment; the caller
links (or compiles via a cache) against it.