← back to Cronjobs Viewer
5x/REPORT.md
36 lines
# /5x REPORT — cronjobs-viewer (http://127.0.0.1:9772)
Target: `~/Projects/cronjobs-viewer` (pm2 `cronjobs-viewer`, Basic auth admin/DW2024!)
Assertions: `--expect "launchd cron calendar"` · `--selector ".host"` (proves live data rendered) · `--clickthrough`
## Sweep ledger
| Sweep | six-way | clickthrough | caught | fixed | commit |
|------:|---------|--------------|--------|-------|--------|
| 1 | 7/7 | 14 pass / 0 fail | 0 | — | — |
| 2 | 6/7 (M3 FAIL) | 14 pass / 0 fail | 1 (intermittent favicon.ico 404 → console error) | favicon route + `<link rel=icon>` | f4729fe |
| 3 | 7/7 | 14 pass / 0 fail | 0 | — | — |
| 4 | 7/7 | 18 pass / 0 fail | 0 | — | — |
Stop: **clean twice (sweeps 3 & 4)** at sweep 4 of 5.
## The one defect + root-cause fix
- **Symptom:** M3 automation reported 1 JS error on sweep 2, 0 on sweep 1 — intermittent.
- **Root cause:** browser auto-requests `/favicon.ico`; HTML had no `<link rel=icon>` and
`express.static` has no favicon → **404 → console error**. Chrome caches the 404 per
browser context, so it only surfaced on the first fresh-context load — the reason a
single `/3x` shot caught it randomly and `/5x`'s fresh-context sweeps forced it out.
- **Fix (real, not suppression):**
- `server.js`: `GET /favicon.ico` → 200 inline SVG (any client, incl. direct bookmark hit).
- `public/index.html`: `<link rel="icon" href="/favicon.ico">`.
- **Verified:** `/favicon.ico` → `200 image/svg+xml`; fresh-context 8-load capture → "NO
ERRORS across 8 loads" on sweeps 3 and 4.
## Final six-way state
M1 HTTP 200 · M2 headless render OK · M3 E2E `.host` rendered, 0 JS errors · B4 Chrome ·
B5 Safari · B6 Firefox all pass. App controls (#sort/#fstate/#flive/#fcad/#q/#failonly/
#density/#auto) all exercised, 0 failures.
## Open items
None. The 10 clickthrough `[SKIP]`s are the generic agent probing for controls that belong
to OTHER apps (verdict buttons, board mode, `#dens`/`#fSearch`) — not defects in this app.