core(config): prevent custom gatherer interference #14756
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed a relatively serious issue when testing a config with a custom gatherer. We always run the gatherer after all our default config gatherers which means that
FullPageScreenshot
andBFCacheFailures
can mess with any instrumentation or results that the custom gatherer is using.This PR adds an internal priority factor that we can use to sort artifacts so that custom gatherers will run always run before
FullPageScreenshot
andBFCacheFailures
.It might be useful to add this priority factor to the config so it isn't so subtle, but I wanted to avoid new config spec changes this late into the process.
Some other ideas:
usePassiveGathering: true
if they have a custom gathererisDestructive
flag