SPB Git forge

spb/ai-atlas

Public
41commits 1branches 0releases
4.6 MBsize
maindefault branch
12 days agolast push
HTML 77.2% TypeScript 10.5% Python 9.6% JavaScript 2.5%
3.1 KB · 64 lines python
Raw Blame History
1"""API read-path indexes: attribute-driven listings (release_date, family, openness), importance-ordered change feeds,2current benchmark leaderboards, page-view trending, review queue by kind.34Revision ID: 00025"""6from __future__ import annotations78from alembic import op910revision = "0002"11down_revision = "0001"12branch_labels = None13depends_on = None1415SQL = r"""16create index if not exists entities_type_release_idx on entities (entity_type, (attributes->>'release_date') desc nulls last) where merged_into is null;17create index if not exists entities_type_family_idx on entities (entity_type, (attributes->>'family')) where merged_into is null;18create index if not exists entities_type_openness_idx on entities (entity_type, (attributes->>'openness')) where merged_into is null;19create index if not exists entities_type_updated_idx on entities (entity_type, updated_at desc) where merged_into is null;20create index if not exists entities_type_first_seen_idx on entities (entity_type, first_seen_at desc) where merged_into is null;21create index if not exists entities_slug_id_idx on entities (id) include (slug);22create index if not exists change_events_importance_idx on change_events (importance desc, observed_at desc);23create index if not exists change_events_type_observed_idx on change_events (observed_at desc) where event_type <> 'DOCUMENT_CHANGED';24create index if not exists benchmark_results_current_idx on benchmark_results (benchmark_id, higher_is_better, score) where valid_to is null;25create index if not exists benchmark_results_model_current_idx on benchmark_results (model_id) where valid_to is null;26create index if not exists prices_current_model_idx on prices (model_id, provider_id) where valid_to is null;27create index if not exists prices_valid_range_idx on prices (valid_from, valid_to);28create index if not exists page_views_day_idx on page_views (day desc, views desc);29create index if not exists review_queue_kind_idx on review_queue (kind, status, created_at desc);30create index if not exists documents_source_idx on documents (source_id, last_fetched_at desc);31create index if not exists claims_entity_valid_idx on claims (entity_id, valid_from, valid_to);32create index if not exists relations_predicate_idx on relations (predicate, subject_id, object_id) where valid_to is null;33"""343536def upgrade() -> None:37    for statement in _split(SQL):38        op.execute(statement)394041def downgrade() -> None:42    raise RuntimeError("AI Atlas migrations are forward-only: historical data is never disposable")434445def _split(sql: str) -> list[str]:46    out: list[str] = []47    buf: list[str] = []48    in_dollar = False49    for line in sql.splitlines():50        stripped = line.strip()51        if stripped.count("$$") % 2 == 1:52            in_dollar = not in_dollar53        buf.append(line)54        if not in_dollar and stripped.endswith(";"):55            body = [ln for ln in buf if not ln.strip().startswith("--") or in_dollar]56            stmt = "\n".join(body).strip()57            if stmt:58                out.append(stmt)59            buf = []60    tail = "\n".join(ln for ln in buf if not ln.strip().startswith("--")).strip()61    if tail:62        out.append(tail)63    return out64