chore(e2e): upgrade WebdriverIO v7 -> v9; drop 5 resolutions
WebdriverIO v9 self-manages browser drivers, so the deprecated wdio-chromedriver-service and the chromedriver package are removed. Config migrated: autoCompileOpts (removed in v8) -> tsConfigPath; the 'chromedriver' service entry dropped. The v9 stack drops the legacy yarn-install dep and pulls mocha 10.8.2 (patched nanoid/serialize-javascript/diff). Combined with removing the over-broad global chalk pin (v9 needs chalk 5 ESM; our CJS tools keep chalk 4 via their own ^4 ranges; the qix blocklist lives in .yarn/constraints.pro, not the pin), five resolutions can go: - chalk (over-broad; constraints.pro still blocks 5.6.1) - nanoid (mocha 10.8.2 dropped it; natural 3.3.13) - serialize-javascript (mocha -> ^6.0.2) - diff (mocha -> ^5.2.0; ts-node's 4.0.4 is clean) - cross-spawn (yarn-install gone; natural 6.0.6 / 7.0.6) Resolutions 33 -> 28. Web-extension wdio suite boots, compiles TS specs, launches Chrome with the extension, and runs mocha under v9 locally; backend-dependent assertions validate in CI E2E. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>