Closes #735
## What changed
- serialize mobile Agenda launch behind complete assigned-issue discovery
- deduplicate repeated launch taps with one in-flight promise
- preserve the durable checkpoint when discovery fails or the user leaves Agenda
- precache the new launcher for offline/subpath installs
## Verification
- `pytest -q tests/test_my_work.py tests/test_mobile_task_dock.py`
- `pytest -q` (1419 passed)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #735
What changed
Verification
pytest -q tests/test_my_work.py tests/test_mobile_task_dock.pypytest -q(1419 passed)