CouncilEx.MemberResult (CouncilEx v0.1.0)

Copy Markdown View Source

Per-member execution result.

Summary

Functions

Build an :eliminated member result with reason metadata (used by tournament brackets).

Build a :skipped member result with reason metadata.

Types

status()

@type status() :: :ok | :error | :timeout | :skipped | :invalid_output | :eliminated

t()

@type t() :: %CouncilEx.MemberResult{
  attempts: pos_integer(),
  confidence: float() | nil,
  duration_ms: non_neg_integer() | nil,
  error: CouncilEx.Error.t() | nil,
  member_id: atom(),
  metadata: map(),
  response: CouncilEx.Response.t() | nil,
  status: status()
}

Functions

eliminated(member_id, reason)

@spec eliminated(atom(), atom()) :: t()

Build an :eliminated member result with reason metadata (used by tournament brackets).

error(member_id, error, duration_ms, opts \\ [])

@spec error(atom(), CouncilEx.Error.t(), non_neg_integer(), keyword()) :: t()

ok(member_id, response, duration_ms, opts \\ [])

@spec ok(atom(), CouncilEx.Response.t(), non_neg_integer(), keyword()) :: t()

skipped(member_id, reason)

@spec skipped(atom(), atom()) :: t()

Build a :skipped member result with reason metadata.