IDataSubjectResolver
AgentPrism.Abstractions.dllMaps a data subject (an end user, in the consumer’s own identity system) to the sessions, runs, and conversations that belong to them.
public interface IDataSubjectResolverRemarks
Section titled “Remarks”There is no default implementation. AgentPrism does not store
personal identity: sessions.id is a caller-supplied value and only the
consumer’s own system knows which session, run, or conversation belongs to
which end user. Registering this interface is what turns on the export and
erasure endpoints; without a registration, both return 409 — never a
silent “nothing found” that could be read as “already erased”.
The rejected alternative was storing the subject id ON AgentPrism’s own rows. That would add a new personal-data field whose only purpose is making erasure easier — the field created to help delete data would itself become the first thing that needs deleting.
Methods
Section titled “Methods”ResolveAsync(string, string, CancellationToken)
Section titled “ ResolveAsync(string, string, CancellationToken)”Resolves a data subject’s scope.
ValueTask<DataSubjectScope> ResolveAsync(string subjectId, string tenantId, CancellationToken cancellationToken = default)Parameters
Section titled “Parameters”subjectId string
The subject id, in the consumer’s own identity system.
tenantId string
The tenant id.
cancellationToken CancellationToken
The cancellation token.
Returns
Section titled “Returns”The scope; an empty scope when the subject has no known data.