dataflow.conversations.manager¶

Attributes¶

Classes¶

ConversationManager

Manager for conversations with LangGraph integration (backend only).

ConversationMetadata

Metadata for a conversation.

Module Contents¶

class dataflow.conversations.manager.ConversationManager(server_config: haive.dataflow.config.SupabaseServerConfig | None = None, postgres_config: haive.dataflow.conversations.persistence.postgres_config.PostgresCheckpointerConfig | None = None)¶

Manager for conversations with LangGraph integration (backend only).

Parameters:
  • server_config (haive.dataflow.config.SupabaseServerConfig | None)

  • postgres_config (haive.dataflow.conversations.persistence.postgres_config.PostgresCheckpointerConfig | None)

async create_conversation(user_id: str, metadata: ConversationMetadata) dict[str, Any] | None¶

Create a new conversation (backend only).

Parameters:
Return type:

dict[str, Any] | None

async get_conversation_state(thread_id: str, user_id: str) dict[str, Any] | None¶

Get conversation state from LangGraph checkpoints (backend only).

Parameters:
  • thread_id (str)

  • user_id (str)

Return type:

dict[str, Any] | None

async update_conversation_state(thread_id: str, user_id: str, data: Any, metadata: dict[str, Any] | None = None) bool¶

Update conversation state (backend only).

Parameters:
  • thread_id (str)

  • user_id (str)

  • data (Any)

  • metadata (dict[str, Any] | None)

Return type:

bool

property client¶

Lazy-loaded Supabase admin client.

postgres_config¶
server_config¶
class dataflow.conversations.manager.ConversationMetadata(/, **data: Any)¶

Bases: pydantic.BaseModel

Metadata for a conversation.

Parameters:

data (Any)

agent_id: str¶
custom_data: dict[str, Any] | None = None¶
description: str | None = None¶
tags: list[str] | None = None¶
title: str | None = None¶
dataflow.conversations.manager.logger¶