032_add_project_tools.py
1 """Add project_tools table for agent-created tools.""" 2 import sqlalchemy as sa 3 from alembic import op 4 5 6 revision = '032' 7 down_revision = '031' 8 branch_labels = None 9 depends_on = None 10 11 12 def upgrade(): 13 try: 14 op.create_table( 15 'project_tools', 16 sa.Column('id', sa.Integer(), primary_key=True, index=True), 17 sa.Column('project_id', sa.Integer(), sa.ForeignKey('projects.id'), nullable=False, index=True), 18 sa.Column('name', sa.String(255), nullable=False), 19 sa.Column('description', sa.Text(), nullable=False), 20 sa.Column('parameters', sa.Text(), nullable=False), 21 sa.Column('code', sa.Text(), nullable=False), 22 sa.Column('enabled', sa.Boolean(), nullable=False, server_default=sa.text('1')), 23 sa.Column('created_at', sa.DateTime(), nullable=False), 24 sa.Column('updated_at', sa.DateTime(), nullable=False), 25 ) 26 except Exception as e: 27 print(f"Error creating project_tools table: {e}") 28 29 30 def downgrade(): 31 try: 32 op.drop_table('project_tools') 33 except Exception as e: 34 print(f"Error dropping project_tools table: {e}")