@ephemient I already do that, but honestly that might not be the best route for error handling. I think you should have @throws for unexpected error, but in general don't throw a handled exception. It seems its best to catch any exception in the KMP code and return a result type of error to the caller which contains all the error information you can collect from Kotlin, including stack trace. If you just throw the exception to Native, like I mentioned, the entire stack trace is lost and the inner exception chain is lost when it converts to an NSError.