fix(events): bound provider prefix recent query
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Failing after 3m48s
CD Pipeline / build-and-deploy (push) Has been skipped
CD Pipeline / post-deploy-checks (push) Has been skipped

This commit is contained in:
ogt
2026-07-09 23:15:41 +08:00
parent cad76bf835
commit 7e17f85fe8
2 changed files with 42 additions and 17 deletions

View File

@@ -1,5 +1,7 @@
from pathlib import Path
from src.services.platform_operator_service import _provider_event_id_prefix_bounds
ROOT = Path(__file__).resolve().parents[1]
MIGRATION = "awooop_conversation_event_hot_path_indexes_2026-07-01.sql"
ROLLBACK = "awooop_conversation_event_hot_path_indexes_2026-07-01_down.sql"
@@ -57,9 +59,9 @@ def test_provider_recent_indexes_match_live_hot_queries() -> None:
assert "COALESCE(NULLIF(source_envelope->>'provider', '')" in coverage_source
assert "ORDER BY received_at DESC" in coverage_source
assert "LOWER(COALESCE(NULLIF(source_envelope->>'provider', '')" in operator_source
assert "recent_provider_prefix" in operator_source
assert "NULLIF(split_part(provider_event_id, ':', 1), '')" in operator_source
assert "_provider_event_id_prefix_bounds" in operator_source
assert "provider_event_id >= prefix_lower" in operator_source
assert "provider_event_id < prefix_upper" in operator_source
assert "idx_awooop_conv_event_project_provider_recent" in sql
assert "idx_awooop_conv_event_project_provider_lower_recent" in sql
@@ -69,6 +71,18 @@ def test_provider_recent_indexes_match_live_hot_queries() -> None:
assert "event_id DESC" in sql
def test_recent_provider_prefix_uses_btree_range_bounds() -> None:
assert _provider_event_id_prefix_bounds("alertmanager") == (
"alertmanager:",
"alertmanager;",
)
assert _provider_event_id_prefix_bounds("alertmanager:received") == (
"alertmanager:received",
"alertmanager:receivee",
)
assert _provider_event_id_prefix_bounds(" SignOz ") == ("signoz:", "signoz;")
def test_truth_chain_source_lookup_indexes_match_or_terms() -> None:
sql = _migration_sql()
truth_chain_source = _read("src/services/awooop_truth_chain_service.py")