Sample Minute Teardown · sold by 28to3.me

These workflows, jobs, and OSes ate the minutes.

This is the exact deliverable the $49 booking fee buys — not a software seat. One GitHub organization. One week. Finance-facing columns that match Actionscope v0.1.3. A concrete change list. The org below is fictional so you can see the shape before you book yours.

Seller 28to3.me. Estimates at GitHub list price (2026-09-05). Not an invoice. Pin Sofa-Loaf/actionscope@v0.1.3.

Fictional ICP org

Pinemark Studio — private desktop CI, then a surprise bill.

A 38-person design-tool company. Private repos. A real Windows + macOS matrix. No FinOps team. GitHub Team plan (3,000 included minutes / month). Finance opened the August invoice on 2 Sep and could not say which job did it.

Org

Pinemark Studio (pinemark). Private pinemark/studio (Electron editor) and pinemark/api (Node service).

Why they match the ICP

macOS jobs on every PR, a three-image Windows matrix, retries, and a quota reset. Not Linux-only. Not an enterprise Billing API shop.

What blew up

In July they added windows-2019 and windows-latest beside windows-2022, moved lint onto macOS “to match laptops,” and notarized every pull request on a larger runner.

One week of minute waste

25–31 Aug 2026 (UTC) — avoidable burn only.

By this week the Team plan’s 3,000 included minutes were already gone, so these rows are overage. Necessary build on windows-2022 and macos-latest is not in this table. Columns match the Actionscope v0.1.3 Job Summary.

13,360 Included-minute burn wasted
$113.8060 Est. $ at GitHub list price
3,348 Rounded minutes (ceil per job)
50h 15m Combined wall time

Minute Teardown

Pinemark Studio sample

Prepared by 28to3.me · 5 Sep 2026 · Fictional org

These workflows, jobs, and OSes ate the minutes. Here’s what to change.
Avoidable GitHub Actions minute waste for Pinemark Studio, 25–31 Aug 2026
Workflow Job OS Runs Wall Rounded min SKU Est. $ (list) Included min
Desktop CI lint macos 84 28m 0s 84 actions_macos $5.2080 840
Desktop CI test windows-2019 84 11h 31m 36s 756 actions_windows $7.5600 1,512
Desktop CI test windows-latest 84 10h 13m 12s 672 actions_windows $6.7200 1,344
Desktop CI e2e macos 84 9h 17m 12s 588 actions_macos $36.4560 5,880
Desktop CI notarize macos-large 42 6h 11m 42s 378 macos_l $29.1060 0
API CI test windows 62 4h 16m 16s 310 actions_windows $3.1000 620
API CI lint linux 62 12m 24s 62 actions_linux $0.3720 62
Nightly desktop macos 7 3h 44m 28s 231 actions_macos $14.3220 2,310
Nightly load windows 8-core 7 2h 25m 36s 147 windows_8_core $6.1740 0
Release package-macos (retry) macos 3 1h 6m 12s 69 actions_macos $4.2780 690
Release package-windows (retry) windows 3 48m 36s 51 actions_windows $0.5100 102
Waste total 522 50h 15m 14s 3,348 $113.8060 13,360

List prices used (2026-09-05, GitHub runner pricing): actions_linux $0.0060/min, actions_windows $0.0100/min, actions_macos $0.0620/min, macos_l $0.0770/min, windows_8_core $0.0420/min. Larger runners (macos_l, windows_8_core) cannot use included minutes, so included-min burn is 0 on those rows.

Kept on purpose and omitted here: Desktop CI test on windows-2022 (84 runs) and Desktop CI build on macos-latest. Those are the jobs Pinemark still needs.

Actionscope v0.1.3 columns

How to read the table next to GitHub’s usage report.

  1. Wall is observed completed_at − started_at, summed across the week’s runs of that job.
  2. Rounded min follow GitHub billing: each started job rounds up to the next whole minute (a 12-second lint is 1), then those minutes are summed. This is not ceil(combined wall).
  3. SKU is the usage-report runner SKU inferred from job labels / runner name.
  4. Est. $ (list) = rounded minutes × the documented per-minute rate for that SKU. Labeled as an estimate, not an invoice.
  5. Included-min burn is plan-minute consumption for standard hosted runners only (Linux 1, Windows 2, macOS 10 per rounded minute). Larger runners contribute 0.

