Metadata-Version: 2.4
Name: fd-open-data-mcp
Version: 0.5.18
Summary: Open-data ontology MCP: a semantic concept layer over multi-datasource financial/economic data
Author: FindDataOfficial
License: MIT
Project-URL: Homepage, https://github.com/FindDataTechnology/fd-open-data-mcp
Project-URL: Repository, https://github.com/FindDataTechnology/fd-open-data-mcp
Project-URL: Documentation, https://github.com/FindDataTechnology/fd-open-data-mcp#readme
Project-URL: Issues, https://github.com/FindDataTechnology/fd-open-data-mcp/issues
Project-URL: Changelog, https://github.com/FindDataTechnology/fd-open-data-mcp/releases
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: click>=8.0
Requires-Dist: sqlalchemy>=2.0
Requires-Dist: pydantic>=2.0
Requires-Dist: fastmcp>=2.0
Requires-Dist: pandas>=2.0
Requires-Dist: fd-open-data-protocol>=0.3
Requires-Dist: pyyaml>=6.0
Requires-Dist: redis>=5.0
Requires-Dist: python-dotenv>=1.0
Requires-Dist: minio>=7.2.0
Requires-Dist: alembic>=1.13
Requires-Dist: croniter>=2.0
Requires-Dist: fastapi>=0.110
Requires-Dist: jinja2>=3.1
Requires-Dist: python-multipart>=0.0.9
Requires-Dist: uvicorn>=0.29
Requires-Dist: psycopg2-binary>=2.9
Provides-Extra: data
Requires-Dist: akshare>=1.17; extra == "data"
Requires-Dist: yfinance>=0.2; extra == "data"
Requires-Dist: world_bank_data>=0.1; extra == "data"
Requires-Dist: edgartools>=2.0; extra == "data"
Requires-Dist: wbgapi>=1.0; extra == "data"
Requires-Dist: requests>=2.31; extra == "data"
Requires-Dist: beautifulsoup4>=4.12; extra == "data"
Requires-Dist: scrapling>=0.4.7; extra == "data"
Requires-Dist: playwright>=1.40; extra == "data"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"

# Migrations archive — the retired SQL runbook series

This directory is the frozen `migrations/` series (2026-08-04 → 2026-09-18):
hand-written SQL change records applied manually against live databases,
each usually paired with a `.rollback.sql`. The series is retired by the
db-schema-lifecycle change — the Alembic chain
(`alembic/versions/`, rooted at `0001_schema_baseline`) is now the single
migration mechanism, and nothing here executes anymore.

The directory was relocated from `migrations/` so its numbering can no
longer be confused with `alembic/versions/` (two unrelated "006"s once
coexisted).

## Disposition of each file

| File | Fate |
|---|---|
| `001_add_real_sources_to_functions[.rollback].sql` | effect modelled → absorbed into the baseline (`0001_schema_baseline`) |
| `002_add_real_source_to_fetch_log.sql` | absorbed into the baseline |
| `003_add_concepts_deprecated[.rollback].sql` | absorbed into the baseline |
| `004_add_semantic_observations_entity_index[.rollback].sql` | absorbed into the baseline |
| `005_add_observation_granularity[.rollback].sql` | absorbed into the baseline |
| `006_add_policy_runs_origin_cancelled[.rollback].sql` | absorbed into the baseline |
| `007_multi_source_observations.sql` | **superseded** by revision `0002_sem_obs_source_aware_key` (the swap now runs as an Alembic revision under the same advisory lock this runbook used) |
| `007_multi_source_observations.rollback.sql` | kept as an **ops document only** — the lossy manual reverse (dedup per `source_rankings`, then rebuild the 5-column key). Not part of the mechanism; normal rollback is redeploying the previous image |

New schema changes never land here. They land as revisions in
`alembic/versions/`; `alembic upgrade --sql` produces a reviewable psql
runbook when one is wanted.
