Aludel.Evals.SuiteRunner (aludel v0.7.0)

Copy Markdown View Source

Owns suite execution launch under explicit supervision.

Summary

Functions

Loads a suite, prompt version, and provider by ID, then executes the suite.

Starts supervised suite execution and sends the result to recipient.

Types

execution_result()

@type execution_result() :: {:ok, Aludel.Evals.SuiteRun.t()} | {:error, term()}

Functions

execute(suite_id, version_id, provider_id, opts \\ [])

@spec execute(binary(), binary(), binary(), keyword()) :: execution_result()

Loads a suite, prompt version, and provider by ID, then executes the suite.

Missing records and execution failures are returned as error tuples rather than escaping the supervised task.

launch(recipient, suite_id, version_id, provider_id, opts \\ [])

@spec launch(pid(), binary(), binary(), binary(), keyword()) ::
  {:ok, pid()} | {:error, term()}

Starts supervised suite execution and sends the result to recipient.

The recipient receives {:suite_completed, result}, where result follows the execute/4 contract.