A planned change for one HostKit resource.
@type action() :: :create | :update | :delete | :no_op | :read
@type t() :: %HostKit.Change{ action: action(), after: struct() | nil, before: struct() | nil, reason: String.t() | atom() | nil, resource_id: HostKit.Addr.Resource.t() | term() }