test: harden reconcile warning alarm coverage and daemon wiring assertion

Co-authored-by: genichin <4282227+genichin@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-08-26 04:21:17 +00:00
committed by GitHub
co-authored by genichin
parent a9e88f9770
commit 5dd3d57f86
2 changed files with 30 additions and 6 deletions
@@ -3,6 +3,8 @@ from __future__ import annotations
import logging
import pytest
from trex_core.application.broker_port import BalanceItem
from trex_core.application.intents import BuyIntent, IntentService, SellIntent
from trex_core.application.messaging import RpcRequest
@@ -488,11 +490,8 @@ def test_reconcile_warned_alarm_finalize_failure_and_publish_failure_are_isolate
warn_store=warn_store,
alarm_emitter=alarms,
)
try:
with pytest.raises(RuntimeError, match="finalize failed"):
failing_finalize.submit_buy(BuyIntent(intent_id="b-finalize-fail", slot_id=slot.slot_id))
assert False, "expected finalize failure"
except RuntimeError:
pass
assert alarms.calls == []
soft_fail_alarm = RecordingAlarmEmitter(return_value=False)
+27 -2
View File
@@ -7,6 +7,7 @@ daemon wiring was never run until the REL-004 live smoke timed out every buy.
"""
from __future__ import annotations
import ast
from pathlib import Path
from trex_core.application.portfolio import PortfolioItem, SnapshotStore
@@ -46,5 +47,29 @@ def test_daemon_wires_shared_alarm_emitter_into_intent_service():
/ "runtime"
/ "daemon.py"
).read_text(encoding="utf-8")
assert "self.intent_service = IntentService(" in src
assert "alarm_emitter=self.alarm_emitter" in src
tree = ast.parse(src)
found = False
for node in ast.walk(tree):
if not isinstance(node, ast.Assign):
continue
if not any(isinstance(t, ast.Attribute) and t.attr == "intent_service" for t in node.targets):
continue
call = node.value
if not (
isinstance(call, ast.Call)
and isinstance(call.func, ast.Name)
and call.func.id == "IntentService"
):
continue
for kw in call.keywords:
if kw.arg != "alarm_emitter":
continue
if (
isinstance(kw.value, ast.Attribute)
and kw.value.attr == "alarm_emitter"
and isinstance(kw.value.value, ast.Name)
and kw.value.value.id == "self"
):
found = True
break
assert found, "Daemon must pass self.alarm_emitter into IntentService(alarm_emitter=...)"