fix: preserve multi-cause reconcile warnings and align slot blocking

Co-authored-by: genichin <4282227+genichin@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-09-12 13:22:40 +00:00
committed by GitHub
co-authored by genichin
parent e47bebacaf
commit 45a5e4157d
16 changed files with 337 additions and 96 deletions
@@ -892,6 +892,8 @@ def test_slot_to_dict_reconcile_warned_false_when_no_warn_store():
row = slot_to_dict(slot, warn_store=None)
assert "reconcile_warned" in row
assert row["reconcile_warned"] is False
assert row["trade_eligible"] is True
assert row["reconcile_warning_cases"] == []
def test_slot_to_dict_reconcile_warned_true_when_warned():
@@ -902,6 +904,8 @@ def test_slot_to_dict_reconcile_warned_true_when_warned():
warn_store.set_warned(str(slot.slot_id), portfolio_id="pf-A", case_code="B")
row = slot_to_dict(slot, warn_store=warn_store)
assert row["reconcile_warned"] is True
assert row["trade_eligible"] is False
assert row["reconcile_warning_cases"] == ["B"]
def test_slot_to_dict_paused_and_warned_independent():