Table of Contents

Interface IMailFolderParticipationReader

Namespace
MailFathom.Application.Folders
Assembly
MailFathom.Application.dll

Answers how far into MailFathom each configured folder is admitted.

public interface IMailFolderParticipationReader

Remarks

The decision is configuration's and is read through a port for the reason every other per-account decision is: the paths that have to obey it are synchronization, chunking, and every mailbox read, and none of them may reach for a settings type of its own. Reading it in one place is also what keeps a folder hidden from every tool at once rather than from the tools somebody remembered.

The three lists exist beside GetParticipation(MailAccountId, MailFolderAlias) because a query cannot ask one folder at a time. A read narrows a table and needs the whole admitted set as a value it can put into a predicate, while a write path holds one email and asks about that email's folder; both answers come from the same configuration, so neither can drift from the other.

Every list names what is admitted rather than what is withheld, because a set of names cannot exclude a folder nobody named. Configuration enumerates the folders MailFathom has, so anything outside it is not a folder that was left in by an exclusion that failed to mention it — it is a folder this deployment does not have.

Properties

FoldersGeneratingEmbeddings

Gets the folders whose content is cut into passages and embedded, and no others.

FoldersSynchronized

Gets the folders whose mail this deployment mirrors, and no others.

FoldersVisibleToTools

Gets the folders an MCP tool may list, search, read, or answer from, and no others.

Methods

GetParticipation(MailAccountId, MailFolderAlias)

Gets what one folder takes part in.