Whenever you use a library, you add its entirety to your codebase.
No. Library is a black box. I don't have to maintain its code. New developer does not have read its code and understand how it works. I only add its interface to the codebase.
My caution to you is against inferring guarantees were none exist and then basing your development and maintenance strategy upon that.
I did not infer that guarantee. It is directly stated in the lib's interface. As opposed to grep which has nothing similar in its doc and I have to infer guarantee from the fact that lots of people use that undocumented feature of grep.