Some of the Repository classes check os.environ. I think this behavior only makes sense if __getitem__ retrieves the value from os.environ, otherwise it is not true that the Repository contains the key. Currently __getitem__ does not retrieve from os.environ.