QuickMsgScreen held the on-device scrollback in two RAM rings, each slot a
full MSG_TEXT_BUF: CH_HIST_MAX=96 + DM_HIST_MAX=64 made the screen object
~31 KB on the heap (allocated at boot, never freed). On the Wio variant
(MAX_CONTACTS=350, OFFLINE_QUEUE_SIZE=256) that left only ~3 KB free heap,
so allocations in the input/menu path failed and entering Diagnostics hung
the device.
Halve the rings to CH_HIST_MAX=48 / DM_HIST_MAX=32, recovering ~14 KB of
free heap (measured 3->17 KB). History is RAM-only (lost on reboot anyway);
the cost is shorter on-device scrollback.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>