altool --validate-app for iOS IPA errors Could not find the main bundle or the Info.plist is missing a CFBundleIdentifier

I totally fail to get altool to validate my .ipa. This is the command and error:

xcrun altool --validate-app -f ios/Afuera.ipa -type ios -u MY_ACCOUNT -p @keychain:APP-PWD
2024-01-06 16:42:02.156 *** Error: Validation failed for 'ios/Afuera.ipa'.
2024-01-06 16:42:02.157 *** Error: Could not find the main bundle or the Info.plist is missing a CFBundleIdentifier in ‘ios/Afuera.ipa’. Unable to validate your application. (-21017)
 {
    NSLocalizedDescription = "Could not find the main bundle or the Info.plist is missing a CFBundleIdentifier in \U2018ios/Afuera.ipa\U2019.";
    NSLocalizedFailureReason = "Unable to validate your application.";
}

The structure of the .ipa:

unzip -l ios/Afuera.ipa 
Archive:  ios/Afuera.ipa
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  01-06-2024 15:49   Payload/
        0  01-06-2024 12:36   Payload/_CodeSignature/
     5926  01-06-2024 15:49   Payload/_CodeSignature/CodeResources
  2181216  01-06-2024 15:49   Payload/mitt-spel
      266  01-06-2024 15:49   Payload/entitlements.xml
    12060  01-06-2024 15:49   Payload/embedded.mobileprovision
        0  01-06-2024 12:36   Payload/assets/
    41762  01-06-2024 15:49   Payload/assets/laser.wav
     1936  01-06-2024 15:49   Payload/assets/ship.png
      770  01-06-2024 15:49   Payload/assets/enemy-medium.png
      818  01-06-2024 15:49   Payload/assets/button_background.png
      809  01-06-2024 15:49   Payload/assets/README.md
     1168  01-06-2024 15:49   Payload/assets/enemy-big.png
     2056  01-06-2024 15:49   Payload/assets/window_background.png
     8832  01-06-2024 15:49   Payload/assets/atari_games.ttf
  1503968  01-06-2024 15:49   Payload/assets/8bit-spaceshooter.ogg
     5884  01-06-2024 15:49   Payload/assets/laser-bolts.png
    68650  01-06-2024 15:49   Payload/assets/explosion.wav
    12009  01-06-2024 15:49   Payload/assets/enemy-small.png
      676  01-06-2024 15:49   Payload/assets/explosion.png
      830  01-06-2024 15:49   Payload/assets/button_clicked_background.png
      990  01-06-2024 15:49   Payload/Info.plist
    17007  01-06-2024 15:49   Payload/AppIcon.png
     1265  01-06-2024 15:49   Payload/AppIcon-120x120.png
---------                     -------
  3868898                     24 files

The contents of the Info.plist file:

unzip -p ios/Afuera.ipa Payload/Info.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>CFBundleExecutable</key>
    <string>mitt-spel</string>
    <key>CFBundleIdentifier</key>
    <string>news.afuera</string>
    <key>CFBundleName</key>
    <string>Afuera</string>
    <key>CFBundleVersion</key>
    <string>1</string>
    <key>CFBundleShortVersionString</key>
    <string>1.0</string>
    <key>CFBundleIconName</key>
    <string>AppIcon-120x120.png</string>
    <key>CFBundleIcons</key>
    <dict>
      <key>CFBundlePrimaryIcon</key>
      <dict>
        <key>CFBundleIconFiles</key>
        <array>
          <string>AppIcon-120x120</string>
        </array>
      </dict>
    </dict>
    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
    <key>UIViewControllerBasedStatusBarAppearance</key>
    <false />
    <key>UIStatusBarHidden</key>
    <true />
  </dict>
</plist>

The same bundle (Afuera.app) is cleanly and successfully installed on my iPhone with ios-deploy. (With a dev provisioning profile in that case, of course).

At some point I had things “working” in the sense that the altool reported on errors that were real. Like not finding matching bundle id on my developer account, and me using the wrong provisioning profile. Then I recreated the bundle from scratch, with the exact same structure and content, and altool stopped caring about such things and only about this non-sensical thing about not finding the bundle id in the IPA.

Things I have tried:

  1. Using another user account on my Mac to validate (same error)
  2. Restarting my computer (yes, I'm desperate) (same error)

Now I am totally out of ideas. Anyone else that can see what I am doing wrong, or have ideas what I can try? Thanks in advance! 🙏♥️

I've now also tried to run this on another computer. Same macOS and XCode versions as on my main computer.

altool --validate-app for iOS IPA errors Could not find the main bundle or the Info.plist is missing a CFBundleIdentifier
 
 
Q