The VPS runner (peptide-vps) has OS-level Playwright deps pre-installed by
root. --with-deps triggers apt-get which requires sudo, blocked by the
runner's NoNewPrivileges systemd hardening. Drop the flag; Playwright's
binary-only install succeeds as ghrunner with no elevated privileges.
SSH-verified: npx playwright install chromium succeeds for ghrunner user;
Chromium 149.0.7827.55 downloaded to /home/ghrunner/.cache/ms-playwright.
Bump: v1.7.1 → v1.7.2
Agent-Session: smoke-playwright-nodeps-20260617
Reusable workflow uses: refs do not follow GitHub transfer redirects.
Update owner string from peptiderepo to peptide-repo post org-migration.
Agent-Session: fix-e2e-ref-20260617
Shared pipeline deploy-staging + deploy-production (deploy-app.yml) and the Playwright staging smoke (smoke.yml) now run on the org self-hosted runner [self-hosted, peptide-vps] from the VPS stable IP, fixing the Hostinger rotating-runner-IP throttle. CI/validate stay GitHub-hosted. v1.7.1.
QA: APPROVE-WITH-P2-NOTES (2026-06-17-e6f6b67); P2 = pre-existing stale peptiderepo/ owner refs (work via redirect, ref-cleanup batch).
Agent-Session: deploy-self-hosted-20260617
When smoke.yml runs via workflow_call from another repo (peptide-repo-core,
peptide-starter-theme, etc.), GitHub Actions checks out the CALLER's repo
by default. The caller has no package-lock.json, so setup-node's npm cache
lookup fails with 'Some specified paths were not resolved'.
Fix: add repository/ref to the checkout step so we always fetch peptide-e2e
regardless of who calls the workflow. This ensures npm ci and Playwright
have the correct test code and dependency lockfile.