Backplane.AiProtocol.Usage (backplane_ai_protocol v0.7.0)

Copy Markdown

Provider usage counters with explicit source, mode, and observation completeness.

Summary

Types

mode()

@type mode() :: :snapshot | :delta

status()

@type status() :: :complete | :partial | :unknown

t()

@type t() :: %Backplane.AiProtocol.Usage{
  attempt_id: String.t() | nil,
  cache_read_tokens: non_neg_integer() | nil,
  cache_write_tokens: non_neg_integer() | nil,
  extensions: map(),
  input_tokens: non_neg_integer() | nil,
  mode: mode(),
  native_total: non_neg_integer() | nil,
  output_tokens: non_neg_integer() | nil,
  reasoning_tokens: non_neg_integer() | nil,
  source: String.t(),
  status: status()
}

Functions

new(attrs)

@spec new(map()) :: {:ok, t()} | {:error, Backplane.AiProtocol.Error.t()}