Skip to content

Project

trucutru

A reading app for one household, and the measurement that turned its CI bill into a post about how GitHub Actions is actually billed.

Role
Design and build
Stack
Next.js, Playwright, Python
Year
2026

The measurement

GitHub does not bill time, it bills jobs.

Four hundred and forty runs in forty-eight hours produced 2,351 jobs: 702 real minutes billed as 2,000, because every job is rounded up to a minute whether it takes eight seconds or fifty.

The correction

Parallelism is the multiplier, not a free optimisation.

Eighty-four per cent of those jobs came from one twelve-job matrix, and only thirty-five of its 189 runs passed. A failed run bills exactly what a green one does.

What it changed

The next repository started in the corrected form.

This site is that repository. Its workflows arrive on manual dispatch, and the gate that would have run in CI runs before the push instead.

Free CI is not a property of your workflow. It is a property of your repository.

Next

Tell me what you are building.

I am interested in work where the pipeline is part of the product, and in teams that want the agents accountable to it.