Client notes

What the pack actually changed in the sprint.

These are notes from Android teams in and around Kuala Lumpur who briefed a specific investigation. They mention signatures, OEM skins, and calendar friction — not a star widget.

Android Crash Stability Audit

They asked for mapping files before they asked for a meeting. The pack named an R8 keep rule we had dropped in the store flavour, which none of our Pixels ever hit. I still wish the readout had been a written memo only — our PM joined and the session ran long — but the signatures were specific enough to hand to engineering the same afternoon.

Aina Rahman
Release owner, grocery delivery app, Petaling Jaya

ANR and Main-Thread Stall Review

Our ANR rate looked ‘fine’ next to crashes until Kernel Pulse Grid split the traces. The freeze was a contacts lookup on the main thread during first open, stretched on Xiaomi units we did not own. We bought two of those models after the brief. The contacts lookup moved off the main thread the following sprint.

Jonathan Chew
Android engineer, community banking app, Kuala Lumpur

OEM Device Reproduction

We booked a bench day with a tester video of a payment sheet dying on Oppo. They reproduced it on ColorOS before lunch and sent logcat with the exact OEM media overlay in the stack. I had spent a week on a Pixel 7 pretending the video was user error.

Siti Nurhaliza binti Ismail
QA lead, e-wallet contractor, Shah Alam

Pre-release Stability Gate

The pre-release note was a hold. I was annoyed — we had already scheduled the production stagger for Thursday. The hold pointed at a native crash in an ads .so that internal testers had only triggered twice. Those two traces were real. We pulled the ads version back and promoted the next candidate instead.

Arjun Pillai
Product manager, classifieds app, Penang (remote with KL engineering)

Recurring Crash Triage

Weekly triage is unglamorous: a Thursday note, a list of signatures, a nudge when we forgot to archive mapping for a hotfix. After the January audit we did not want another full investigation; we wanted someone to keep naming the new frames while we paid down the first pack. That is what we got.

Mei Ling Tan
Engineering manager, ticket and events app, Kuala Lumpur

Two colleagues talking across a wooden table in an office

Longer note · grocery app, Petaling Jaya

A store flavour mapping that never left CI

The team’s Play Console user-perceived crash rate crossed the bad-behaviour band two days after a store-flavour release. Internal Samsung units were quiet. Crashlytics for that version code was a wall of unknown frames.

The audit clock did not start until mapping.txt for the store flavour arrived — it had been overwritten by a white-label job the same night. Once the frames had names, the top cluster was a missing R8 keep rule on a JSON model used only by the store checkout path. Xiaomi units in the vitals window hit that path more often because that cohort used the “save card” sheet the office testers skipped.

The finding pack ranked that cluster first, a Samsung-only MediaPlayer path second, and a long tail of WebView renderer crashes that lined up with a Chrome train. Engineering took the keep rule in the next hotfix. The MediaPlayer path waited for a bench day. The readout itself slipped twice around their freeze, which the release owner still mentions.

Crash stability audit scope