App Ops Desk · Issue #14

Entitlements and capability creep

Capabilities feel free until they are not. Push, Associated Domains, App Groups, Health, NFC — each one can invalidate profiles, expand privacy questionnaires, and widen review surface.

Read time: 6 min Capabilities Risk control Pairs with Issues #2 and #8
One action this week: List every capability enabled on your shipping target. For each, write one sentence: why the user needs it this release.

Capability budget

If you cannot explain a capability in one user-facing sentence, it is a future incident. Turn it off until the feature ships for real.

Creep patterns

  • Enabled “just in case” during a tutorial
  • Copied a sample project’s entitlements file
  • Added App Groups for a feature that died months ago
  • Push enabled with no notification story in review notes
  • Associated Domains left pointing at a dead domain

Gate before merge

  1. Capability tied to a shipping user story
  2. Privacy nutrition / purpose strings updated same PR
  3. Profiles regenerated / signing verified
  4. Review notes updated if demo path changes
  5. Rollback plan if the capability fails review

Release log line

Capabilities delta since last App Store version:
+ Push Notifications — for order status
- HealthKit — removed unused

Bottom line

Capabilities are product surface, not checkboxes. Gate them with privacy, signing, and review notes in the same change.

Resources hub → Reading order and jump-by-symptom links. Join the App Ops Desk waitlist Weekly release ops for people who ship alone.