From e24fa5d558a0ba26dbdd18184ee8c1ea3f54d4d1 Mon Sep 17 00:00:00 2001 From: sokoliva Date: Wed, 11 Mar 2026 12:46:24 +0000 Subject: [PATCH 1/2] feat: update owner column to be nullable in tasks and push notification config tables --- .../versions/6419d2d130f6_add_columns_owner_last_updated.py | 4 ++-- src/a2a/server/models.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py b/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py index 2ad405fa..fc0f1097 100644 --- a/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py +++ b/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py @@ -47,7 +47,7 @@ def upgrade() -> None: ) if table_exists(tasks_table): - add_column(tasks_table, 'owner', False, sa.String(255), owner) + add_column(tasks_table, 'owner', True, sa.String(255), owner) add_column(tasks_table, 'last_updated', True, sa.DateTime()) add_index( tasks_table, @@ -63,7 +63,7 @@ def upgrade() -> None: add_column( push_notification_configs_table, 'owner', - False, + True, sa.String(255), owner, ) diff --git a/src/a2a/server/models.py b/src/a2a/server/models.py index 19aab72d..fb03a527 100644 --- a/src/a2a/server/models.py +++ b/src/a2a/server/models.py @@ -44,7 +44,7 @@ class TaskMixin: kind: Mapped[str] = mapped_column( String(16), nullable=False, default='task' ) - owner: Mapped[str] = mapped_column(String(255), nullable=False) + owner: Mapped[str] = mapped_column(String(255), nullable=True) last_updated: Mapped[datetime | None] = mapped_column( DateTime, nullable=True ) @@ -145,7 +145,7 @@ class PushNotificationConfigMixin: task_id: Mapped[str] = mapped_column(String(36), primary_key=True) config_id: Mapped[str] = mapped_column(String(255), primary_key=True) config_data: Mapped[bytes] = mapped_column(LargeBinary, nullable=False) - owner: Mapped[str] = mapped_column(String(255), nullable=False, index=True) + owner: Mapped[str] = mapped_column(String(255), nullable=True, index=True) protocol_version: Mapped[str | None] = mapped_column( String(16), nullable=True ) From 955aaabbc8c7af474f115a3d13fb751be4e8c932 Mon Sep 17 00:00:00 2001 From: sokoliva Date: Wed, 11 Mar 2026 12:46:24 +0000 Subject: [PATCH 2/2] feat: update owner column to be nullable in tasks and push notification config tables --- src/a2a/a2a_db_cli.py | 2 +- .../versions/6419d2d130f6_add_columns_owner_last_updated.py | 4 ++-- src/a2a/server/models.py | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/a2a/a2a_db_cli.py b/src/a2a/a2a_db_cli.py index 0364a530..95dd3e75 100644 --- a/src/a2a/a2a_db_cli.py +++ b/src/a2a/a2a_db_cli.py @@ -58,7 +58,7 @@ def create_parser() -> argparse.ArgumentParser: parser.add_argument( '--add_columns_owner_last_updated-default-owner', dest='owner', - help="Value for the 'owner' column (used in specific migrations). If not set defaults to 'unknown'", + help="Value for the 'owner' column (used in specific migrations). If not set defaults to 'legacy_v03_no_user_info'", ) _add_shared_args(parser) diff --git a/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py b/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py index 2ad405fa..fc0f1097 100644 --- a/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py +++ b/src/a2a/migrations/versions/6419d2d130f6_add_columns_owner_last_updated.py @@ -47,7 +47,7 @@ def upgrade() -> None: ) if table_exists(tasks_table): - add_column(tasks_table, 'owner', False, sa.String(255), owner) + add_column(tasks_table, 'owner', True, sa.String(255), owner) add_column(tasks_table, 'last_updated', True, sa.DateTime()) add_index( tasks_table, @@ -63,7 +63,7 @@ def upgrade() -> None: add_column( push_notification_configs_table, 'owner', - False, + True, sa.String(255), owner, ) diff --git a/src/a2a/server/models.py b/src/a2a/server/models.py index 19aab72d..fb03a527 100644 --- a/src/a2a/server/models.py +++ b/src/a2a/server/models.py @@ -44,7 +44,7 @@ class TaskMixin: kind: Mapped[str] = mapped_column( String(16), nullable=False, default='task' ) - owner: Mapped[str] = mapped_column(String(255), nullable=False) + owner: Mapped[str] = mapped_column(String(255), nullable=True) last_updated: Mapped[datetime | None] = mapped_column( DateTime, nullable=True ) @@ -145,7 +145,7 @@ class PushNotificationConfigMixin: task_id: Mapped[str] = mapped_column(String(36), primary_key=True) config_id: Mapped[str] = mapped_column(String(255), primary_key=True) config_data: Mapped[bytes] = mapped_column(LargeBinary, nullable=False) - owner: Mapped[str] = mapped_column(String(255), nullable=False, index=True) + owner: Mapped[str] = mapped_column(String(255), nullable=True, index=True) protocol_version: Mapped[str | None] = mapped_column( String(16), nullable=True )