"""Add directories column to musehub_snapshots. Snapshot IDs are computed as sha256 of sorted manifest entries AND sorted directory paths (added when directory-rename tracking was introduced in muse). Without storing and returning directories, cloned repos fail snapshot content-hash verification for any snapshot with non-empty directories. Revision ID: 0026 Revises: 0025 """ revision = "0026" down_revision = "0025" from alembic import op import sqlalchemy as sa from sqlalchemy.dialects.postgresql import JSONB def upgrade() -> None: op.add_column( "musehub_snapshots", sa.Column( "directories", JSONB, nullable=False, server_default="[]", ), ) def downgrade() -> None: op.drop_column("musehub_snapshots", "directories")