Shells are a nuisance. Which files even get loaded? It depends on the context in which you get a shell.
These are all files in your homedir, I’m ignoring systemwide files.
|Context||Interactive?||rc files loaded|
Interactivity is important because printing output on a non-interactive shell will probably lead to unobvious breakage. For example, printing your mailbox status on an SFTP connection will result in mysterious failures after connecting and authenticating successfully.