DashboardspotlightAPPLE_API_KEY raw DER lacks PEM armor —…

APPLE_API_KEY raw DER lacks PEM armor — breaks Xcode 26 notarytool

Category: gotcha
Confidence: 1.00
ID: 01a08acc-9c77-7e8d-863c-f66360963750
Project ID: ec1699be-a430-4fc6-879b-c437a47171b4
Cross-project: No
Recalled in other projects: 1
Source session: 0XWWVPAj2NHWgHD7s
Created: 2026-07-21 11:59:45
Updated: 2026-09-10 10:11:00

Cross-Project Recalls

ProjectHitsLast recalled
opencode-lore 1 2026-07-28

Content

In getsentry/spotlight's build.yml, jq -r .private_key on the APPLE_API_KEY secret extracts a raw base64 DER body with no PEM header/footer/line-wrapping. Xcode 16's notarytool tolerated this, but the macOS GitHub runner rolled macOS15/Xcode16 → macOS26/Xcode26.6 on 2026-07-21; Xcode 26's notarytool rejects unarmored keys, and electron-builder's bundled @electron/notarize@2.2.1 does raw JSON.parse on Apple's plain-text error, masking the real cause with a SyntaxError. The key itself was valid/unexpired — issue was purely missing PEM framing. Fix (PR #1334, commit 66d991e3): wrap the body with BEGIN/END PRIVATE KEY armor + 64-col folding, idempotently (skip if already armored), in both build.yml locations that decode the key. Verified end-to-end on main via GitHub Actions run 29828172734 on macos-26-arm64/macOS 26.4 — "notarization successful" logged for both x64 and arm64 builds, DMGs produced.

Move to: