Problem
Service teardown relies heavily on disconnect callbacks and does not have focused evidence that connection, audio resources and wake locks are always released when the Android service is stopped while the process remains alive.
Scope
- Add focused lifecycle tests around service destruction and disconnect ordering.
- Make teardown idempotent and release connection/audio/wake-lock resources where ownership requires it.
- Preserve normal reconnect behavior and the service-owned PTT safety path.
- Do not change the intended always-on auto-start watchdog policy.
Acceptance
- Repeated stop/destroy/disconnect ordering does not leak or double-release resources.
- PTT is released before teardown.
- Existing Humla/Mumla unit tests and FOSS builds pass.
- Physical process/audio verification remains a later T56 step.
Problem
Service teardown relies heavily on disconnect callbacks and does not have focused evidence that connection, audio resources and wake locks are always released when the Android service is stopped while the process remains alive.
Scope
Acceptance