When an agent parks on a long-poll that expires with nothing to show,
nudge it to spend the idle time on other useful work instead of
immediately re-blocking on the same call.
- recv: when wait_seconds > 0 and the inbox is empty at timeout, the
'(empty)' result now carries IDLE_WAIT_HINT. Immediate peeks
(no/zero wait) are unchanged.
- bash_status: when wait_seconds > 0 and the task is still
pending/running at timeout, append BASH_IDLE_WAIT_HINT. Finished
tasks and no-wait calls are unchanged.
Both thread a 'waited' flag into the formatter so the hint only fires
on an actual wait-timeout. Unit tests cover both. Implements #1411.