Failure to Symbolicate Crash Logs for WatchKit Extension

Our WatchOS WatchKit App Extension is crashing for some end users, but we are unable to reproduce the crash on our own devices and simulators.



I had the users send me their crash logs, and they are unsymbolicated. I have successfully symbolicated many PHONE crash logs before, but I have been unable to symbolicate this WATCH log.



So far I have tried:



1. symbolicatecrash, passing in the .dsym and the .crash



`/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash crash3.crash -d dSYMs/DeltaTrainer\ WatchKit\ App\ Extension.appex.dSYM`



I've tried this with several different .dSYM sources. I downloaded the dSYMs from App Store Connect for the correct version of the App (5.5). I also grabbed the dSYMs directly from my local archive of version 5.5 (that is the file shown above). Both simply output "No symbolic information found" and while searching for the symbols it will print something like:



`Checking “dSYMs/DeltaTrainer WatchKit App Extension.appex.dSYM/Contents/Resources/DWARF/DeltaTrainer WatchKit App Extension”
dSYMs/DeltaTrainer WatchKit App Extension.appex.dSYM/Contents/Resources/DWARF/DeltaTrainer WatchKit App Extension does not match 44e9ce0b028d3db8b2a1d370d1b5e8e9
Checking “dSYMs/DeltaTrainer WatchKit App Extension.appex.dSYM/Contents/Resources/DWARF/DeltaTrainer WatchKit App Extension”
dSYMs/DeltaTrainer WatchKit App Extension.appex.dSYM/Contents/Resources/DWARF/DeltaTrainer WatchKit App Extension does not match 11489fc1ce45325ab0ed007c64d4254b
Checking “dSYMs/DeltaTrainer WatchKit App
... `


2. Running atos on specific trace stack addresses with the same two dSYM sources. atos just outputs another random address like: 0x0000840 (in DeltaTrainer Watchkit Extension) which leads me to think the symbols are not really correct there either (even if it supposedly finds symbols for the correct architecture).



3. Loading version 5.5 of the app on to my iPhone and Apple Watch, opening up my iPhone in the X-Code "Devices and Simulators" tab, manually loading the crash log onto the device, right clicking, and selecting "re-symbolicate log". This has no effect on the log.



Again, I have tested and know that **all three of these methods work for phone app crash logs** with phone app dSYM files. Any tips on how to get **watch crash logs** to symbolicate would be greatly appreciated.



Thank you!



Below is the beginning of the unsymbolicated crash file for reference:

{"bug_type":"109","os_version":"Watch OS 6.0 (17R575)","build_version":"0","timestamp":"2020-05-01 22:01:14.31 +0100","app_name":"DeltaTrainer WatchKit App Extension","bundleID":"com.deltaband.DeltaBandBeta.watchkitapp.watchkitextension","incident_id":"FE161D58-0911-44FD-A2EF-4BE2D85A181A","name":"DeltaTrainer WatchKit App Extension","is_first_party":false,"app_version":"5.5","share_with_app_devs":false,"slice_uuid":"7d8feb96-fd51-338b-9a71-e4e7f2884b38","adam_id":1466445684}
Incident Identifier: FE161D58-0911-44FD-A2EF-4BE2D85A181A
CrashReporter Key:   7cecf588139187109ce12d816a0b44f148b65ef5
Hardware Model:      Watch4,4
Process:             DeltaTrainer WatchKit App Extension [242]
Path:                /private/var/containers/Bundle/Application/592AC172-C8A6-4899-AACA-E64D0E622B18/DeltaTrainer WatchKit App.app/PlugIns/DeltaTrainer WatchKit App Extension.appex/DeltaTrainer WatchKit App Extension
Identifier:          com.deltaband.DeltaBandBeta.watchkitapp.watchkitextension
Version:             0 (5.5)
AppVariant:          1:Watch4,4:6
Code Type:           ARM (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           com.deltaband.DeltaBandBeta.watchkitapp.watchkitextension [340]




Date/Time:           2020-05-01 22:01:14.1262 +0100
Launch Time:         2020-05-01 22:01:11.0000 +0100
OS Version:          Watch OS 6.0 (17R575)
Release Type:        User
Baseband Version:   
Report Version:      104


Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000000
VM Region Info: 0 is not in any region.  Bytes before following region: 76677120
      REGION TYPE              START - END     [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      UNUSED SPACE AT START
---> 
      __TEXT                 04920000-04a2c000 [ 1072K] r-x/r-x SM=COW  ...App Extension


Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [242]
Triggered by Thread:  7


Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib        0x1e8d6540 0x1e8d2000 + 17728
1   libsystem_kernel.dylib        0x1e8d5a0c 0x1e8d2000 + 14860
2   CoreFoundation                0x1ecebb90 0x1ec46000 + 678800
3   CoreFoundation                0x1ece6e8c 0x1ec46000 + 659084
4   CoreFoundation                0x1ece64a0 0x1ec46000 + 656544
5   GraphicsServices              0x222562ec 0x22250000 + 25324
6   UIKitCore                      0x3b627784 0x3ad66000 + 9181060
7   libxpc.dylib                  0x1e9d4aa4 0x1e9aa000 + 174756
8   libxpc.dylib                  0x1e9c0a90 0x1e9aa000 + 92816
9   libxpc.dylib                  0x1e9c33e4 0x1e9aa000 + 103396
10  Foundation                    0x1f6b663c 0x1f670000 + 288316
11  PlugInKit                      0x284562f8 0x2843d000 + 103160
12  WatchKit                      0x311d4f94 0x310ec000 + 954260
13  WatchKit                      0x311d4fb8 0x310ec000 + 954296
14  libdyld.dylib                  0x1e780a38 0x1e77e000 + 10808


Thread 1:
0   libsystem_pthread.dylib        0x1e97ca5c 0x1e972000 + 43612


Thread 2:
0   libsystem_pthread.dylib        0x1e97ca5c 0x1e972000 + 43612


Thread 3:
0   libsystem_pthread.dylib        0x1e97ca5c 0x1e972000 + 43612