Zend certified PHP/Magento developer

In Debian 11 docker container, I cannot type lowercase S when I switch to bash from zsh

When I connect to my Docker container with Debian 11 via ssh, I have it set up such that zsh is the main shell. When I switch to bash (by typing bash) I lose the ability to type the lowercase letter s (no such problem with any other letter, lower or uppercase, even UTF-8 and other, non-latin alphabets, work).

It is the same if I connect via docker attach CONTAINER_NAME (because then, bash is the default shell, not zsh). This problem persists across various terminal applications and regardless of whether I connect as root or another user.

The locales are all configured as en_US.UT

The issue appears to be in stty or .inputrc, I suspect, and a tried variations of settings of each, yet no matter what I try, nothing seems to make any difference (I double check and reboot the container every time).

Furthermore, it appears that upon loading a Python 3.11 console which is started by one of the python cli-apps run from under zsh (not bash!), I also cannot type the lowercase letter s there. More interestingly, while in bash I can at least paste it, Python console simply refuses to even accept it pasted, basically stripping all letters s.

Below are my .inputrc settings:

"e[A": history-search-backward
"e[B": history-search-forward
set show-all-if-ambiguous on
set completion-ignore-case on

# Settings ensuring certain typed ASCII charachters are printing
set output-meta on
set input-meta on
set convert-meta off

FIY: commenting them all out didn’t help, as well as setting the same settings in /etc/inputrc. And here’s the current stty settings (set to stty sane, but I tried various different kinds):

$ stty --all
speed 38400 baud; rows 43; columns 170; line = 0;
intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff -iuclc -ixany imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc 

And, just in case the output of locale command (ran when in bash):

$ locale
LANG=en_US.UTF-8
LANGUAGE=en.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

I think never cared much about it until I had to work with the Python console, and I believe this is somehow connected.

Can anyone advise?