Files
jobtrackingapp/docs/infrastructure/2026-10-20-playwright-runtime-corruption.md
T
cesnimda d1fcd23087
CI and Deploy / test (push) Failing after 1h18m39s
CI and Deploy / deploy (push) Has been skipped
fix(ci): retain and retry the observed Playwright runtime corruption
2026-10-20 15:17:02 +02:00

2.3 KiB

Playwright runtime corruption signature — 20 October 2026

Corrected release run831 did not reach deployment. Its browser lane encountered Chromium target crashes and an installed Playwright parser failure at node_modules/playwright-core/lib/utilsBundle.js:35841: const { items }$= this;, followed by SyntaxError: Missing initializer in destructuring declaration. A worker then exited before executing its cases. Only46 browser attempts appear in the terminal log; this is not a completed331-case regression. An ordinary preview-visibility assertion also failed and is retained, rather than labelled an infrastructure success.

This resembles earlier runner dependency/download corruption, but the job container was removed before its installed bytes could be compared with the lockfile archive. Neither persistent filesystem corruption nor faulty hardware is proven. The full900-entry diagnostic ZIP was downloaded and CRC-checked: SHA256 f6d8e9659ca824bb12d283913f6e16f3933974bbc5e11c78e3524d8712e75632. Original logs and traces remain retained.

The workflow already allows one complete-suite retry after its narrowly recognized Axe source-corruption signature, using a new npm cache and the unchanged lockfile. Extend that same bounded policy only when all three observed Playwright indicators occur together: the exact dependency path/line marker, the exact malformed statement and the exact parser error. Ordinary application assertion failures, target crashes alone, user-source syntax errors and incomplete signatures remain terminal. The six policy tests execute the actual Bash guard and pass. No assertion, browser inventory, timeout, ordinary retry, dependency integrity or release gate is relaxed.

Before the existing reinstall/retry, preserve the first smoke log, JSON report if available and complete traces/screenshots under .artifacts/browser-runtime-attempt-1; include them in the same always-uploaded artifact. A subsequent successful retry must still complete the entire browser suite; failure remains blocking. This does not repair or qualify the underlying runner, prove the preview assertion resolved or establish deployment success. Production/operator, physical hardware/runtime and manual application qualifications remain open. P5-13 and model activation are unchanged.