Skip to content

[P6.5.1] frontend-tests CI: add npm run build + re-enable frontend lint #646

Description

@frankbria

Problem

Two CI safety-net gaps for the actively-developed web UI:

  1. CI never runs npm run build. The frontend-tests job runs npm run test:coverage only; npm run build appears only in deploy.yml (deploy time). A TypeScript/build break passes PR CI and only fails at deploy.
  2. Frontend lint is disabled in CI with a comment calling web-ui "legacy" — but CLAUDE.md states the web UI is "actively developed — not legacy" and mandates not leaving CI gates disabled in active areas. Lint currently surfaces 5 errors, including a dead import in shipped code: web-ui/src/components/proof/CaptureGlitchModal.tsx:7 ('Input' is defined but never used).

Evidence

  • .github/workflows/test.yml:248-289frontend-tests runs coverage only, no build
  • .github/workflows/test.yml:51-52# Note: Frontend linting disabled - web-ui is legacy during v2 CLI-first refactor
  • eslint . → 5 errors / 7 warnings; the one shipped-code error is CaptureGlitchModal.tsx:7

Fix

  • Add a npm run build step to the frontend-tests job.
  • Re-enable frontend lint in code-quality.
  • Clear the 5 lint errors (remove dead import in CaptureGlitchModal.tsx; fix unused imports in the named test files).

Acceptance criteria

  • frontend-tests runs npm run build and fails the PR on a build break.
  • Frontend lint runs in CI and is green.
  • frontend-tests remains wired into test-summary.

Source: release-readiness audit 2026-06-13 (frontend + test/CI agents).

Metadata

Metadata

Assignees

No one assigned

    Labels

    P0-blocker-betaCritical blocker - must fix before beta testingci-cdphase-6.5Phase 6.5: CI/CD gate re-hardening (beta blockers)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions