diff --git a/src/dexorder/base/orderlib.py b/src/dexorder/base/orderlib.py index e02958e..41ae63f 100644 --- a/src/dexorder/base/orderlib.py +++ b/src/dexorder/base/orderlib.py @@ -17,6 +17,7 @@ class SwapOrderState (Enum): Canceled = 3 Expired = 4 Filled = 5 + Error = 99 @property def is_open(self): diff --git a/src/dexorder/event_handler.py b/src/dexorder/event_handler.py index 87d9de6..635b7d3 100644 --- a/src/dexorder/event_handler.py +++ b/src/dexorder/event_handler.py @@ -273,6 +273,10 @@ def finish_execution_request(req: TrancheExecutionRequest, error: str): except KeyError: pass if error != '': + if error == 'NO': + # order is not open + log.error(f'Order {OrderKey(tk.vault,tk.order_index)} was closed, undetected!') + order.complete(SwapOrderState.Expired) log.debug(f'execution request for tranche {tk} had error "{error}"') if error == '': log.debug(f'execution request for tranche {tk} was successful!')