Skip to content

test(e2e): skip Suricata in smoke fixture to fix processing-timeout flake#570

Merged
NotYuSheng merged 1 commit into
mainfrom
fix/e2e-suricata-processing-timeout
Jul 19, 2026
Merged

test(e2e): skip Suricata in smoke fixture to fix processing-timeout flake#570
NotYuSheng merged 1 commit into
mainfrom
fix/e2e-suricata-processing-timeout

Conversation

@NotYuSheng

@NotYuSheng NotYuSheng commented Jul 19, 2026

Copy link
Copy Markdown
Owner

Problem

The llm-error.spec.ts smoke test (E2E Smoke Tests / Playwright smoke tests) has been flaky, failing in fixture setup with:

Error: file processing did not complete (status: processing)
Expected: "completed"

It first surfaced on the version-sync PR #568 (v0.1.1-182-g75ce6ee) — the only recent sync PR that touched an E2E-trigger path (docker-compose.yml), so it was the first sync to re-run the suite. It is not a #567 regression; #567 only nudged a test that was already sitting on the edge.

Root cause

uploadAndProcessFixture uploads a pcap and polls up to 60s for completed. enableSuricata defaults to true at the API, and Suricata reloads the full Emerging Threats ruleset on every analysis (~60s regardless of size), so processing lands right at the deadline and tips over when CI is slightly slow.

Measured against the running stack (ftp.pcap, 9 KB / 38 packets):

Config Analysis time
Suricata on (default) ~62s (Extract stage alone = 58s)
Suricata off ~2s

Fix

The LLM-error tests only need a completed file to reach the Story/Filter tabs — they don't exercise IDS output. Upload the fixture with enableSuricata: 'false'. Fixture setup drops from a flaky ~60s to ~2s.

Local run: 2 passed (3.4s).

Follow-up

The underlying "Suricata adds ~60s to every upload" performance problem is tracked separately in #569.

Summary by CodeRabbit

  • Tests
    • Improved fixture upload smoke-test reliability by disabling Suricata processing during test uploads.
    • Reduced unnecessary processing time and flakiness around test deadlines.

…flake

The llm-error smoke test uploads a pcap and waits up to 60s for it to reach
'completed'. Suricata defaults to on at the API, and loading the Emerging
Threats ruleset adds ~60s per analysis regardless of capture size, parking the
test right at its deadline (~62s observed for a 38-packet fixture) — so it
flakes when CI is slightly slow.

These tests only need a completed file to reach the Story/Filter tabs, so
disable Suricata in the upload helper. Fixture setup drops from ~60s to ~2s.
Root-cause perf issue tracked in #569.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the end-to-end test helper in frontend/e2e/helpers.ts to disable Suricata (enableSuricata: 'false') during fixture upload and processing. This change is intended to prevent smoke tests from timing out and becoming flaky due to the overhead of loading the Emerging Threats ruleset. I have no feedback to provide as there are no review comments.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@coderabbitai

coderabbitai Bot commented Jul 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 1f74831f-8df6-4997-b30a-63c79f01ea0b

📥 Commits

Reviewing files that changed from the base of the PR and between 75ce6ee and 7a5bb25.

📒 Files selected for processing (1)
  • frontend/e2e/helpers.ts

📝 Walkthrough

Walkthrough

The end-to-end fixture upload helper now explicitly disables Suricata processing and documents that ruleset processing can make smoke-test deadlines flaky.

Changes

Fixture upload processing

Layer / File(s) Summary
Disable Suricata for fixture uploads
frontend/e2e/helpers.ts
The multipart upload payload sets enableSuricata to 'false', with comments documenting the processing-time impact.

Estimated code review effort: 1 (Trivial) | ~2 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: disabling Suricata in the E2E smoke fixture to avoid processing-timeout flakes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@NotYuSheng
NotYuSheng merged commit 0e7cda8 into main Jul 19, 2026
3 checks passed
@NotYuSheng
NotYuSheng deleted the fix/e2e-suricata-processing-timeout branch July 19, 2026 13:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant