Resolves provider response tuples, including async/polling patterns used by providers like Fal.ai, Novita, and Black Forest Labs.
Response types handled
{:ok, value}/{:error, exception}— passed through unchanged{:fetch_url, url}— fetches binary content aturl{:novita_video_poll, task_id}— polls Novita video task endpoint{:fal_queue, response, opts}— polls Fal.ai queue{:bfl_polling, response}— polls Black Forest Labs result endpoint{:fal_segmentation_url, url}— fetches Fal segmentation result
Summary
Functions
Resolves a provider response tuple to {:ok, result} or {:error, exception}.
Types
@type resolution() :: {:ok, term()} | {:error, Exception.t()}
Functions
@spec resolve(term(), map()) :: resolution()
Resolves a provider response tuple to {:ok, result} or {:error, exception}.