0d02f0d1dc
Review finding (quality pass): on a single-profile gateway, _handle_busy_command set _busy_input_mode but left _busy_text_mode stale, so the adapter refresh a line later re-read the old value — /busy queue persisted to config but live text messages kept interrupting until restart. The profile path already re-derives both from the fresh config; the non-profile path now does the same via _load_busy_text_mode() (busy_input_mode is the source of truth, run.py:9877). Regression assertion added to test_set_mode_persists; verified red without the production fix.