There's a TODO in dirListingUnion:
// TODO optimize for when allowAuthoritative = false
There will be cases when we can intelligently avoid a round trip: if S3A results are a subset or the metadatastore results (including them being equal or empty) then writing back will do nothing (although perhaps that should set the authoritative flag if it isn't set already).
There may also be cases where users want to just skip that altogether. It's wasted work if authoritative mode is disabled, so perhaps we want to trigger a skip if that's false, or perhaps it should be a separate property. First one makes for simpler config, second is more flexible...