Skip to content

ci: nightly builds no longer exhaust the artifact storage quota - #28

Merged
rynfar merged 1 commit into
pylonfrom
ci/artifact-retention-budget
Aug 16, 2026
Merged

ci: nightly builds no longer exhaust the artifact storage quota#28
rynfar merged 1 commit into
pylonfrom
ci/artifact-retention-budget

Conversation

@rynfar

@rynfar rynfar commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Problem

Nightly releases have failed every day since 2026-08-12 — runs 31585789218, 31689516095, and 31790479914 all died at their first artifact upload with:

Failed to CreateArtifact: Artifact storage quota has been hit.
Unable to upload any new artifacts.

The schedule fires fine; nothing downstream of the upload ever starts, so the newest desktop build users can get is from 08-11. Every PR merged since then is on pylon but unpackaged.

26f01c0a2 already capped desktop-* retention at 7 days for this reason, but the quota refilled anyway, because 7 days was never sized against the actual budget.

Fix

The org's Team plan includes 2 GB-month of Actions storage, which GitHub meters as 2 * 730 = 1460 GB-hours. The four desktop-* artifacts total ~915 MB per run, so a daily nightly bills 0.915 * retention_days * 730 GB-hours:

retention GB-hours/month share of 1460
90 (repo default) ~60,000 4100%
7 (before this PR) ~4,665 320%
1 (this PR) ~666 46%

August peaked at 14.4 GB/day and closed the month's allowance at 1,488 of 1,460 GB-hours.

  • desktop-* drops to 1 day. It is an intra-run handoff to publish_release, which attaches the installers to the GitHub Release — that Release is the durable copy, and Release assets do not count against Actions storage.
  • wsl-node-pty-x64 gets the retention-days it was missing. It is consumed by the Windows build in the same run but silently inherited the 90-day repository default.

resource-monitor-* stays at 7 days: 1.2 MB per run is ~8 MB steady state.

Also done outside this PR

Deleted the 143 stale artifacts (933 MB) created before 26f01c0a2, all still on the 90-day default. Live artifact storage is now 0 MB. Verified v0.0.33-nightly.20260811.54 has all 15 assets attached before deleting its build artifacts.

Current verification

  • rebased onto the latest pylon
  • vp fmt --check .github/workflows/release.yml
  • YAML parse and git diff --check
  • CI is rerunning on the rebased commit

Still needs a human

This PR caps future growth but cannot refund August's spent allowance, and the Actions spending limit is $0, so uploads stay blocked until it is raised or the allowance resets on 09-01. Raising the limit is the only thing that unblocks tonight's nightly.

Written by Claude Opus 5 in Pylon.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith with what you need. Autofix is disabled.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S labels Aug 14, 2026
@github-actions

github-actions Bot commented Aug 14, 2026

Copy link
Copy Markdown

Thread transfer impact

⚠️ The latest CI run did not produce a thread transfer result for 22c4bbc.

This comment will update automatically after the next completed run.

Nightly releases have failed every day since 2026-08-12 with "Artifact
storage quota has been hit", so the newest desktop build is from 08-11.

The org's Team plan includes 2 GB-month of Actions storage, which GitHub
meters as 1460 GB-hours. The four desktop-* artifacts total ~915 MB per
run, so a daily nightly bills 0.915 * retention_days * 730 GB-hours. The
previous 7-day cap bills ~4665 of 1460, over triple the budget, which is
why capping retention at a week did not stop the quota from refilling.

Drop desktop-* to 1 day (~666 GB-hours, 46% of budget) and give
wsl-node-pty-x64 the retention it was missing — it inherited the 90-day
repository default despite being consumed by the Windows build in the
same run. Both artifacts are intra-run handoffs; the GitHub Release is
the durable copy of the installers.

Written by Claude Opus 5 in Pylon.
@rynfar
rynfar force-pushed the ci/artifact-retention-budget branch from 5e79a89 to 22c4bbc Compare August 16, 2026 17:14
@rynfar
rynfar merged commit 270b842 into pylon Aug 16, 2026
11 checks passed
@rynfar
rynfar deleted the ci/artifact-retention-budget branch August 16, 2026 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant