Skip to content

ci: run full build and quality checks on push to main#1091

Merged
cjpais merged 2 commits intocjpais:mainfrom
VirenMohindra:vm/ci-main-branch-builds
Mar 19, 2026
Merged

ci: run full build and quality checks on push to main#1091
cjpais merged 2 commits intocjpais:mainfrom
VirenMohindra:vm/ci-main-branch-builds

Conversation

@VirenMohindra
Copy link
Copy Markdown
Contributor

@VirenMohindra VirenMohindra commented Mar 19, 2026

Before Submitting This PR

Human Written Description

CI was only wired up to run on pull requests — nothing ran automatically after a merge to main. That meant the only way to know if main was in a buildable state was to manually kick off a build and wait, which is what cjpais was doing before each release. The nix build in particular (the most expensive check at ~25 min) had no automated trigger on main at all, even though it was added specifically because nix packaging breakage is hard to catch any other way.

This PR wires up the full build cycle on push to main: a new main-build.yml runs the complete 7-platform release matrix and uploads artifacts for 30 days, so any commit on main has a downloadable, testable build. Code quality, rust tests, and the nix build also now trigger on main alongside their existing PR triggers. The nix full build always runs on main (not just when nix files change like on PRs), because main is the last line of defense before a release.

Related Issues/Discussions

Discussion: #1073 (where CI was last modified — confirmed it never ran on main)

Community Feedback

this is a CI/infra change with no user-facing impact; no feature discussion needed

Testing

  • push to main will trigger Main Branch Build, code quality, test, and nix build check workflows
  • artifacts will appear under the workflow run and be downloadable for 30 days
  • path filters on code-quality and test still prevent unnecessary runs on docs-only commits
  • nix full build intentionally has no file-change gate on main (unlike PRs) — every qualifying push runs it

Screenshots/Videos (if applicable)

n/a

AI Assistance

  • AI was used (please describe below)

  • Tools used: Claude Code

  • How extensively: Claude helped investigate why CI wasn't running on main, identified the gap, and wrote the workflow changes. PR description written by me.

Adds a new main-build.yml workflow that runs the full 7-platform build
matrix on every push to main, uploading artifacts for 30 days. Also
adds push-to-main triggers to code-quality, test, and nix-check
workflows. The nix full build now always runs on main pushes (not just
when nix packaging files change), catching the expensive breakage that
currently requires manual verification before each release.
- narrow contents: write to contents: read in main-build.yml — no
  release assets are uploaded here so write access is unnecessary
- update nix-check comment to reflect that the full build always runs
  on push to main (not just when nix files change), matching intent
@cjpais cjpais merged commit e3c9f58 into cjpais:main Mar 19, 2026
3 checks passed
@VirenMohindra VirenMohindra deleted the vm/ci-main-branch-builds branch March 19, 2026 06:39
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.

2 participants