Table of Contents

Class ChatThreadRepository

Namespace
Oscova.Agents.Conversations
Assembly
Oscova.Agents.dll

Persists conversation threads beneath a caller-selected users root.

public sealed class ChatThreadRepository : IChatThreadRepository

Inheritance

Implements

Inherited Members

Constructors

ChatThreadRepository(Func<string>, FileSessionIndexCoordinator, IRedactionService, IContentProtector, IAgentDefinitionRepository, ILogger<ChatThreadRepository>)

Persists conversation threads beneath a caller-selected users root.

Methods

ClearCurrentAsync(string, string, CancellationToken)

Clears the current thread selection for an agent.

DeleteAllThreadsAsync(string, CancellationToken)

Deletes all persisted chat threads for a user.

DeleteSessionElementAsync(string, string, CancellationToken)

Deletes the serialized framework session state for a thread.

DeleteThreadAsync(string, string, CancellationToken)

Deletes one persisted chat thread.

DeleteThreadsByAgentAsync(string, string, CancellationToken)

Deletes all persisted chat threads for an agent.

GetIncognitoThreadsAsync(string, CancellationToken)

Returns the user's in-memory incognito threads.

GetSessionElementAsync(string, string, CancellationToken)

Returns the serialized framework session state for a thread.

GetThreadAsync(string, string, CancellationToken)

Returns one chat thread when it exists, resolving in-memory incognito threads first.

GetThreadsAsync(string, bool, CancellationToken)

Returns the user's persisted chat-thread summaries. Incognito threads are excluded.

MarkCurrentAsync(string, string, string, CancellationToken)

Marks a thread as current for an agent.

SaveSessionElementAsync(string, string, JsonElement, string?, CancellationToken)

Persists serialized framework session state for a thread.

SaveThreadAsync(string, ChatThread, bool, CancellationToken)

Persists a chat thread and optionally marks it current.

TryRenameThreadAsync(string, string, string, CancellationToken)

Renames an existing chat thread without creating missing state.

UpdateWatermarksAsync(string, string, int?, int?, CancellationToken, int?)

Updates the persisted processing watermarks for a thread.