Skip to content

feat: add more e2e tests to frontend#1458

Merged
lucaseduoli merged 40 commits into
mainfrom
feat/e2e_more_tests
Jul 13, 2026
Merged

feat: add more e2e tests to frontend#1458
lucaseduoli merged 40 commits into
mainfrom
feat/e2e_more_tests

Conversation

@lucaseduoli

@lucaseduoli lucaseduoli commented Apr 23, 2026

Copy link
Copy Markdown
Collaborator

This pull request introduces several updates to the project's Docker configuration and frontend dependencies. The main focus is on switching Docker services from using pre-built images to building them locally, and on adding new logging-related dependencies to the frontend.

Docker configuration changes:

  • Switched all services in docker-compose.yml (opensearch, openrag-backend, openrag-frontend, langflow) from using pre-built images to building from local Dockerfiles, which will help with local development and debugging. [1] [2] [3] [4]
  • Exposed port 8000 for the openrag-backend service to allow direct access during development.

Frontend dependency updates:

  • Added the winston logging library and its dependencies (such as logform, winston-transport, triple-beam, etc.) to frontend/package-lock.json and as a dependency, enabling advanced logging capabilities in the frontend. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]
  • Added various supporting libraries required by winston and its ecosystem, such as @colors/colors, @dabh/diagnostics, async, fecha, fn.name, inherits, kuler, one-time, readable-stream, safe-buffer, safe-stable-stringify, stack-trace, string_decoder, text-hex, and more. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]

Other changes:

  • Updated .dockerignore to also exclude frontend/tests/logs/ from Docker build context, preventing test logs from being sent to Docker.

Summary by CodeRabbit

  • New Features

    • Expanded end-to-end coverage for chat, knowledge ingestion, document search, model switching, theme switching, and settings restore flows.
    • Added support for richer test scenarios around file uploads, URL ingestion, tasks, and knowledge filters.
  • Bug Fixes

    • Improved reliability when switching models, restoring settings, and handling long or unusual chat inputs.
    • Strengthened checks for document ingestion, deletion, and search accuracy.
  • Chores

    • Updated build and test configuration to better handle logs, sharded CI runs, and test reporting.

@lucaseduoli lucaseduoli self-assigned this Apr 23, 2026
@github-actions github-actions Bot added frontend 🟨 Issues related to the UI/UX docker enhancement 🔵 New feature or request labels Apr 23, 2026
@github-actions github-actions Bot added ci ⬛ CI/CD, build, and infrastructure issues enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Apr 23, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Apr 23, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Apr 24, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Apr 27, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Apr 27, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 6, 2026
@coderabbitai

coderabbitai Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

This PR adds a Playwright end-to-end test harness for the frontend (page objects, fixtures, specs, test data), sharded CI execution with report merging, new dependencies (winston, zustand), and removes numerous debug console logs while adjusting several React useEffect/useCallback dependency arrays across app/component files.

Changes

Frontend Playwright test harness

Layer / File(s) Summary
CI sharding and reporting
.github/workflows/test-ci.yml, frontend/playwright.config.ts, .dockerignore, .gitignore, frontend/.gitignore
E2E tests run across 4 shards, upload shard-scoped artifacts, merge into a combined HTML report; Playwright uses blob reporter in CI; test logs are gitignored/dockerignored.
Shared test config and fixtures
frontend/tests/config/*, frontend/tests/utils/*, frontend/package.json
Adds provider/test configuration, logging (winston), navigation/onboarding helpers, model-transition helper, and a Playwright fixture extension with page objects and document cleanup.
Chat, Knowledge, Settings, and TasksMenu page objects
frontend/tests/pages/*
Implements reusable page objects for chat Q&A/streaming/theme/URL-ingestion, knowledge document/filter/chunk management, settings/provider configuration, and task-drawer status handling.
Chat, upload, and setup specs
frontend/tests/core/00_setup.spec.ts, basic-questions.spec.ts, chat-nudges.spec.ts, theme-switching.spec.ts, fileUploadQA.spec.ts, model_switching.spec.ts, z_update_model_providers.spec.ts
Adds specs for onboarding setup, chat prompts/refusals, suggestion clicks, theme switching, file upload Q&A, and provider switching/transitions.
Ingestion, search, and knowledge-flow specs
frontend/tests/core/*ingestion*.spec.ts, chunk-*, document_deletion.spec.ts, knowledge_filter.spec.ts, search.spec.ts, financial_document.spec.ts, restore_flow.spec.ts, tasks-menu.spec.ts, upload-and-query.spec.ts, picture_desc.spec.ts
Adds specs for bulk/diverse/URL ingestion, chunk size/overlap/search analysis, document deletion, knowledge filters, financial document Q&A, settings restore flow, task upload monitoring, and prompt-injection safety checks.
Test-data fixtures
frontend/tests/test-data/**
Adds sample documents in supported/unsupported formats and bulk/combo ingestion fixtures for the above specs.
Runtime and component dependency updates
frontend/app/**, frontend/components/**, frontend/contexts/**, frontend/hooks/**, frontend/lib/**
Removes debug console logging and adjusts several useEffect/useCallback dependency arrays in auth, chat, knowledge, onboarding, settings, and task-related code without changing core behavior.

Estimated code review effort: 3 (Moderate) | ~30 minutes

Possibly related PRs

  • langflow-ai/openrag#1577: Tasks Menu drawer-detection logic in this PR is coupled to a UI refactor removing the "Recent Tasks" section in the same component.
  • langflow-ai/openrag#1826: Both PRs modify the same 401/redirect URL validation logic in frontend/app/providers.tsx.
  • langflow-ai/openrag#1873: This PR adds zustand to frontend/package.json while the related PR removes it, creating a direct conflict.

Suggested labels: tests

Suggested reviewers: mfortman11, Wallgau

🚥 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 clearly reflects the main change: a large addition of frontend end-to-end tests and related test infrastructure.
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 unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/e2e_more_tests

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.

@github-actions github-actions Bot removed the enhancement 🔵 New feature or request label Jul 6, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 9, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 9, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 9, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 9, 2026

@Wallgau Wallgau left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

great work, just some empty if statement block to remove and make sure React Doctor comment are addressed.

Comment thread frontend/components/cloud-picker/sharepoint-v8-handler.ts Outdated
Comment thread frontend/lib/chat-stream-parsers.ts Outdated
Comment thread frontend/app/chat/page.tsx
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 10, 2026
@github-actions github-actions Bot added enhancement 🔵 New feature or request and removed enhancement 🔵 New feature or request labels Jul 10, 2026
Comment thread frontend/components/chat-renderer.tsx Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend 🔷 Issues related to backend services (OpenSearch, Langflow, APIs) ci ⬛ CI/CD, build, and infrastructure issues docker enhancement 🔵 New feature or request frontend 🟨 Issues related to the UI/UX lgtm tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants