# Nightly Test Summary — 2026-07-08 run (2026-07-09 IST)

**VERDICT: 7th CONSECUTIVE MASS-FAILURE NIGHT — same browser-binary bug as last night, unfixed. NOT a set of app regressions.**

- Marker: `nightly_marker.json` date=20260708, finished_at 2026-07-08T19:28:03Z = **2026-07-09 00:58 IST** (marker date field is UTC-run-start-stamped, not IST — same known stamping quirk noted on prior nights).
- Report file: `test_reports/nightly_20260708.json`

## Totals
| Metric | Count |
|---|---|
| Total | 1654 |
| Passed (expected) | 240 |
| Failed (unexpected) | 1354 |
| Skipped | 60 |
| Flaky | 0 |

Numerically **identical** to the 2026-07-07→08 run (240/1354/60/0) — same failure mode recurred with the same shape, two nights running now.

## Root cause (confirmed from error messages)
- **2068 of 2708 raw failure instances**: `Error: browserType.launch: Executable doesn't exist at /root/.cache/ms-playwright/chromium_headless_shell-1223/chrome-headless-shell-linux64/chrome-headless-shell` — Playwright's browser binary is missing again. `npx playwright install` was already run once after the 2026-07-03→04 incident but the fix did not hold — something is removing the browser cache between runs, now confirmed recurring (2nd time).
- Remaining ~640 instances are downstream `expect(...)` assertion failures cascading from pages that never loaded because the browser couldn't launch.

## REGRESSIONS vs baseline
**None identifiable this run.** The 2026-06-20 baseline (~1220+ tests, 0 failed — `project_pwa_test_coverage.md`) is not comparable while the browser binary is missing; this is an infra/environment fault, not app-code regressions. No new failure signature appeared beyond the browser-launch error and its cascades — this run is numerically identical to the prior night.

## Failing spec files (35 files with failures; top 20 by unique failing-test count)
| Spec file | Unique failing tests |
|---|---|
| fundcustodian.spec.js | 86 |
| recce.spec.js | 70 |
| printing.spec.js | 47 |
| sales_billing.spec.js | 41 |
| upi_pay.spec.js | 38 |
| vendors.spec.js | 37 |
| drive_consolidator.spec.js | 36 |
| safe_bottom.spec.js | 33 |
| customers.spec.js | 25 |
| custodian.spec.js | 24 |
| counters.spec.js | 20 |
| recce_client.spec.js | 19 |
| sales.spec.js | 19 |
| hr.spec.js | 18 |
| smoke.spec.js | 17 |
| hub.spec.js | 15 |
| stores.spec.js | 13 |
| tour_pg.spec.js | 12 |
| vehicle.spec.js | 11 |
| rentveh.spec.js | 10 |

(15 more spec files also failed at lower counts: admin, tour_pg_sharing, expense, contacts, finance, learn, installation, tour_planner, oc_admin, vrs, production, activity, dispatch, client, mappls-creds, debug_tour.)

## Action needed (not performed by this autonomous task)
- Run `npx playwright install` again and this time investigate durability — find and fix whatever is stripping `/root/.cache/ms-playwright` between nightly runs (container rebuild, cleanup cron, disk-space job, etc.) so this stops recurring.
- Once the binary is confirmed to survive a full day/night cycle, re-run to get a clean signal on any real app-level assertion failures currently masked by the wholesale browser-launch failure.
- The marker `date` field's UTC-vs-IST stamping quirk remains unfixed (7th consecutive night) — cosmetic only, does not block this analysis since `finished_at` disambiguates.
- No memory update made this run — pass/fail counts did not change vs the immediately prior (still-unbaselined) run, and the trusted baseline remains 2026-06-20 (0 failed) until a clean nightly run comes back.
