gabriel / musehub public
0066_snapshot_delta_columns.py python
32 lines 876 B
Raw
sha256:1ccb8409daa5aabe577bd26d11b56ed12f3376d64011d0e75a247e81211a66ee docs(mwp4/phase5): tick Phase 5 checkboxes, close musehub#109 Sonnet 4.6 21 days ago
1 """Add parent_snapshot_id and delta_blob to musehub_snapshots.
2
3 Enables tip-to-tip object diffing in wire_fetch_mpack (new_oids = want_tip -
4 have_tip in O(files) rather than O(commits × files)) and delta-compressed
5 snapshot wire format (send only the delta, not the full manifest, per commit).
6 """
7
8 from __future__ import annotations
9
10 import sqlalchemy as sa
11 from alembic import op
12
13 revision = "0066"
14 down_revision = "0065"
15 branch_labels = None
16 depends_on = None
17
18
19 def upgrade() -> None:
20 op.add_column(
21 "musehub_snapshots",
22 sa.Column("parent_snapshot_id", sa.String(128), nullable=True),
23 )
24 op.add_column(
25 "musehub_snapshots",
26 sa.Column("delta_blob", sa.LargeBinary, nullable=True),
27 )
28
29
30 def downgrade() -> None:
31 op.drop_column("musehub_snapshots", "delta_blob")
32 op.drop_column("musehub_snapshots", "parent_snapshot_id")
File History 2 commits
sha256:1ccb8409daa5aabe577bd26d11b56ed12f3376d64011d0e75a247e81211a66ee docs(mwp4/phase5): tick Phase 5 checkboxes, close musehub#109 Sonnet 4.6 21 days ago
sha256:2c523da45351334b5c4dbefed4dc3dd553b3faa8737a4e6caf301e5dc82141be test(mwp4): Phase 0 RED reproduction tests for RC-4 ordering race Sonnet 4.6 21 days ago