• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

microlinkhq / browserless / 29508814524
79%

Build:
DEFAULT BRANCH: master
Ran 16 Jul 2026 02:56PM UTC
Jobs 9
Files 35
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Jul 2026 02:55PM UTC coverage: 80.796% (-1.5%) from 82.326%
29508814524

push

github

web-flow
fix(pdf): detect covered content in readiness gate, keep zero-screenshot fast path (#839)

* fix(pdf): verify probe screenshot before skipping blank-SPA poll

The #837 painted/text fast path trusted in-page DOM signals alone. A page
with 200+ chars of SSR text (or a decoded hero image) under a fixed white
loading overlay passed waitForReady and skipped the white-screen poll,
shipping a blank PDF.

Take one cheap probe capture when the gate reports painted content; only
skip the poll loop when that capture is non-white. Adds a regression test
for the overlay case.

* fix(screenshot): detect covered content in readiness gate, keep zero-screenshot fast path

A fixed opaque overlay (or white-on-white text) passes every DOM paint
signal while a capture stays white, so PR #837's fast path could ship a
blank PDF. PR #838 fixed it with a probe screenshot on every painted
page, which pays a capture on the fast path and makes the branch
equivalent to the poll loop's first iteration.

Instead, detect the cover in the in-page snapshot itself:

- `covered`: hit-test the counted content samples for an unrelated
  opaque viewport-filling layer, plus a root-level scan for
  `pointer-events: none` overlays hit-testing can't see
- skip text whose color matches its effective background (invisible on
  capture) when counting the `text` paint signal
- pdf fast path requires `!ready.covered`; the probe screenshot is
  removed, so a clean painted page takes zero captures again

Covered or suspicious pages fall through to the existing blank-SPA
screenshot poll, where a capture verifies ground truth.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

691 of 850 branches covered (81.29%)

Branch coverage included in aggregate %.

12 of 114 new or added lines in 1 file covered. (10.53%)

3676 of 4555 relevant lines covered (80.7%)

110004.29 hits per line

Uncovered Changes

Lines Coverage ∆ File
102
41.55
-20.48% packages/screenshot/src/wait-for-ready.js
Jobs
ID Job ID Ran Files Coverage
1 @browserless/screencast - 29508814524.1 16 Jul 2026 02:57PM UTC 1
95.74
GitHub Action Run
2 @browserless/capture - 29508814524.2 16 Jul 2026 02:57PM UTC 11
86.63
GitHub Action Run
3 @browserless/function - 29508814524.3 16 Jul 2026 02:57PM UTC 3
97.0
GitHub Action Run
4 @browserless/goto - 29508814524.4 16 Jul 2026 02:58PM UTC 3
75.71
GitHub Action Run
5 @browserless/screenshot - 29508814524.5 16 Jul 2026 02:57PM UTC 9
69.0
GitHub Action Run
6 @browserless/errors - 29508814524.6 16 Jul 2026 02:56PM UTC 1
99.32
GitHub Action Run
7 @browserless/devices - 29508814524.7 16 Jul 2026 02:56PM UTC 1
94.92
GitHub Action Run
8 @browserless/lighthouse - 29508814524.8 16 Jul 2026 02:57PM UTC 3
97.83
GitHub Action Run
9 browserless - 29508814524.9 16 Jul 2026 02:58PM UTC 3
79.48
GitHub Action Run
Source Files on build 29508814524
  • Tree
  • List 35
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29508814524
  • c377fade on github
  • Prev Build on master (#29505076470)
  • Next Build on master (#29657187213)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc