Files
openobserve/tests
Shrinath RaoandClaude Opus 4.8 68ff976565 test: heal Logs-Regression failures (log detail sidebar + stream race) (#12908)
## What

Heals the **Logs-Regression** E2E shard failures from scheduled run
[28227009440](https://github.com/openobserve/openobserve/actions/runs/28227009440/job/83622550234)
(3 failed, 1 flaky).

## Root cause analysis

| # | Test | Symptom | Cause |
|---|------|---------|-------|
| 1 | `logs-9754.spec.js:276` — log detail sidebar @P1 | `waitFor
[data-test="log-table-column-0-source"]` 30s timeout in
`openLogDetailSidebar` | First result cell renders as the FTS
**body/message** column, not `source`, so the exact selector never
appears |
| 2 | `logs-regression.spec.js:1150` — JSON tab default (#9724) | Same
`openLogDetailSidebar` selector, 45s click timeout | Same as #1 |
| 3 | `logs-9754.spec.js:195` — preserve characters @P0 | `selectStream:
Failed to find stream "e2e_highlighting_test" after 5 attempts` |
**Cascade**: test #1 fails → serial block retries → `afterAll`
`deleteStream` from the prior attempt is still settling → re-ingest
returns `400 "stream [...] is being deleted"` → stream never re-appears
|
| 4 | `logs-regression.spec.js:60` — saved views (#9388) |
`log-search-index-list-add-log-field-btn` not visible | Hover-revealed
add button stayed below the fold; single re-hover missed |

`openLogDetailSidebar` is the dominant root cause — it directly explains
#1 and #2, and #1 triggers the serial-block retry that produces the #3
cascade.

## Fixes

1. **`openLogDetailSidebar`** — target any first-row cell via the
`[data-test^="log-table-column-0-"]` prefix instead of the exact
`...-source` cell. This mirrors the pattern already used by
`clickLogTableColumnSource` and `waitForSearchResults`, which carry the
same FTS-body-column note.
2. **`logs-9754` setup** — retry ingestion (up to 5×, 3s apart) when the
response says the stream `is being deleted`, so a serial-block retry no
longer cascades into "stream not found".
3. **`clickAddFieldToTableButton`** — `scrollIntoViewIfNeeded` +
re-hover with retries so the hover-revealed add button reliably surfaces
(#9388).

## Files
- `tests/ui-testing/pages/logsPages/logsPage.js`
-
`tests/ui-testing/playwright-tests/RegressionSet/Logs/logs-9754.spec.js`

## Validation
- `node --check` passes on both edited files.
- Full Playwright run deferred to CI / local verification (changes are
selector + retry hardening only; no production code touched).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 13:24:28 +00:00
..
2024-09-22 17:57:47 +08:00