From 489265fe318517268249e24041ac7bf30e8fe265 Mon Sep 17 00:00:00 2001 From: Daniel O'Connell Date: Wed, 4 Jun 2025 16:21:49 +0200 Subject: [PATCH] fix session id for observations --- ...04_162113_observation_session_as_string.py | 39 +++++++++++++++++++ src/memory/common/db/models/source_items.py | 4 +- 2 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 db/migrations/versions/20250604_162113_observation_session_as_string.py diff --git a/db/migrations/versions/20250604_162113_observation_session_as_string.py b/db/migrations/versions/20250604_162113_observation_session_as_string.py new file mode 100644 index 0000000..bf35ff6 --- /dev/null +++ b/db/migrations/versions/20250604_162113_observation_session_as_string.py @@ -0,0 +1,39 @@ +"""observation session as string + +Revision ID: 58439dd3088b +Revises: 77cdbfc882e2 +Create Date: 2025-06-04 16:21:13.610668 + +""" + +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = "58439dd3088b" +down_revision: Union[str, None] = "77cdbfc882e2" +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.alter_column( + "agent_observation", + "session_id", + existing_type=sa.UUID(), + type_=sa.Text(), + existing_nullable=True, + ) + + +def downgrade() -> None: + op.alter_column( + "agent_observation", + "session_id", + existing_type=sa.Text(), + type_=sa.UUID(), + existing_nullable=True, + ) diff --git a/src/memory/common/db/models/source_items.py b/src/memory/common/db/models/source_items.py index f5a5d5a..cd77453 100644 --- a/src/memory/common/db/models/source_items.py +++ b/src/memory/common/db/models/source_items.py @@ -564,9 +564,7 @@ class AgentObservation(SourceItem): id = Column( BigInteger, ForeignKey("source_item.id", ondelete="CASCADE"), primary_key=True ) - session_id = Column( - UUID(as_uuid=True) - ) # Groups observations from same conversation + session_id = Column(Text, nullable=True) observation_type = Column( Text, nullable=False ) # belief, preference, pattern, contradiction, behavior