Skip to content

Speed up deterministic screenshot recapture - #26

Merged
ariofrio merged 12 commits into
mainfrom
ariofrio/speed-up-screenshots-ci
Aug 25, 2026
Merged

Speed up deterministic screenshot recapture#26
ariofrio merged 12 commits into
mainfrom
ariofrio/speed-up-screenshots-ci

Conversation

@ariofrio

@ariofrio ariofrio commented Aug 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • check screenshot relevance in a shallow, uncontainerized job and start the pinned renderer only when needed
  • install the harness and plugins as one workspace, building their shared bb-app and node-pty once
  • keep rendering serial and condition-driven while reporting phase timings

Measurements

Path Original Final Change
No-capture required check 68s 13s -81%
Full required check 275s 203s231s -16–26%
npm run screenshots 209s 125–132s -37–40%

The final post-rebase capture reproduced all 32 committed PNGs.

Alternatives considered

  • Production-only install: saved 2s in CI while making the build depend on current dependency classifications.
  • Reusable compositor: saved 0.8s from total capture and introduced persistent renderer state.
  • Parallel plugin builds: saved at most 1.79s; plugin installation and reload must still mutate one bb serially.
  • Custom image: would still pull the 25–28s Playwright base while adding image publishing and larger layers.
  • Dependency cache: an 834 MB native dependency tree is not justified against a 22–29s clean install.
  • Concurrent capture: changed Linux output, so capture remains serial.

Verification

  • npm test — 81 passed
  • all five plugin builds passed
  • the workspace lock contains one bb-app and one node-pty
  • the post-rebase pinned-container capture reproduced every committed PNG

@ariofrio
ariofrio force-pushed the ariofrio/speed-up-screenshots-ci branch 3 times, most recently from 4a38e20 to 565a5a1 Compare August 25, 2026 01:13
@ariofrio
ariofrio force-pushed the ariofrio/speed-up-screenshots-ci branch from 565a5a1 to dff039f Compare August 25, 2026 03:20
@ariofrio
ariofrio merged commit c18c8b0 into main Aug 25, 2026
11 checks passed
@ariofrio
ariofrio deleted the ariofrio/speed-up-screenshots-ci branch August 25, 2026 04:21
ariofrio added a commit that referenced this pull request Aug 25, 2026
Twenty images conflicted and nothing else. #26 changed how a recapture
runs, so main's are the current ones; CI recaptures this branch's own
change on the pull request.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant