ATR-23011 -- Type-checking of "flags" argument to RecoFragmentsPool.retrieve
The first argument for any function passed to RecoFragmentsPool.retrieve
is supposed to be an AthConfigFlags instance. As this is meant to be unique for the whole job, it is not part of the key to the cache of return values held by RecoFragmentsPool
.
There were examples of misuse whereby important and malleable arguments to these functions were being passed instead, which could cause misconfiguration. To prevent this, insist that the value of the first (and only non-keyword) argument received is either an instance of ConfigFlags
or is None
. The latter should be used when there is no information that is used from ConfigFlags
.
Various fixes needed to be propagated to signature code such that this will not result in crashes.
Edited by Teng Jian Khoo