hermes-agent/.github/workflows
ethernet 16f88e178c ci: shadow the install/update e2e on ARC runners, non-blocking
main added install-e2e.yml + install-e2e-run.yml; mirror them as newci-*
so the migration gets the same signal it has for the other lanes. triggers
match production exactly (same tag filters, same 12h cadence, cron offset
:20 -> :25 so the two runs don't contend for the pool).

it cannot fail the production job. it's a separate workflow that production
never calls or reads, and belt-and-braces the e2e step is continue-on-error
so a failing leg is reported in the summary instead of reddening a check.
the tolerance lives on the STEP, not the job: job-level continue-on-error is
not a legal keyword on a job that calls a reusable workflow (only name/uses/
with/secrets/strategy/needs/if/concurrency/permissions are) — my first draft
had it on the matrix jobs and would not have parsed. noted in the header so
nobody "fixes" it back.

the legs are expected to SKIP for now. the e2e runs inside dev-sandbox.sh
(bubblewrap), which needs to remount / as slave and mount a fresh /proc, and
a stock ARC pod denies both. probed in-cluster on nous-gke-runner:

  default pod                              Failed to make / slave: EPERM
  capabilities.add: [SYS_ADMIN]            Can't mount proc: EPERM
  SYS_ADMIN + apparmor/seccomp Unconfined  Can't mount proc: EPERM
  privileged: true                         works

arc-runner-docker does NOT qualify — only its dind sidecar is privileged,
the runner container isn't. so a ~30s preflight job probes bwrap and skips
the legs with the capability matrix in the step summary, rather than burning
~11min per leg to fail at the same mount. when infra adds a privileged set,
pass its label as `runner` and the legs start running with no other change.

actionlint clean; summary script exercised for both skipped-legs and
failing-leg shapes (exits 0 in both).
2026-08-05 00:35:19 -04:00
..
ci.yml ci: temporarily disable Desktop E2E — red on every PR since Aug 1 engines churn (#76627) 2026-08-01 23:50:16 -07:00
contributor-check.yml feat(ci): auto-fixable contributor attribution — audit_pr_attribution.py + gate points at it 2026-08-02 15:26:59 -07:00
deploy-site.yml feat(runtime)!: require Node 26 across all installers, heal, and upgrade paths 2026-08-01 21:17:51 -04:00
docker-lint.yml
docker.yml ci: retry uv python install 2026-08-03 11:26:56 -04:00
docs-site-checks.yml feat(runtime)!: require Node 26 across all installers, heal, and upgrade paths 2026-08-01 21:17:51 -04:00
e2e-desktop.yml ci: retry uv python install 2026-08-03 11:26:56 -04:00
history-check.yml
infographic-check.yml chore: untrack committed PR infographics and enforce the rule in CI 2026-07-26 11:54:03 -07:00
install-e2e-run.yml ci: test updating from sampled release tags, on tag + every 12h 2026-08-04 17:36:26 -04:00
install-e2e.yml ci: test updating from sampled release tags, on tag + every 12h 2026-08-04 17:36:26 -04:00
js-autofix.yml feat(runtime)!: require Node 26 across all installers, heal, and upgrade paths 2026-08-01 21:17:51 -04:00
js-tests.yml feat(runtime)!: require Node 26 across all installers, heal, and upgrade paths 2026-08-01 21:17:51 -04:00
label-rerun.yml
lint.yml ci: retry uv python install 2026-08-03 11:26:56 -04:00
lockfile-diff.yml
newci-ci.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-contributor-check.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-docker-lint.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-docker.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-docs-site-checks.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-e2e-desktop.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-history-check.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-infographic-check.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-install-e2e-run.yml ci: shadow the install/update e2e on ARC runners, non-blocking 2026-08-05 00:35:19 -04:00
newci-install-e2e.yml ci: shadow the install/update e2e on ARC runners, non-blocking 2026-08-05 00:35:19 -04:00
newci-js-tests.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-lint.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-lockfile-diff.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-osv-scanner.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-review-labels.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-supply-chain-audit.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-tests.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
newci-uv-lockfile-check.yml ci: add newci-* shadow workflows on GKE self-hosted runners 2026-08-05 00:22:10 -04:00
osv-scanner.yml ci(security): include photon sidecar + whatsapp bridge lockfiles in OSV scan 2026-07-31 21:24:47 -07:00
publish-e2e-evidence.yml fix(ci): authenticate gh-image installation (#69793) 2026-07-23 03:23:28 +00:00
review-labels.yml
skills-index-freshness.yml fix(ci): publish inline E2E evidence (#69699) 2026-07-23 02:15:23 +00:00
skills-index.yml fix(ci): publish inline E2E evidence (#69699) 2026-07-23 02:15:23 +00:00
supply-chain-audit.yml fix(ci): publish inline E2E evidence (#69699) 2026-07-23 02:15:23 +00:00
tests.yml ci: retry uv python install 2026-08-03 11:26:56 -04:00
uv-lockfile-check.yml ci: pin uv version in setup-uv to eliminate per-job manifest fetch 2026-07-28 17:59:23 -07:00