Basic recognizer explanation for deterministic decisions.
@type t() :: %Obscura.Analyzer.Explanation{ context_words: [String.t()], metadata: map(), original_score: float() | nil, pattern: atom(), recognizer: atom(), score: float(), score_context_delta: float(), validation: atom() | nil }