Right now, pep257 reads config files from the directory of the common ancestor of the checked files, and goes on up and up, reading available config files as it goes. The problem here is that the correct semantic is that the closer a config file is to the checked file, the more priority it should get.
So a config file at the top of the repo should be overridden by a config file in the same directory of the checked file.
There is also another complicated issue that should be fixed regarding this.
Consider the following directory structure:
If A/tox.ini contains ignore=D100 and B/tox.ini contains convention=pep257, the D100 error code should be checked. Meaning, it's not enough that closer-to-the-file config files should override same-flag values for more remote config files, but it should be done in a smart way such that any of select, ignore or convention override any of select, ignore or convention flags.
All the while, add-select and add-ignore should be cumulative.
There should be a way to define "the top of the repo". My repo might be located within a "dirty" directory that contains temporary files, one of whom might be a sample tox.ini i'd like to keep there for some reason.