Skip to content

ci: move pytest/packaging/security to GitHub-hosted ubuntu-latest (repo is public) - #177

Merged
unfoundbox merged 1 commit into
mainfrom
ci/github-hosted-runners
Sep 25, 2026
Merged

unfoundbox merged 1 commit into
mainfrom
ci/github-hosted-runners

Conversation

@unfoundbox

@unfoundbox unfoundbox commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

The repo is PUBLIC, and the lenovo self-hosted runner was attached to it — AGENTS.md's standing rule is 'never attach a self-hosted runner to a public repo (fork PRs execute arbitrary code on the box)'. That was an active vulnerability until the runner was detached from the repo the moment this inconsistency was noticed (2026-09-25, before this PR landed).

Changes:

  • all three jobs (pytest, packaging, security) move to ubuntu-latest
  • verify-system-packages step rewritten to document the hosted-runner assumption
  • no change to triggers, paths-ignore filters, or concurrency scoping — the waste guardrails are kept exactly as they are
  • publish.yml was already ubuntu-latest; no change

Post-merge, every job costs GitHub-hosted minutes; this stays inside the free tier at current cadence, and the repo loses its dependency on one laptop burning its own CPU.


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

…public

The lenovo self-hosted runner was attached to motionvector-dev/spacepilot,
which is a PUBLIC repo — AGENTS.md's standing rule is 'private repo only,
never attach a self-hosted runner to a public one (fork PRs execute
arbitrary code on the box)'. That configuration was an active vulnerability
for as long as forks could open PRs against any ref the runner was attached
to. The runner has been detached from this repo (2026-09-25), before this
commit lands, so the window in which a fork PR could have triggered a run
on it has stalled at 'runs the tests in a sandboxed venv, but still'.

- pytest / packaging / security -> ubuntu-latest
- verify-system-packages step now documents the ubuntu-latest assumption
  and the fix to run if it ever stops holding
- no workflow changes to triggers/scoping: paths-ignore and the
  push/pull_request filters already skip md/docs/LICENSE
- publish.yml was already ubuntu-latest

Waste guardrails kept as-is. The infra story moves from 'the one laptop
burning its own CPU' to 'the free quota we were already entitled to',
with no new gate added.
@vercel

vercel Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
spacepilot Error Error Sep 25, 2026 5:03am UTC
spacepilot.dev Ready Ready Preview Sep 25, 2026 5:03am UTC

@unfoundbox
unfoundbox merged commit 6b84d46 into main Sep 25, 2026
4 of 7 checks passed

This branch had an error being deployed

1 failed and 1 active deployments
Preview – spacepilot — 6b84d462 Deployed Sep 25, 2026 by vercel[bot]
Preview – spacepilot.dev — 6b84d462 Deployed Sep 25, 2026 by vercel[bot]
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