What happened
At the owner's request the animated splash screen was removed from Ailoos App. The result, measured with am start -W three times on a tablet on 9 September 2026, was 7.9 seconds of a solid colour before the first frame of the app. The animation had never caused the wait. It had covered it — permission to be slow, dressed as design.
Where the time went
Measured with a Stopwatch and debugPrint from WidgetsFlutterBinding.ensureInitialized(), on the device (estimating would have been worthless):
| Segment | Cumulative ms |
|---|---|
| Integrity audit (root kill-switch) | 362 |
| Local database init | 576 |
| Secure-enclave key | 1,067 |
| Encrypted box open | 1,227 |
| Context manager | 1,329 |
… everything else, before runApp | ~7,900 |
The app did all of its startup — every service, every connection attempt — before calling runApp. Nothing painted until everything was ready.
The fix
Paint first, then initialise: runApp with a minimal shell immediately; services start afterwards and the UI lights up as each becomes ready. The measurement code stayed in main.dart deliberately, because the next regression will be found the same way.
The rule
An animation at startup is waiting with permission. Before adding one, measure the startup it would cover. And when a decoration is removed and the product looks worse, the decoration was not the problem.
Related
The same review found that four buttons in the app's settings had never called the real client that had been written for them months earlier — the code existed, the wiring did not. Real but disconnected, again.
From the Ailoos App settings sweep, 2026-09-09.


