The issue:
The behavior of mne.preprocessing.interpolate_bridged_electrodes is to compute the interpolation matrix based on all available non-bridged electrodes, independently of their presence in info["bads"]. This silent behavior can lead to data from "bads" being mixed into the data if the user is not aware of this. Since there is no note of this in the documentation, the user has to either identify the issue visually (with which minor bad channel issues may be imperceptible) or read through the code.
A solution:
While this can be avoided by the user by manually dropping those channels from the interpolation, a more natural behavior would be for interpolate_bridged_electrodes to handle this itself. Either by default, by providing an option, or at least by warning the user and documenting this behavior.
The issue:
The behavior of mne.preprocessing.interpolate_bridged_electrodes is to compute the interpolation matrix based on all available non-bridged electrodes, independently of their presence in info["bads"]. This silent behavior can lead to data from "bads" being mixed into the data if the user is not aware of this. Since there is no note of this in the documentation, the user has to either identify the issue visually (with which minor bad channel issues may be imperceptible) or read through the code.
A solution:
While this can be avoided by the user by manually dropping those channels from the interpolation, a more natural behavior would be for interpolate_bridged_electrodes to handle this itself. Either by default, by providing an option, or at least by warning the user and documenting this behavior.