Structured diagnostic emitted by a Featurevisor instance.
@type level() :: :fatal | :error | :warn | :info | :debug
@type t() :: %Featurevisor.Diagnostic{ code: String.t(), details: map(), level: level(), message: String.t(), module: String.t() | nil, module_name: String.t() | nil, original_error: term() | nil }