There are some scenarios which will leave an order request in an unknown state.
Specifically, this was identified with Binance returning HTML when a JSON response was expected.
The request status was not changed for this scenario.
This issue is meant to deal with
A new enum value will be introduced to manage the unknown request status: RequestStatus::ERROR. This allows us to communicate an OrderAck back to the client so it can take appropriate action.
The timeout logic should be implemented by the gateways. Although this logic could be implemented by the clients, it feels more natural to centralise the monitoring.
There are some scenarios which will leave an order request in an unknown state.
This issue is meant to deal with
RequestStatus::ERROR
. This allows us to communicate anOrderAck
back to the client so it can take appropriate action.