from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def test_knowledge_v100_schema_covers_dynamic_update_control_plane(): migration = ( ROOT / "migrations/versions/20260720_100_llamaindex_lightrag_knowledge.py" ).read_text(encoding="utf-8") assert 'revision = "20260720_100"' in migration assert 'down_revision = "20260719_90"' in migration for table in ( "user_business_domain_grants", "knowledge_points", "knowledge_point_dependencies", "knowledge_change_sets", "knowledge_change_items", "knowledge_embedding_profiles", "knowledge_chunk_embeddings", "knowledge_index_projections", "knowledge_cache_dependencies", "knowledge_query_audits", "knowledge_evaluation_sets", "knowledge_evaluation_cases", "knowledge_evaluation_runs", "knowledge_evaluation_results", ): assert f"public.{table}" in migration for column in ( "point_key", "point_revision", "source_revision", "source_snapshot_hash", "impact_truncated", "primary_point_key", "point_set_hash", "search_vector", ): assert column in migration assert "uq_knowledge_point_active" in migration assert "CREATE EXTENSION IF NOT EXISTS pg_trgm" in migration assert "def downgrade" in migration assert "DROP TABLE public.governance_documents" not in migration