Back to skills
SKILL.md
Pre Submission Audit
ASecurityPre-submission rejection-prevention audit. Pattern-matches against top 15 rejection reasons including 5.1.2(i) AI disclosure. Use when the user says 'pre-submission audit', 'will Apple reject', 'audit before submit', 'rejection check'.
- 3 stars
- 0 votes
- 0 copies
- 0 views
- Added October 4, 2026
Security analysis
100/100Pro scans all 3 files and shows the line behind each finding
npx -y skills add khadinakbarlabs/expo-mobile-app-builder --skill pre-submission-audit --agent claude-codeAre you the author of Pre Submission Audit?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/khadinakbarlabs-pre-submission-audit)---
name: "pre-submission-audit"
description: "Pre-submission rejection-prevention audit. Pattern-matches against top 15 rejection reasons including 5.1.2(i) AI disclosure. Use when the user says 'pre-submission audit', 'will Apple reject', 'audit before submit', 'rejection check'."
---
# Pre-Submission Audit
Pattern-match the app + metadata against top 15 rejection reasons from Q1-Q2 2026. Output PASS/FAIL per dimension with file:line fixes.
## 12-dimension audit
### 1. Apple Floor (every app must have)
- [ ] App icon (1024x1024 + Asset Catalog set)
- [ ] PrivacyInfo.xcprivacy (run `privacy-manifest-rn`)
- [ ] Privacy Policy URL: in ASC AND in-app Settings
- [ ] Restore Purchases on paywall AND Settings (if IAP)
- [ ] Account-deletion flow in app (5.1.1(v), if accounts)
- [ ] App version + build number visible (Settings)
- [ ] Empty/error states for every list/async call
- [ ] Built against iOS 26 SDK (mandatory)
### 2. Guideline 2.1 — App Completeness
- No "TODO" placeholder strings
- All buttons have working actions
- No dead navigation links
- Demo account credentials prepared
- "What's New" specific (NOT "Bug fixes and improvements")
- No crashes on launch
### 3. Guideline 2.3 — Accurate Metadata
- Screenshots match current app
- No "best", "#1", "fastest" claims
- No "AI-powered" claim if you don't have AI
### 4. Guideline 3.1.1 / 3.1.2 — IAP & Subscriptions (run `paywall-compliance`)
- All paid digital goods through StoreKit (no external web checkout)
- Subscription paywall shows: exact price, billing freq, trial length, restore button
- NOT toggle-based "free trial → paid" design (REJECTED in 2026)
- Auto-renewal disclosure visible
- Cancel-anytime instructions visible
### 5. Guideline 4.0 / 4.1 — Design / Copycats
- Native iOS feel (not web wrapper)
- 44x44 pt taps everywhere
### 6. Guideline 4.2 — Minimum Functionality
- More than wraps a website
- Uses native iOS capabilities meaningfully
- Has seed content (not all empty states)
### 7. Guideline 4.3 — Spam / Clones
- Not near-duplicate of own apps
- If saturated category: clear wedge in review notes
### 8. Guideline 4.8 — Sign in with Apple
- Required if any 3rd-party social login offered
- expo-apple-authentication wired
### 9. Guideline 5.1.1 — Privacy
- NSUserTrackingUsageDescription if 3rd-party tracking SDK
- Privacy nutrition label matches actual collection
- No required login for non-account features
- Account deletion in-app
### 10. Guideline 5.1.2(i) — Third-Party AI Disclosure (run `5-1-2-i-ai-disclosure`)
- Every 3rd-party AI provider named explicitly in privacy disclosures
- Explicit consent modal naming the provider before first call
- (On-device Foundation Models exempt)
### 11. Guideline 5.1.5 — Location
- Always-on location only if justified
- WhenInUse default
### 12. Accessibility (run `accessibility-audit`)
- VoiceOver labels everywhere
- Dynamic Type respected
- 44pt taps
- Reduce Motion gating
## Output
```
PRE-SUBMISSION AUDIT — [app name] v[version] build [build]
CRITICAL (will reject):
- [ ] FAIL 5.1.2(i): an external AI provider receives user content but no provider-specific consent modal is shown
- [ ] FAIL 3.1.1: Paywall toggle-based design
HIGH:
- [ ] FAIL 4.2: TabView has only one tab + 2 empty states
MEDIUM:
- [ ] WARN 2.1: What's New says "Bug fixes and improvements"
PASS: [list]
VERDICT: BLOCK SUBMISSION until 2 critical and 1 high fixed.
```
## Reference
`references/06-store-readiness.md`
Files in this skill
- SKILL.md
- agents/openai.yaml
- references/06-store-readiness.md
Attribution
Comments
Loading comments…