Fix unmanaged reconciliation review blockers

Co-authored-by: genichin <4282227+genichin@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-09-13 02:21:37 +00:00
committed by GitHub
co-authored by genichin
parent f9284d1de8
commit 591db7adb7
26 changed files with 484 additions and 87 deletions
+11 -7
View File
@@ -213,6 +213,9 @@ class Daemon:
from trex_core.runtime.broker_provider import build_broker_provider
self.broker_provider = build_broker_provider(config, read_port=self.portfolio_read)
self.broker, self.broker_source = self.broker_provider.get_broker_for_read()
self.reconciliation_broker, self.reconciliation_broker_source = (
self.broker_provider.get_broker_for_reconciliation()
)
self.account_snapshot_service: AccountSnapshotService | None = None
if config.account_snapshot.enabled:
if config.broker != "kis":
@@ -271,6 +274,7 @@ class Daemon:
read_port=self.portfolio_read,
store=self.snapshot_store,
broker=self.broker,
core_holdings_broker=self.reconciliation_broker,
schedule_kst=_parse_kst_time(config.snapshot_schedule.kst_time),
# dcy-020 / REQ-058·062 (BAT-030): universe slot reconcile (creates/
# retires the permanent asset slots) + core-holding divergence
@@ -425,7 +429,7 @@ class Daemon:
while not self.stop.wait(self.config.ledger_interval_sec):
try:
self.ledger_writer.run_once()
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S112
continue
def _intent_rpc_loop(self) -> None:
@@ -433,7 +437,7 @@ class Daemon:
self._transports.append(transport)
try:
transport.declare_topology(self.config.instance_key)
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S110
pass
handler = make_intent_rpc_handler(
self.intent_service,
@@ -448,7 +452,7 @@ class Daemon:
self._transports.append(transport)
try:
transport.declare_topology(self.config.instance_key)
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S110
pass
handler = make_slots_rpc_handler(
self.slot_repo,
@@ -472,7 +476,7 @@ class Daemon:
self._transports.append(transport)
try:
transport.declare_topology(self.config.instance_key)
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S110
pass
handler = make_strategy_state_set_handler(
self.slot_repo, self.strategy_state_store,
@@ -486,7 +490,7 @@ class Daemon:
self._transports.append(transport)
try:
transport.declare_topology(self.config.instance_key)
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S110
pass
handler = make_control_rpc_handler(
self.pause_store,
@@ -501,7 +505,7 @@ class Daemon:
while not self.stop.wait(self.safety_sell.base_tick_sec):
try:
self.safety_sell.run_once()
except Exception: # noqa: BLE001 - loop must survive transient errors
except Exception: # noqa: BLE001,S112 - loop must survive transient errors
continue
def _snapshot_scheduler_loop(self) -> None:
@@ -566,7 +570,7 @@ class Daemon:
for tr in self._transports:
try:
tr.close()
except Exception: # noqa: BLE001
except Exception: # noqa: BLE001,S110
pass
def run(self) -> None: # pragma: no cover - process entrypoint