Same rules as the free Action Job Summary. See the per-run demo for a single workflow. Public repos and typical self-hosted runners are often not billed the same way.

What to change

A concrete list so this week does not repeat.

Each item names the file or trigger to edit. Dollar and included-minute figures are this week’s waste that the change stops — at the same list prices.

  1. Collapse the Windows matrix to windows-2022 only

    In pinemark/studio/.github/workflows/desktop.yml, delete the windows-2019 and windows-latest entries from the test matrix. Keep one Windows image. Stops $14.2800 list and 2,856 included min this week.

  2. Move lint off macOS

    Run Desktop CI lint on ubuntu-latest (or ubuntu-slim). A 20-second job on actions_macos still burns 1 rounded minute × $0.0620 and 10 included minutes. On Linux it is $0.0060 and 1 included minute. Stops $4.7040 list and 756 included min if the 84 runs stay (84 × $0.0560 and 9 included min each).

  3. Stop running macOS e2e on every pull request

    Gate e2e to main, workflow_dispatch, and a nightly schedule — or require a run-e2e label. Do not pay 10× included minutes for a 6-minute UI suite on docs and API-only PRs. Leaving 12 of 84 runs (nightly + labeled) would have been $31.2480 and 5,040 included min less.

  4. Notarize on tags only — drop macos-latest-large from PRs

    Remove the notarize job from pull_request. Keep it on release / version tags. Larger runners cannot use included minutes; the 42 PR notarizations were $29.1060 list and 0 included min — pure overage at $0.0770/min.

  5. Delete the Windows job from API CI

    In pinemark/api/.github/workflows/ci.yml, drop test on windows-latest. The API ships Linux containers only. Stops $3.1000 list and 620 included min.

  6. Path-filter the 12-second Linux lint

    Add paths-ignore for docs, markdown, and studio/ so API lint does not start a billed minute on unrelated PRs. Combine lint into the test job if it stays under a minute. Small dollars; it is how 62 one-minute charges appear for 12 seconds of work.

  7. Skip Nightly desktop when studio/ did not change

    Add a paths filter or a “skip if no new commits in studio/” condition. Four of this week’s seven nightlies rebuilt macOS with no desktop diff. That pattern is $8.1840 and 1,320 included min on those four nights alone (4 × 33 rounded min × $0.0620 × 10 included).

  8. Move Nightly load off windows_8_core

    The load test fits on standard windows-latest (actions_windows at $0.0100/min). The 8-core SKU is $0.0420/min and cannot burn included minutes. Same 147 rounded minutes would be $1.4700 instead of $6.1740. Stops $4.7040 list.

  9. Stop auto-retrying the whole Release workflow

    The flaky notarize step re-ran package-macos and package-windows three times. Turn off workflow-level retry; retry the one failing step or fix the flake. Stops $4.7880 list and 792 included min of duplicate packaging.

  10. Pin Actionscope on a last step

    Add uses: Sofa-Loaf/actionscope@v0.1.3 as the last step on Desktop CI, API CI, Nightly, and Release so the next week’s Job Summaries use these same columns. Optional comment-on-pr: true if you want a screenshot-forwardable comment. No Stripe URLs in the Action — checkout stays on 28to3.me.

Book yours from 28to3.me

$49 is the booking fee for this artifact.

Your Minute Teardown uses your private org, your week, and your workflow names. Same columns. Same kind of change list. Stripe $49 is not a seat and not the $19 App.

After checkout, email hello@28to3.me the org name and the week you want reviewed.

What $49 books

These workflows, jobs, and OSes ate the minutes. Here’s what to change.
  • One GitHub organization. One week. One written Minute Teardown.
  • Wall, rounded min, SKU, list-price $, included-min burn — Actionscope v0.1.3.
  • A concrete change list. Seller 28to3.me.