Retained cleanup evidence for one exclusive standalone client endpoint.
Construct this scope before calling Quic.client/1 with its birth lease. A
successful receipt joins every enrolled actor and the actual UDP Port. It
does not establish peer delivery or resolve an unknown operation outcome.
Handles remain readable after the observer exits, within the same VM.
Summary
Functions
Retain that the original operation's result is unknown, independently of cleanup.
Retain an operation intent before its native call; never replay an unknown call.
Record a known return from the original operation producer.
Types
@type deadline() :: {:abs_ms, integer()}
@opaque handle()
@opaque lease()
@opaque permit()
@type result() :: {:pending, snapshot()} | {:ok, terminal_snapshot(:confirmed)} | {:error, {:cleanup_unconfirmed, :birth_unresolved | :observation_cap | :observer_lost | :unsupported_native_socket}, terminal_snapshot(:unconfirmed)}
@type snapshot() :: %{ version: 1, scope: :exclusive_endpoint, generation: reference(), admission: :open | :closed, enrolled: integer(), down: integer(), unresolved_births: integer(), unresolved_operations: integer(), native_outcome: :resolved | :indeterminate, roles: %{ endpoint: integer(), io: integer(), port: integer(), connection: integer() } }
@type terminal_snapshot(cleanup) :: %{ version: 1, scope: :exclusive_endpoint, generation: reference(), admission: :open | :closed, enrolled: integer(), down: integer(), unresolved_births: integer(), unresolved_operations: integer(), native_outcome: :resolved | :indeterminate, roles: %{ endpoint: integer(), io: integer(), port: integer(), connection: integer() }, cleanup: cleanup }
Functions
Retain that the original operation's result is unknown, independently of cleanup.
Retain an operation intent before its native call; never replay an unknown call.
Record a known return from the original operation producer.
@spec status(Quic.Cleanup.Handle.t()) :: result()