Summary
Our integration with the Stellar Horizon network relies on real-time transaction parsing, but the current implementation lacks resilience against malformed memos or unexpected asset types (like Liquidity Pool shares). We've observed several unhandled promise rejections causing the listener process to silently die, which results in stalled deposits for merchants.
We need to fundamentally rewrite the parsing module to aggressively validate incoming transaction schemas before attempting to process them. This includes wrapping the SSE (Server-Sent Events) listener in an exponential backoff retry wrapper to gracefully handle transient network disconnects from the Stellar public nodes.
Acceptance Criteria
Tech Stack
TypeScript (Node.js 24), stellar-sdk. Use Jest for mock-driven testing.
Summary
Our integration with the Stellar Horizon network relies on real-time transaction parsing, but the current implementation lacks resilience against malformed memos or unexpected asset types (like Liquidity Pool shares). We've observed several unhandled promise rejections causing the listener process to silently die, which results in stalled deposits for merchants.
We need to fundamentally rewrite the parsing module to aggressively validate incoming transaction schemas before attempting to process them. This includes wrapping the SSE (Server-Sent Events) listener in an exponential backoff retry wrapper to gracefully handle transient network disconnects from the Stellar public nodes.
Acceptance Criteria
Tech Stack
TypeScript (Node.js 24),
stellar-sdk. Use Jest for mock-driven testing.