Opaque, request-scoped routing policy for the Responses Provider.
Routing is resolved once from an already selected ResponsesBackend plus the
Provider's programmatic options. The value keeps the exact validated HTTP endpoint
private while exposing only redacted summaries and transport capabilities. It never
selects credentials and never activates a staged backend.
A legacy injected :transport is treated as an HTTP/SSE seam. The resolved policy
records both the requested and effective transports so Provider integration can pass
one frozen decision to TransportPolicy without rereading application config.
Summary
Functions
Ordered transport capability set advertised by the selected backend.
Attach the opaque route and its effective transport to Provider options.
Transport policy to execute for this frozen route.
Validated final HTTP(S) Responses URL. Keep this request-internal.
Transport requested before capability and injected-seam resolution.
Resolve one final Responses route and effective transport policy.
Safe provenance of the final route.
Redacted, JSON-friendly routing projection.
Verify that an opaque route remains bound to the selected backend.
Resolved ChatGPT WebSocket URL, or nil for an HTTP/SSE-only backend.
Types
Functions
@spec allowed_transports(t()) :: [:websocket | :http_sse]
Ordered transport capability set advertised by the selected backend.
Attach the opaque route and its effective transport to Provider options.
@spec effective_transport(t()) :: :auto | :websocket | :http_sse
Transport policy to execute for this frozen route.
Validated final HTTP(S) Responses URL. Keep this request-internal.
@spec requested_transport(t()) :: :auto | :websocket | :http_sse
Transport requested before capability and injected-seam resolution.
@spec resolve( Pixir.Providers.ResponsesBackend.t(), keyword() ) :: {:ok, t()} | {:error, map()}
Resolve one final Responses route and effective transport policy.
@spec source(t()) :: :default | :legacy_base_url | :base_url | :responses_url
Safe provenance of the final route.
Redacted, JSON-friendly routing projection.
@spec validate_binding(t(), Pixir.Providers.ResponsesBackend.t()) :: :ok | {:error, map()}
Verify that an opaque route remains bound to the selected backend.
Resolved ChatGPT WebSocket URL, or nil for an HTTP/SSE-only backend.