ExecutionPlane.Contracts.HttpExecutionIntent.V1 (execution_plane v0.1.0)

Copy Markdown View Source

HTTP-family execution intent.

The payload fields below envelope are frozen as the minimal Wave 1 lane surface, but their detailed semantics stay provisional until Wave 3.

Summary

Types

t()

@type t() :: %ExecutionPlane.Contracts.HttpExecutionIntent.V1{
  body: term() | nil,
  contract_version: String.t(),
  egress_surface: map(),
  envelope: ExecutionPlane.Contracts.ExecutionIntentEnvelope.V1.t(),
  headers: map(),
  request_shape: String.t(),
  retry_class: String.t() | nil,
  stream_mode: String.t(),
  timeouts: map()
}

Functions

contract_version()

@spec contract_version() :: String.t()

dump(intent)

@spec dump(t()) :: map()

new(value)

@spec new(map() | keyword() | t()) :: {:ok, t()} | {:error, Exception.t()}

new!(value)

@spec new!(map() | keyword() | t()) :: t()