fix: #3601471 Ignore unknown client-supplied asset library extensions in LibraryDiscoveryCollector
Catch UnknownExtensionException around
LibraryDiscoveryParser::buildByExtension() in
LibraryDiscoveryCollector::getLibraryDefinitions() and return an empty
library set for unknown extensions. Client-supplied
ajax_page_state[libraries] can reference extensions that no longer
exist; previously this surfaced as an uncaught exception (fatal / 500)
instead of treating the library as not loaded. Other parser failures
for known extensions still throw.
Closes #3601471