Prior to this change, Chromium only exposed `navigator.webdriver` when the browser was being automated. However, other browsers expose it unconditionally per the spec (https://w3c.github.io/webdriver/#interface), with the value `false` in case the browser is not being automated. We propose changing Chromium to align with other browsers and the spec. This is a potentially breaking change since web pages could in theory rely on the old `navigator.webdriver === undefined` behavior.
There is a conflict between implementation and specification of the `navigator.webdriver` API. According to spec https://w3c.github.io/webdriver/#interface and other browser implementations, it should be `navigator.webdriver === false`, while current implementation is `navigator.webdriver === undefined`.