Table of Contents

Interface IChatThreadRepository

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

Persists and retrieves user-owned chat threads and framework session state.

public interface IChatThreadRepository

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.