From 7125b3065595952477e3798b3c9198a746b892bf Mon Sep 17 00:00:00 2001 From: LennartSchmidtKern Date: Wed, 24 Sep 2025 15:08:02 +0200 Subject: [PATCH 1/3] admin query summary --- ...65646c0_add_admin_query_message_summary.py | 47 +++++++++++++++++++ submodules/model | 2 +- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 alembic/versions/94fd265646c0_add_admin_query_message_summary.py diff --git a/alembic/versions/94fd265646c0_add_admin_query_message_summary.py b/alembic/versions/94fd265646c0_add_admin_query_message_summary.py new file mode 100644 index 00000000..c24d59f9 --- /dev/null +++ b/alembic/versions/94fd265646c0_add_admin_query_message_summary.py @@ -0,0 +1,47 @@ +"""Add admin query message summary + +Revision ID: 94fd265646c0 +Revises: de396670d10f +Create Date: 2025-09-24 13:07:02.549717 + +""" +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision = '94fd265646c0' +down_revision = 'de396670d10f' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('admin_query_message_summary', + sa.Column('day', sa.Date(), nullable=False), + sa.Column('organization_id', postgresql.UUID(as_uuid=True), nullable=False), + sa.Column('project_id', postgresql.UUID(as_uuid=True), nullable=False), + sa.Column('total_conversations', sa.Integer(), nullable=True), + sa.Column('total_messages', sa.Integer(), nullable=True), + sa.Column('messages_via_api', sa.Integer(), nullable=True), + sa.Column('messages_via_ui', sa.Integer(), nullable=True), + sa.Column('messages_via_macro', sa.Integer(), nullable=True), + sa.Column('confidential_messages', sa.Integer(), nullable=True), + sa.Column('kern_user_messages', sa.Integer(), nullable=True), + sa.Column('deleted_messages_by_user', sa.Integer(), nullable=True), + sa.Column('deleted_messages_by_system', sa.Integer(), nullable=True), + sa.Column('incognito_messages', sa.Integer(), nullable=True), + sa.PrimaryKeyConstraint('day', 'organization_id', 'project_id'), + sa.UniqueConstraint('organization_id', 'project_id', 'day', name='unique_admin_query_msg_activity_summary'), + schema='cognition' + ) + op.add_column('message', sa.Column('initiated_via', sa.String(), nullable=True), schema='cognition') + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('message', 'initiated_via', schema='cognition') + op.drop_table('admin_query_message_summary', schema='cognition') + # ### end Alembic commands ### diff --git a/submodules/model b/submodules/model index cb5bab59..5d567ed7 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit cb5bab5995cd6d423880e01696bf712a214b1a98 +Subproject commit 5d567ed7ea3f20d99199eaa87896f842a57ee3c9 From 97861cc090769a89d3d8982dd3abc7a0328cc7d3 Mon Sep 17 00:00:00 2001 From: LennartSchmidtKern Date: Wed, 24 Sep 2025 16:52:50 +0200 Subject: [PATCH 2/3] cascade delete --- ...122cddaf65_add_admin_query_message_summary.py} | 15 +++++++++------ submodules/model | 2 +- 2 files changed, 10 insertions(+), 7 deletions(-) rename alembic/versions/{94fd265646c0_add_admin_query_message_summary.py => 49122cddaf65_add_admin_query_message_summary.py} (81%) diff --git a/alembic/versions/94fd265646c0_add_admin_query_message_summary.py b/alembic/versions/49122cddaf65_add_admin_query_message_summary.py similarity index 81% rename from alembic/versions/94fd265646c0_add_admin_query_message_summary.py rename to alembic/versions/49122cddaf65_add_admin_query_message_summary.py index c24d59f9..5dee4aec 100644 --- a/alembic/versions/94fd265646c0_add_admin_query_message_summary.py +++ b/alembic/versions/49122cddaf65_add_admin_query_message_summary.py @@ -1,8 +1,8 @@ """Add admin query message summary -Revision ID: 94fd265646c0 +Revision ID: 49122cddaf65 Revises: de396670d10f -Create Date: 2025-09-24 13:07:02.549717 +Create Date: 2025-09-24 14:52:02.478956 """ from alembic import op @@ -10,7 +10,7 @@ from sqlalchemy.dialects import postgresql # revision identifiers, used by Alembic. -revision = '94fd265646c0' +revision = '49122cddaf65' down_revision = 'de396670d10f' branch_labels = None depends_on = None @@ -19,9 +19,10 @@ def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.create_table('admin_query_message_summary', + sa.Column('id', postgresql.UUID(as_uuid=True), nullable=False), sa.Column('day', sa.Date(), nullable=False), - sa.Column('organization_id', postgresql.UUID(as_uuid=True), nullable=False), - sa.Column('project_id', postgresql.UUID(as_uuid=True), nullable=False), + sa.Column('organization_id', postgresql.UUID(as_uuid=True), nullable=True), + sa.Column('project_id', postgresql.UUID(as_uuid=True), nullable=True), sa.Column('total_conversations', sa.Integer(), nullable=True), sa.Column('total_messages', sa.Integer(), nullable=True), sa.Column('messages_via_api', sa.Integer(), nullable=True), @@ -32,7 +33,9 @@ def upgrade(): sa.Column('deleted_messages_by_user', sa.Integer(), nullable=True), sa.Column('deleted_messages_by_system', sa.Integer(), nullable=True), sa.Column('incognito_messages', sa.Integer(), nullable=True), - sa.PrimaryKeyConstraint('day', 'organization_id', 'project_id'), + sa.ForeignKeyConstraint(['organization_id'], ['organization.id'], ondelete='CASCADE'), + sa.ForeignKeyConstraint(['project_id'], ['cognition.project.id'], ondelete='SET NULL'), + sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('organization_id', 'project_id', 'day', name='unique_admin_query_msg_activity_summary'), schema='cognition' ) diff --git a/submodules/model b/submodules/model index 5d567ed7..86ddfebf 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit 5d567ed7ea3f20d99199eaa87896f842a57ee3c9 +Subproject commit 86ddfebf565966a7e2b9b2c4bd8373bf40a26462 From e7373ccd009c815f6b084f0f6044913840186f13 Mon Sep 17 00:00:00 2001 From: LennartSchmidtKern Date: Fri, 26 Sep 2025 14:02:53 +0200 Subject: [PATCH 3/3] model --- submodules/model | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/model b/submodules/model index 86ddfebf..d8d03fe0 160000 --- a/submodules/model +++ b/submodules/model @@ -1 +1 @@ -Subproject commit 86ddfebf565966a7e2b9b2c4bd8373bf40a26462 +Subproject commit d8d03fe05212310386022f91c44c7b1101e1133f