Skip to content

chore(tests): delete duplicate and unwired test harnesses - #6491

Merged
daggerstuff merged 1 commit into
stagingfrom
cursor/delete-duplicate-test-harnesses-e5bf
Nov 3, 2026
Merged

daggerstuff merged 1 commit into
stagingfrom
cursor/delete-duplicate-test-harnesses-e5bf

Conversation

@daggerstuff

@daggerstuff daggerstuff commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

Removed (grouped)

Duplicate / unwired Playwright specs

  • tests/browser-compatibility.spec.ts — overlapped tests/browser/browser-compatibility.spec.ts (validated by browser-tests.yml).
  • tests/cross-browser/browser-compatibility.spec.ts — same coverage as tests/browser/{browser-compatibility,cross-browser-compatibility}.spec.ts; no workflow references.
  • tests/e2e/mobile-responsiveness.spec.ts — duplicate of tests/mobile/mobile-responsiveness.spec.ts; neither path is referenced by scripts/workflows (kept the tests/mobile/ copy as the canonical file).

Orphan configs / probes

  • tests/e2e-config.ts, tests/mcp-e2e-config.ts — only self/README references; no package.json scripts (MCP script was already absent).
  • tests/home-hero-layout.mjs — no repo references.

Legacy integration harness

  • tests/integration/package.json, tests/integration/integration-test-runner.ts — unwired; root uses pnpm test:integration → vitest run tests/integration/.
  • Removed tests/integration from pnpm-workspace.yaml and lockfile; dropped .dockerignore !tests/integration/package.json exception.

Docs

  • tests/e2e/README.md — points at config/playwright.config.ts instead of deleted mini-configs; removed stale MCP section.

Intentionally untouched

Kept / not ported

