Class SpamClassificationRun
- Namespace
- MailFathom.Application.Spam.Runs
- Assembly
- MailFathom.Application.dll
A whole-mailbox classification run somebody asked for, and how far the account's runs have carried it.
public sealed record SpamClassificationRun : IEquatable<SpamClassificationRun>
- Inheritance
-
SpamClassificationRun
- Implements
- Inherited Members
Remarks
Durable because it has to survive the process. The run spans as many account runs as its batch budget needs, so a restart in the middle of one must resume at the message nobody has reached rather than at the beginning of a mailbox — and a request that arrived seconds before a shutdown must still be a request afterwards.
One outstanding run per account, which is what makes a second request an answer rather than a second walk over one mailbox. There is no queue behind it: asking twice for the same thing is asking once, and the reply says the run is already under way.
Every field is either MailFathom's own identity for something, a count, or an answer the operator gave when they asked. Nothing derived from a message belongs in a record an operator reads to find out what their instance is doing, which is why the verdicts appear here only as counts and are readable per message from the classification records themselves.
Properties
- AccountId
Gets the account whose mail the run walks.
- ActedEmailCount
Gets how many occurrences the run asked the mailbox to change, or would have asked for in a dry run.
- ClassifiedEmailCount
Gets how many occurrences the run recorded a verdict for.
- IsOutstanding
Gets whether the run is still waiting to be carried further by an account run.
- Position
Gets the identity of the last occurrence a batch committed, or null while it has committed none.
- Profile
Gets the settings the run is bound to, which are unspecified until the first pass picks the run up.
- RequestedAt
Gets when the run was asked for.
- SkippedEmailCount
Gets how many occurrences the run passed over because they were already decided under its profile.
- SpamEmailCount
Gets how many of the occurrences the run reached carry a spam verdict.
- Terms
Gets what the operator asked the run to do, fixed when they asked.
- UnclassifiableEmailCount
Gets how many occurrences the run could reach no verdict about.
- UndeterminedEmailCount
Gets how many of the occurrences the run reached carry a verdict that concluded nothing either way.