Category: bug
Problem
src/stellar/stellar-monitor.service.ts around lines 120-132 has return { lastRunAt, status, lastError }; immediately followed by await this.sorobanMonitor.pollEscrowEvents(); — the await sits after the return statement, making it dead/unreachable code.
Impact
pollEscrowEvents() (a real, useful method on SorobanMonitorService that verifies deposit balances and marks escrow deposit/release/refund/expired/dispute state transitions) is never invoked anywhere in the app as a result of this apparent copy-paste/merge error, so on-chain escrow state is never reconciled against the database.
Suggested fix
Move the pollEscrowEvents() call before the return, or into the appropriate scanning method rather than the status-reporting getter it currently sits in.
Category: bug
Problem
src/stellar/stellar-monitor.service.ts around lines 120-132 has
return { lastRunAt, status, lastError };immediately followed byawait this.sorobanMonitor.pollEscrowEvents();— the await sits after the return statement, making it dead/unreachable code.Impact
pollEscrowEvents()(a real, useful method onSorobanMonitorServicethat verifies deposit balances and marks escrow deposit/release/refund/expired/dispute state transitions) is never invoked anywhere in the app as a result of this apparent copy-paste/merge error, so on-chain escrow state is never reconciled against the database.Suggested fix
Move the
pollEscrowEvents()call before thereturn, or into the appropriate scanning method rather than the status-reporting getter it currently sits in.