Building on the "early_tests" feature, some test suites have fast and low reward tests that should be run later. For example, Swift has a ton of tests that were generated by a fuzzer that are fast and not expected to regress but are still useful to verify. By running these tests later, we give normal tests (that probably take longer) a chance to run earlier and let the fast "late_tests" fill in the gaps at the end of the test suite execution.
The design of this change is general enough that people should be able to scale their use with their maintenance goals/non-goals.
Why are late tests a regular expression, but early tests a list? The inconsistency seems confusing to me.