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

microlinkhq / browserless / 28116432932
84%

Build:
DEFAULT BRANCH: master
Ran 24 Jun 2026 05:17PM UTC
Jobs 9
Files 26
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

24 Jun 2026 05:16PM UTC coverage: 88.272% (+0.3%) from 87.929%
28116432932

push

github

web-flow
feat(capture): record from navigation start at a constant frame rate (#803)

* feat(capture): record from navigation start at a constant frame rate

The animated capture produced ~4fps of an already-loaded page. Two causes:
frames were only emitted on repaint (no frame-rate constraint on the tab
stream), and recording started only after `goto` fully resolved, so the
page load and intro animations were over before the first frame.

- Pin minFrameRate/maxFrameRate in the tab-capture constraints (default
  30fps) so Chromium's capturer delivers a constant cadence instead of one
  frame per repaint, and set a resolution-scaled videoBitsPerSecond so the
  extra frames aren't starved of bitrate.
- Start the recorder before navigation via an `onStarted` hook: resolve the
  viewport up front with goto.getDevice, roll the recorder, then run goto —
  so the video begins at t=0 of the load.

Verified on vercel.com: 10 frames/~4fps -> 67 frames/~23fps, and the load
+ hero animation is now captured from the first frame.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* refactor(capture): dedupe viewport scaling and resolve default device

- Extract `getScaledSize` so `getVideoConstraints` and `getVideoBitrate`
  share one DPR/width/height computation instead of duplicating it.
- Simplify the `videoBitsPerSecond` resolution so the user-supplied value
  always wins and the derived bitrate is a clear fallback.
- Drop the redundant `Promise.resolve` around the `onStarted` hook.
- Resolve the recording viewport via `opts.device ?? goto.defaultDevice`,
  mirroring how `goto` navigates. Previously a capture without an explicit
  device sized the recorder from a different viewport than the page loads
  in. Exposes `goto.defaultDevice` and adds a regression test.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* fix(capture): surface navigation failure without waiting full duration

When `onStarted` (navigation) failed after the recorder had started,
`i... (continued)

540 of 641 branches covered (84.24%)

Branch coverage included in aggregate %.

77 of 78 new or added lines in 4 files covered. (98.72%)

2561 of 2872 relevant lines covered (89.17%)

174456.7 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
94.83
-2.54% packages/capture/src/index.js
Jobs
ID Job ID Ran Files Coverage
1 @browserless/capture - 28116432932.1 24 Jun 2026 05:17PM UTC 5
90.44
GitHub Action Run
2 @browserless/lighthouse - 28116432932.2 24 Jun 2026 05:18PM UTC 3
97.83
GitHub Action Run
3 @browserless/devices - 28116432932.3 24 Jun 2026 05:17PM UTC 1
94.92
GitHub Action Run
4 @browserless/errors - 28116432932.4 24 Jun 2026 05:17PM UTC 1
99.32
GitHub Action Run
5 @browserless/function - 28116432932.5 24 Jun 2026 05:17PM UTC 3
97.0
GitHub Action Run
6 @browserless/screenshot - 28116432932.6 24 Jun 2026 05:17PM UTC 8
79.05
GitHub Action Run
7 @browserless/goto - 28116432932.7 24 Jun 2026 05:19PM UTC 2
84.45
GitHub Action Run
8 @browserless/screencast - 28116432932.8 24 Jun 2026 05:17PM UTC 1
93.88
GitHub Action Run
9 browserless - 28116432932.9 24 Jun 2026 05:18PM UTC 2
96.77
GitHub Action Run
Source Files on build 28116432932
  • Tree
  • List 26
  • Changed 4
  • Source Changed 4
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28116432932
  • 0b014a09 on github
  • Prev Build on master (#28081883455)
  • Next Build on master (#28190064617)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc