So there are two things that can happen:
1. The engine goes down during the webservice call: if the engine shutdown down is graceful (engine.shutdown()), the async threadpool will finish nicely. If the engine crashes, the transaction will be rolled back to before the webservice call.
2. The call is async, but there is a callback (ie service task send + receive task wait state). At that point, when the engine crashed, the status could be fetched from the ExecutionQuery, quering executions of a given process instance that are in a certain activity (pass the activity id)