Skip to content

Strip extended attributes when bundling PDB seeds (fixes ITMS-91109 rejection)#25

Merged
cypherair merged 1 commit into
mainfrom
m24-strip-quarantine
Jun 12, 2026
Merged

Strip extended attributes when bundling PDB seeds (fixes ITMS-91109 rejection)#25
cypherair merged 1 commit into
mainfrom
m24-strip-quarantine

Conversation

@cypherair

Copy link
Copy Markdown
Owner

Bug

App Store / TestFlight upload of a seeded build was rejected with ITMS-91109: the package contained files carrying the com.apple.quarantine extended attribute.

Root cause: two of the local seed files (optimal-edges-a8/b8.pdb.lzfse) were downloaded via a browser / copied with Finder, which attaches the quarantine attribute — and macOS cp copies extended attributes by default, so the Copy PDB Seeds phase faithfully carried the flag into the app bundle.

Fix

  • The copy step now uses cp -fX (copy no extended attributes), so the bundle stays clean no matter where future seeds come from — CI artifact downloads included.
  • The two affected files in the local gitignored Seeds/ folder were cleaned in place (xattr -d com.apple.quarantine).

Verification

Fresh cubeone-seeded archive: all five seeds present, xattr -lr over the app's Resources reports zero quarantine attributes, and codesign --verify --deep --strict passes.

🤖 Generated with Claude Code

Seeds downloaded from CI (or copied via Finder) carry the
com.apple.quarantine extended attribute, and macOS cp copies xattrs
by default - so the attribute rode into the app bundle and App Store
validation rejected the upload with ITMS-91109. Copy with cp -X so
no extended attributes ever reach the bundle; the two affected local
seed files were also cleaned in place.

Verified: fresh cubeone-seeded archive has all five seeds, zero
quarantine attributes anywhere under Resources, and a valid deep
code signature.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@cypherair cypherair merged commit bb10617 into main Jun 12, 2026
2 checks passed
@cypherair cypherair deleted the m24-strip-quarantine branch June 12, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant