* fix(audio): open 3-8ch HDA mics at native layout (#813)
HDA analog capture often reports 4 channels. Opening below that native
count can abort PortAudio after read with free(): corrupted unsorted
chunks (same class of bug as #666/#673).
Try the reported channel count first when it is between 3 and 8, then
2ch and 1ch. Pulse devices that advertise 32/128 channels still open
stereo-first. Downmix N channels to mono so engines keep seeing 1ch.
Virtual-device filtering for pipewire/default (#629) is unchanged.
* fix(audio): downmix HDA capture from first channel pair
Averaging all N HDA channels halves speech when only the front pair is live.
Keep stereo mean-of-both, and for 3+ channels average channels 0 and 1.
* fix(audio): pick loudest channel for N-ch downmix
First-pair-only downmix silenced mics on ch2+. For 3+ channels, select
the loudest channel by per-buffer mean-square so speech stays at full
level whether it lands on the front or rear pair. Stereo still averages
both channels.
* fix(audio): sticky N-ch downmix channel for open stream
Pin the loudest-channel pick for the life of a capture stream so a
noise burst on another input cannot switch the mic mid-utterance.
* fix(audio): gate sticky downmix lock on speech energy
Don't pin the N-ch sticky channel from a silent/ambient first buffer;
only lock once the loudest channel clears a documented mean-square floor.
* style: isort sticky-lock import in device config tests