No assertion porting: deleted browser specs were strict subsets of tests/browser/*. CI entrypoints remain tests/browser/auth.spec.ts and tests/browser/browser-compatibility.spec.ts.

Proof

Check Result
pnpm lint Pass (Node 24.20.0)
pnpm build Pass
pnpm vitest run -c config/vitest.config.ts Baseline (staging): 10 failed files, 474 passed. Branch: same 10 failed files (identical set).
pnpm exec playwright test --list -c config/playwright.config.ts Exit 0 on branch (pre-existing vitest *.test.ts files under tests/ still emit loader errors; tests/browser lists 949 tests in 9 files).

Failed vitest files (both baseline and branch): auth.test.ts, useChatCompletion.test.ts, chain.test.ts, logger.test.ts, db-ssl-config.test.ts, ehr-rbac.test.ts, compliance-validator.test.ts, fhe-integration.test.ts, graphql.test.ts, skills-api.test.ts.

Net change

−1,891 lines (12 files, +5 / −1,896 per git diff --shortstat staging).

Open in Web Open in Cursor 

Summary by Sourcery

Clean up obsolete test harnesses and consolidate testing around the repository's active configurations and canonical specs.

Enhancements:

  • Remove duplicate and unwired browser and end-to-end test harnesses while retaining the canonical Playwright coverage.
  • Simplify integration test ownership by removing the obsolete standalone integration package and workspace entry.
  • Update end-to-end testing documentation to reference the shared Playwright configuration and remove stale MCP guidance.

Build:

  • Remove the obsolete integration test workspace package and associated lockfile and Docker ignore references.

Documentation:

  • Align the E2E README with the shared Playwright configuration and current supported test commands.

Chores:

  • Delete orphaned test configurations, probes, and duplicate test specifications.

@vercel

vercel Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
pixelated Ready Ready Preview Nov 3, 2026 2:56pm UTC

Request Review

@sourcery-ai

sourcery-ai Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

This cleanup removes 12 duplicate, orphaned, or unwired test-harness files and updates workspace metadata and E2E documentation to reflect the supported test entrypoints. Canonical browser/mobile tests and CI coverage remain unchanged; lint and build pass, while Vitest reports the same pre-existing failures as baseline and Playwright successfully discovers 949 tests across 9 browser files.

File-Level Changes

Change Details Files
Remove duplicate and unwired Playwright test specifications while retaining the canonical browser and mobile coverage.
  • Delete duplicate browser-compatibility specs with overlapping coverage.
  • Delete the duplicate mobile responsiveness spec, keeping the tests/mobile copy.
  • Preserve existing CI entrypoints and avoid porting assertions because coverage is already represented in tests/browser.
tests/browser-compatibility.spec.ts
tests/cross-browser/browser-compatibility.spec.ts
tests/e2e/mobile-responsiveness.spec.ts
Remove obsolete test configuration, probes, and legacy integration harnesses from repository and workspace metadata.
  • Delete unused E2E and MCP configuration files plus the unreferenced hero-layout probe.
  • Delete the unwired integration package and runner.
  • Remove tests/integration from the pnpm workspace and lockfile, and remove its Docker ignore exception.
tests/e2e-config.ts
tests/mcp-e2e-config.ts
tests/home-hero-layout.mjs
tests/integration/package.json
tests/integration/integration-test-runner.ts
pnpm-workspace.yaml
pnpm-lock.yaml
.dockerignore
Align E2E documentation with the shared Playwright configuration and remove stale MCP instructions.
  • Document config/playwright.config.ts as the shared test configuration.
  • Direct users to the existing test scripts and remove references to deleted mini-configs and MCP setup.
tests/e2e/README.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Nov 3, 2026
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

px Advisor Review

Risk: unknown

No summary available

No findings.

Comment thread pnpm-workspace.yaml
Comment on lines 3 to 8
- 'apps/business-strategy-cms'
- 'agents/*'
- 'packages/*'
- 'tests/integration'
- 'foresight/cli'
- 'tools/px'
# Committed lockfile is the trusted source of truth;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Bug: The foresight/cli importer was removed from pnpm-lock.yaml while remaining in pnpm-workspace.yaml, causing frozen lockfile installations to fail when the submodule is checked out.
Severity: MEDIUM

Suggested Fix

Regenerate pnpm-lock.yaml with the foresight submodule checked out so the foresight/cli importer is retained, or remove foresight/cli from pnpm-workspace.yaml if it is intentionally no longer a workspace package.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.

Location: pnpm-workspace.yaml#L3-L8

Potential issue: `pnpm-workspace.yaml` retains `foresight/cli` as a workspace package,
but the regenerated `pnpm-lock.yaml` removed the corresponding `foresight/cli` importer.
When submodules are initialized (such as during CI in `ci.yml` before building
`infra/docker/Dockerfile.production`), `foresight/cli` is present in the build context.
Running `pnpm install --frozen-lockfile` will fail with `ERR_PNPM_OUTDATED_LOCKFILE` due
to the discrepancy between the workspace declaration and the lockfile.

Did we get this right? 👍 / 👎 to inform future reviews.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!

Sourcery assessment

Approved.


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

Lighthouse CI Results

Routes audited: /, /dashboard?perf=1, /training-session

Thresholds: Performance ≥90 | Accessibility ≥90 | Best Practices ≥85

Reports

  • lhr-1793701123885
  • lhr-1793701136673
  • lhr-1793701148902
  • lhr-1793701160446
  • lhr-1793701171794
  • lhr-1793701183233
  • lhr-1793701194636
  • lhr-1793701206020
  • lhr-1793701217413

Reports are also available as workflow artifacts

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

px Advisor Review

Risk: unknown

No summary available

No findings.

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

Lighthouse CI Results

Routes audited: /, /dashboard?perf=1, /training-session

Thresholds: Performance ≥90 | Accessibility ≥90 | Best Practices ≥85

Reports

  • lhr-1793715482277
  • lhr-1793715494805
  • lhr-1793715506884
  • lhr-1793715518224
  • lhr-1793715529506
  • lhr-1793715540767
  • lhr-1793715551981
  • lhr-1793715563187
  • lhr-1793715574451

Reports are also available as workflow artifacts

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

px Advisor Review

Risk: unknown

No summary available

No findings.

Remove root and cross-browser Playwright duplicates, an unwired mobile spec,
legacy integration workspace runner, and orphaned config/probe files. Drop the
tests/integration pnpm workspace entry and dockerignore exception; point e2e
README at config/playwright.config.ts.
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

px Advisor Review

Risk: unknown

No summary available

No findings.

@daggerstuff
daggerstuff merged commit a6f2b51 into staging Nov 3, 2026
30 of 33 checks passed
@daggerstuff
daggerstuff deleted the cursor/delete-duplicate-test-harnesses-e5bf branch November 3, 2026 15:05
@linear-code

linear-code Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

PIX-4836

This branch was successfully deployed

1 active deployment
Preview — 0232193e Deployed Nov 3, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants