Add is_default flag for system trees

- Add is_default column to trees table
- Default trees have no author and are visible to all users
- Only admins can create default trees
- Update seed script to mark seeded trees as default
- Update seed script to use CLI auth instead of creating seed user

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Michael Chihlas
2026-02-01 01:32:10 -05:00
parent b96cbab087
commit db0b05eba7
5 changed files with 72 additions and 44 deletions

View File

@@ -0,0 +1,28 @@
"""Add is_default field to trees
Revision ID: 003
Revises: 002
Create Date: 2026-02-01
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision: str = '003'
down_revision: Union[str, None] = '002'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
op.add_column('trees', sa.Column('is_default', sa.Boolean(), nullable=False, server_default='false'))
op.create_index('ix_trees_is_default', 'trees', ['is_default'])
def downgrade() -> None:
op.drop_index('ix_trees_is_default', table_name='trees')
op.drop_column('trees', 'is_default')