Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

CI: probe-gate Playwright system-dep install (kill unconditional apt-get update per job)

Chiusa
#570 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
1-2 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
github-actions, typescript
Ambito
ci-cd

Direzione di ricerca

Read .github/workflows/ci.yml and packages/everything-dev/src/services/scaffold/ownership.ts to understand the landed workflow change and why the file is framework-owned. Check ADR 0032 for the intended process for tying the local edit to the framework ship. Done means the framework-owned change can flow to generated children via bos sync, with actionlint passing.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Context

The 2026-10-23 CI incidents (three runs killed at the job timeout stuck in "Install Playwright system deps"; see plan 056 Phase 5) were band-aided with bounded retries. Root cause left in place: playwright install-deps chromium runs apt-get update + install unconditionally — even when every package is already present — so every browser job (5 per run) exposes itself to the apt network surface.

Change (landed in this repo's ci.yml)

Both Playwright jobs (dev and start matrix) now:

  1. Browser install (cache miss) — playwright install chromium download-only; --with-deps dropped.
  2. Probe (always) — playwright install-deps chromium --dry-run → local apt-get install -s simulation (no update, no network, no root; verified in playwright-core 1.63 nativeDeps/reportMissingDependenciesLinux). Exit 0 = all present.
  3. Bounded real install (conditional) — the existing 240s x 3 retry loop now only runs when the probe reports a non-font missing package. Font packages are exempt: Playwright's launch-time validation (ldd) never checks them and the suites assert DOM text, not rendered glyphs. A probe failure with no package list (e.g. stale apt lists) degrades to the real install — same coverage as before, strictly less apt exposure.

Browsers remain cached on playwright-<OS>-<hashFiles(pnpm-lock.yaml)>; the probe list always derives from the installed Playwright version, so it stays in lockstep with the cache key.

Verification

  • actionlint (v1.7.7, same as the workflow-lint job) passes on all workflows.
  • First CI runs after landing double as the empirical probe of what the ubuntu-24.04 runner image ships: expect "Install Playwright system deps" skipped on all 5 browser jobs; the "Check Playwright system deps" log shows what (if anything) the image is missing.

Why filed here

.github/workflows/ci.yml is in the framework-owned inventory (packages/everything-dev/src/services/scaffold/ownership.ts), so this change flows outward to generated children via bos sync. Filed per ADR 0032 to keep the local edit and the framework ship tied together.

Lingua principale
TypeScript
Stelle
5
Fork
3
Merge medio
9h 35m
PR unite (30g)
151

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di NEARBuilders/everything-dev

Tutte le issue di NEARBuilders/everything-dev

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.