Constructs the provider-neutral llm-request workflow capability.
The supplied requester owns transport and credential handling. Requests and
normalized JSON-like responses are independently bounded. Requesters may
return a classified PtcRunner.Kernel.ProviderError; unclassified failures
become retryable :unavailable errors. Invalid or oversized responses do not
cross back into Lisp.
Dispatcher and adapter boundaries use the same closed public kind and
reason vocabulary. HTTP and transport failures become ProviderError
values (:timeout, :unavailable, :rate_limited, :transport_error, and
the permanent request classes). Routed llm-request failures that occur
after alias resolution also carry the public :model installation alias.
This adapter provides model access, not agent policy. Message construction, tool protocols, feedback, retries, and completion remain PTC-Lisp workflow concerns.
Summary
Functions
@spec new(keyword()) :: {:ok, PtcRunner.Kernel.Capability.t()} | {:error, :invalid_llm_capability}
Constructs llm-request from a required one-argument :requester and
optional positive :max_request_bytes and :max_response_bytes limits.