SKProductRequest delegate failure with undocumented AMSErrorDomain error

When testing In-App Purchase SKProductRequest with WiFi off and no cellular, the failure delegate method gets invoked as one would expect. Unexpectedly, this happens with an undocumented error domain and codes (AMSErrorDomain).

Does anyone know where to find public documentation on the AMSErrorDomain?

Code Block
extension Store: SKProductsRequestDelegate {
    func request(_ request: SKRequest, didFailWithError error: Error) {
        if let storeError = error as? SKError {
            os_log("Failed to load products with store kit error: %@", "\(storeError)")
        } else {
            os_log("Failed to load products with other error: %@", "\(error)")
        }
    }
...
}


Code Block
(lldb) po error
Error Domain=AMSErrorDomain Code=203 "Bag Load Failed" UserInfo={NSLocalizedFailureReason=Unable to retrieve p2-product-offers-batch-limit because we failed to load the bag., NSLocalizedDescription=Bag Load Failed, NSUnderlyingError=0x6000004707b0 {Error Domain=AMSErrorDomain Code=206 "Bag Load Failed" UserInfo={NSLocalizedDescription=Bag Load Failed, NSLocalizedFailureReason=Unable to connect to internet.}}}

Clearly the underlying localized failure reason makes sense and is user friendly, however the error objects standard localized description 'bag load failed' is far from user friendly and isn't really acceptable to me to put in front of the user.

Apple's very own InAppPurchase sample code just pumps the error localizedDescription into a UIAlertController message--but this can be done better! Title: 'Product Request Status', Message: 'Bag Load Failed'

How are others handling failures in the SKProductRequest for non-SKError errors?
SKProductRequest delegate failure with undocumented AMSErrorDomain error
 
 
Q