Blindly appending to the .bashrc makes assumptions about how the .bashrc is interpreted.
A number of them may test for the existence of a terminal, and exit. Thus, they never reach the end of the file.
For simple .bashrc implementations (just a list of assignments), that will work. For others, you need to put it in the right place - for those definitions you want available at all times need to go toward the beginning (before configuration tests of things), and not the end.