mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-04 08:09:27 +00:00
## How this was found The **Playwright E2E Crosscheck** bot (the ENT gate that runs enterprise-only specs against OSS PRs) flagged a failing spec on an unrelated logs PR ([#13414 comment](https://github.com/openobserve/openobserve/pull/13414#issuecomment-5058151842)): > `Workflows/workflows-negative.spec.js` — *"enterprise-only e2e spec failed against this PR … wouldn't show up in OSS CI."* Digging showed it wasn't caused by that PR — the same test was **also failing on #13413 and #13315**. It's a pre-existing **flake** in the ENT gate, so this PR fixes it at the source. ## Evidence it's a flake, not a real break The **same branch** produced both outcomes: | ENT crosscheck run | PR | K9 test | |---|---|---| | 30005431754 | #13414 | ✅ passed (~50s, slow path) | | 30008606974 | #13414 | ❌ failed | | 30006996158 | #13315 | ❌ failed | | 30006419247 | #13413 | ❌ failed | ## Root cause `CT-19 K9` hard-asserted that a normal `.click()` on Save is intercepted by a tooltip overlay: ```js expect(await pm.workflowsPage.normalSaveClickIsIntercepted(4000)).toBe(true); ``` But the Save button has **no tooltip of its own** (`WorkflowEditor.vue`) — the overlay that intercepts it is a **transient/adjacent tooltip** that often never appears on a programmatic hover in headless CI. The probe therefore conflates *"blocked by overlay"* with *"click landed"*, and the assertion flips run to run. (A first attempt — waiting for the overlay before probing — didn't help: the overlay simply isn't reliably summoned.) ## Fix (test-only, no product/Vue changes) - Treat interception as an **informational canary** — `testLogger.info(...)` instead of a hard assert. - Keep the **stable** assertion: the JS-click Save workaround still reaches the app (`msg.length > 0`) — the adjacent trigger-only-save test already exercises that same path and passes consistently. - If K9 is ever genuinely fixed, the canary log shows `intercepted:false` consistently — the signal to drop the JS-click workaround. This removes the flaky gate without losing meaningful coverage. Changes are limited to the spec and its page object. ## Verification `Workflows/*` are enterprise-only (skipped on OSS CI), so verified via the **ENT gate against this OSS branch** (`e2e` label). The removed assertion was the only flaky part; the retained assertion matches an already-stable adjacent test. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>