1.4.2: CI hygiene release (all-green for the first time)

Follow-up to 1.4.1. No functional change; addresses three CI
jobs (phpstan, phpcs, cspell) that had been silently failing
under the d.o. CI template's allow_failure: true defaults since
1.0.0. The "passed with warnings" badge had been treated as
green; it isn't. 1.4.2 is the first release on this project
where every CI job is genuinely success without allow-failure
crutches.

phpstan (4 errors, all globalDrupalDependencyInjection):

- BeaconController::resolveRouteName called \Drupal::hasService
  + \Drupal::service for path_alias.manager. Injected as nullable
  AliasManagerInterface via NULL_ON_INVALID_REFERENCE so the
  controller still constructs on sites without path_alias module.
- CwvRequestIdSubscriber::getModuleVersion called
  \Drupal::service('extension.list.module'). Injected
  ModuleExtensionList directly.
- CwvAsyncDecoratorBase::onTerminate called \Drupal::logger('cwv')
  for finalize() failure logging. Added LoggerInterface to the
  base class constructor; updated all four subclasses
  (KernelTimingDecorator, BackendCacheCollector, RenderTreeCollector,
  DatabaseCollector) to pass through; wired @logger.channel.cwv
  into every cwv.collector.* services.yml entry.

phpcs (1 error + 4 warnings, all in CwvSettingsForm.php):

- 4x Drupal.Semantics.FunctionT.BackslashSingleQuote. Switched
  the affected $this->t() calls to double-quoted strings.
- 1x Drupal.Commenting.InlineComment.InvalidEndChar. Rephrased
  the inline comment so it ends in a period.

cspell (7 unknown + 1 forbidden):

- "whitelist" replaced by "allowlist" in the edge-cache probe
  target description (Drupal community moved off the term).
- Six vocabulary additions: bref, swoole, cset, mmap, munin,
  contextualise.

Library version bump 1.4.1 -> 1.4.2 to cache-bust the JS asset
on edge caches that key on the ?v= query string. No schema
change, no config-key change, no update hook, no behaviour
change for operators.