GoogleChrome / GoogleChrome/lighthouse
Baseline audit detects false-positive features triggered by internal gatherers
- Dominant language
- JavaScript
- Stars
- 30.8k
- Forks
- 9.8k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 19
Description
### FAQ
- [x] Yes, my issue is not about [variability](https://github.com/GoogleChrome/lighthouse/blob/main/docs/variability.md) or [throttling](https://github.com/GoogleChrome/lighthouse/blob/main/docs/throttling.md).
- [x] Yes, my issue is not about a specific accessibility audit (file with [axe-core](https://github.com/dequelabs/axe-core) instead).
- [x] Yes, my issue is not answered by [other FAQs](https://github.com/GoogleChrome/lighthouse#faq).
### URL
https://example.com/
### What happened?
When running a Lighthouse audit on a completely static page with zero `` tags (such as `https://example.com/`), the **Baseline Features** (`baseline`) audit reports 7 JavaScript web platform features attributed to `https://example.com/:0`:
1. `page-visibility-state`
2. `long-animation-frames`
3. `layout-instability`
4. `abortsignal-any`
5. `nullish-coalescing`
6. `aborting`
7. `weak-references`
Recorded Lighthouse Viewer report:
https://googlechrome.github.io/lighthouse/viewer/?gist=ea14135d469d87a7cc02933a47646162
These features originate from Lighthouse's own internal driver gatherers and performance observers (e.g. CLS/INP `PerformanceObserver`s, `AbortController`, `AbortSignal.any()`, `document.visibilityState`) running in the inspected execution context, which increment Blink's `UseCounter` IDs for the document.
### What did you expect?
Because `https://example.com/` contains no JavaScript, the `web-features` / `baseline` audit should not report any JavaScript API features. Internal Lighthouse gatherers and driver scripts should not attribute Blink UseCounters to the audited page.
### What have you tried?
1. Tested against a static site (`https://example.com/`) with zero scripts.
2. Verified that running headless Lighthouse without interactive DevTools scripts avoids certain runtime gatherer collisions, while DevTools / in-page gatherers trigger Blink `UseCounter` detections that get recorded in `audit.details.items`.
3. Verified the exact items and source locations in the exported LHR JSON.
### How were you running Lighthouse?
Chrome DevTools
### Lighthouse Version
13.4.0
### Chrome Version
152.0.7977.65
### Node Version
_No response_
### OS
_No response_
### Relevant log output
```sh
```
Contributor guide
Assessment
This issue has not been assessed yet.