Pure state helper for approval ownership indexing.
@type state() :: %{optional(String.t()) => pid()}
@spec clear(state(), String.t()) :: state()
@spec new() :: state()
@spec register(state(), pid(), ASM.Control.ApprovalRequest.t()) :: state()
@spec resolve(state(), String.t()) :: {:ok, pid(), state()} | {:error, :unknown_approval, state()}