Right now we invoke sanitycheck multiple times based on board and sample changes and then the default run, this results in many duplicates.
Create a new mode for sanitycheck were it generates a list of the tests to be run based on options (dry run) and then process all of those lists and generate a unique list that can be fed to sanitycheck to determine what should run for real.