From d6c36143019c0dae0991ebcd9448c92260b12c92 Mon Sep 17 00:00:00 2001 From: ao gong <41768719+ageorge156@users.noreply.github.com> Date: Fri, 21 Aug 2026 22:32:14 +0800 Subject: [PATCH] test: require deterministic trade identity --- tests/test_artifact.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/test_artifact.py b/tests/test_artifact.py index ee2e3e1..d2b2a6c 100644 --- a/tests/test_artifact.py +++ b/tests/test_artifact.py @@ -106,6 +106,9 @@ def test_research_artifact_projects_versioned_queryable_fact_tables() -> None: result.schedule.signal_to_execution.iloc[0].date() ] assert set(artifact.trades["side"]) == {"buy", "sell"} + assert artifact.trades["trade_id"].is_unique + assert artifact.trades["trade_id"].str.startswith("run-20260105-a:").all() + assert artifact.trades["signal_id"].str.startswith("run-20260105-a:signal:").all() assert {"security", "cash"}.issubset(set(artifact.positions["asset_type"])) assert artifact.positions.groupby("trade_date")["weight"].sum().tolist() == pytest.approx( [1.0, 1.0, 1.0, 1.0]