Table of Contents

Constructor MailAnsweringCapability

Namespace
MailFathom.Application.Retrieval.AskMail
Assembly
MailFathom.Application.dll

MailAnsweringCapability(SemanticEmailSearch, IAiProviderHealthReader, TimeProvider, IMailQuestionAnswerer?)

Initializes the capability over whatever this deployment configured.

public MailAnsweringCapability(SemanticEmailSearch semanticSearch, IAiProviderHealthReader providerHealthReader, TimeProvider timeProvider, IMailQuestionAnswerer? questionAnswerer)

Parameters

semanticSearch SemanticEmailSearch

Answers whether this instance can retrieve by meaning at all, which is the embedding half.

providerHealthReader IAiProviderHealthReader

Answers what the last call to the chat provider established about it.

timeProvider TimeProvider

Measures how long ago that was, which is what keeps a recorded failure from latching.

questionAnswerer IMailQuestionAnswerer

Conducts a run, or null when this deployment declared no chat endpoint.

Remarks

The answerer is the one optional dependency, and its absence is the deployment decision rather than a missing registration: the composition root registers an answering agent only for an instance that declared a chat endpoint, so requiring one here would make every other deployment fail to serve a tool list at all.

Exceptions

ArgumentNullException

Thrown when semanticSearch, providerHealthReader, or timeProvider is null.