Four App Store Connect collections were empty across twelve apps: customer reviews, TestFlight feedback, TestFlight crashes, and the latest-build performance diagnostics. That is useful evidence, but it answers one narrow question. Nothing had reached those collections. It does not establish that the uploaded binaries contain the fixes already present in source.
Compare three layers
| Layer | Question it answers | What a green result does not prove |
|---|---|---|
| Feedback and diagnostics | Did a review, tester, crash report, or diagnostic reach this collection? | That the release is current or crash-free. |
| Build provenance | Which version, build number, and source commit produced the uploaded binary? | That Apple approved it or customers can download it. |
| Public storefront | Which version can a customer install in this storefront now? | That the source tree has no newer fixes waiting behind it. |
The source-to-build comparison exposed the real gap. Eleven repositories contained meaningful fixes newer than their uploaded App Store builds. The fixes clustered around persistence rollback, notification ordering, wall-clock timers, larger text, and data provenance. None of those differences appeared in the quiet feedback collections. They became visible only after every store build was tied back to the source that produced it.
- Step 01
Pin the artifact
Record the App Store version, build number, build identifier, and source commit together. A version string by itself cannot identify the code customers received.
- Step 02
Scope negative evidence
Write 'no report in this collection,' not 'no bug' or 'crash-free.' An empty feed is an observation about the feed.
- Step 03
Finish at the storefront
After approval, compare App Store Connect with the public lookup. Ten new versions now match the US storefront; UnitFlip and Kitwise remain in review on their previous public versions.