Class SpamHeaderFacts
- Namespace
- MailFathom.Application.Spam.Signals
- Assembly
- MailFathom.Application.dll
Everything the deterministic stage reads out of one message's headers.
public sealed record SpamHeaderFacts : IEquatable<SpamHeaderFacts>
- Inheritance
-
SpamHeaderFacts
- Implements
- Inherited Members
Remarks
Both lists are bounded, because a message can carry a header field any number of times and the whole point of the deterministic stage is that it costs nothing unbounded. What is dropped past a bound is the tail of a repetition rather than a distinct fact: a message with more than MaximumAuthenticationResults outcomes is one that travelled a long relay chain, and the newest hops are the ones written first.
Nothing here is loggable. An authentication detail names a sending domain and a provider header can carry the rule names a scanner fired on the sender's own content.
Fields
- MaximumAuthenticationResults
The greatest number of authentication outcomes read from one message.
- MaximumProviderHeaders
The greatest number of provider spam headers read from one message.
Properties
- AuthenticationResults
Gets the sender-authentication outcomes the message carried, nearest hop first.
- None
Gets the facts of a message that carried none of either.
- ProviderHeaders
Gets the provider spam headers the message carried, in the order they appeared.
Methods
- Create(IReadOnlyList<MessageAuthenticationResult>, IReadOnlyList<ProviderSpamHeaderValue>)
Records what one message's headers carried.