fix(platform): expose run correlation in list
This commit is contained in:
@@ -11,10 +11,12 @@ import pytest
|
||||
|
||||
from src.db.awooop_models import AwoooPRunIdempotency, AwoooPRunState
|
||||
from src.services import platform_runtime
|
||||
from src.services.platform_operator_service import _run_list_item
|
||||
from src.services.runtime_correlation import (
|
||||
canonical_traceparent,
|
||||
canonical_work_item_id,
|
||||
correlation_for_run,
|
||||
correlation_readback_for_run,
|
||||
is_canonical_traceparent,
|
||||
new_uuid7,
|
||||
)
|
||||
@@ -66,6 +68,28 @@ def test_runtime_correlation_rejects_invalid_project_id() -> None:
|
||||
)
|
||||
|
||||
|
||||
def test_runtime_correlation_readback_preserves_legacy_trace_truth() -> None:
|
||||
run_id = UUID("019f88d5-f6c9-7a18-b764-df0df0cbe222")
|
||||
|
||||
canonical = correlation_readback_for_run(
|
||||
"awoooi",
|
||||
run_id,
|
||||
canonical_traceparent(run_id),
|
||||
)
|
||||
legacy = correlation_readback_for_run("awoooi", run_id, "legacy-trace")
|
||||
|
||||
assert canonical == {
|
||||
"trace_id": canonical_traceparent(run_id),
|
||||
"work_item_id": f"platform-run:awoooi:{run_id}",
|
||||
"correlation_status": "canonical",
|
||||
}
|
||||
assert legacy == {
|
||||
"trace_id": "legacy-trace",
|
||||
"work_item_id": f"platform-run:awoooi:{run_id}",
|
||||
"correlation_status": "legacy_or_invalid_trace",
|
||||
}
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_run_status_exposes_canonical_identity_readback(
|
||||
monkeypatch: pytest.MonkeyPatch,
|
||||
@@ -86,6 +110,7 @@ async def test_run_status_exposes_canonical_identity_readback(
|
||||
created_at=datetime(2026, 7, 22, tzinfo=UTC),
|
||||
started_at=datetime(2026, 7, 22, tzinfo=UTC),
|
||||
completed_at=None,
|
||||
timeout_at=None,
|
||||
)
|
||||
|
||||
class _Result:
|
||||
@@ -110,6 +135,18 @@ async def test_run_status_exposes_canonical_identity_readback(
|
||||
assert payload["trace_id"] == trace_id
|
||||
assert payload["work_item_id"] == f"platform-run:awoooi:{run_id}"
|
||||
assert payload["correlation_status"] == "canonical"
|
||||
list_item = _run_list_item(
|
||||
row,
|
||||
remediation_summary=None,
|
||||
callback_reply_summary=None,
|
||||
)
|
||||
assert {
|
||||
key: list_item[key]
|
||||
for key in ("trace_id", "work_item_id", "correlation_status")
|
||||
} == {
|
||||
key: payload[key]
|
||||
for key in ("trace_id", "work_item_id", "correlation_status")
|
||||
}
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
||||
Reference in New Issue
Block a user