Debug APK Release
What's New
feat(observability): lifecycle markers + cancel-leak fix (#316)
Adds diagnostic logging across KtorServiceClient and AuthenticationManager
to make stuck-reconnect / stuck-CarPlay sessions traceable from log
captures.
- stateLabel / dcsLabel for compact, grep-stable session-state tags
- Transport state-edge logs (Connected / Reconnecting / Failed / Disconnected)
- isReadyForCommands edge collector
- Explicit "no recovery taken" branch in onAppForeground for the
actually-stuck case (state != Connected, no savedInfo); happy path
stays silent so logs aren't polluted with non-events - "Reconnect not applicable" branch in onExternalConsumerActive
- sendRequest[msgId] markers: start/sent/resumed at .d (high volume),
cancelled/transport=null at .i (rare, informational) - AuthMgr per-branch trace via Logger.withTag("AuthMgr")
Bug fix: sendRequest now installs invokeOnCancellation to remove the
rpcEngine callback if the parent coroutine is cancelled (e.g. a caller's
withTimeoutOrNull fires). Without this, never-arriving responses leak
orphaned callbacks for the lifetime of the session.
Important Notes
- This is a debug build — not intended for production use
- Contains debug symbols and logging
- Performance may be slower than release builds
Installation
Download the APK below and install on your Android device.