Precompute run analysis and serve compact route previews

This commit is contained in:
Peter Stockings
2026-10-02 14:19:47 +10:00
parent 2d7069c12d
commit 6bfab483d4
13 changed files with 518 additions and 56 deletions
@@ -0,0 +1,31 @@
"""Persist compact activity analysis and route previews."""
import sqlalchemy as sa
from alembic import op
revision = "f08db2902a74"
down_revision = "e57a0f824c61"
branch_labels = None
depends_on = None
def upgrade():
with op.batch_alter_table("activity") as batch_op:
batch_op.add_column(
sa.Column("analysis_version", sa.Integer(), nullable=False, server_default="0")
)
batch_op.add_column(
sa.Column("analysis_summary", sa.JSON(), nullable=False, server_default="{}")
)
batch_op.add_column(
sa.Column("display_data", sa.JSON(), nullable=False, server_default="{}")
)
batch_op.add_column(
sa.Column("route_geometry", sa.JSON(), nullable=False, server_default="[]")
)
def downgrade():
with op.batch_alter_table("activity") as batch_op:
for name in ("route_geometry", "display_data", "analysis_summary", "analysis_version"):
batch_op.drop_column(name)