Skip to content

U10: Add end-to-end acceptance coverage #10

@breadback00-dev

Description

@breadback00-dev

What is the work

Add end-to-end and integration coverage proving the MVP workflow matches the requirements: format selection, intake, review, image attachment, SVG preview, text-fit warnings, and Sharp export output.

Planned areas:

  • tests/e2e/events-roundup.spec.ts
  • tests/fixtures/intake/
  • components/**/*.test.tsx
  • convex/*.test.ts

Why does it matter

The product promise only exists when the whole flow works together. Unit tests alone will not prove that format metadata, intake, review, images, SVG rendering, and export cooperate.

What does done mean

  • Playwright covers the main Events Roundup creation flow.
  • Tests cover messy pasted input and structured input.
  • Tests cover fewer than 10 events and more than 10 events.
  • Tests cover uploaded images and source URL images in preview/export.
  • Tests cover ambiguous/missing details requiring review before export.

Acceptance criteria

  • E2E happy path creates an Events Roundup from messy pasted text, approves items, attaches images, reviews slides, and downloads exported images.
  • Structured input path can skip messy intake.
  • Fewer than 10 events remain usable and clearly represented.
  • More than 10 events remain usable and ordered.
  • Ambiguous/missing details require review before export.
  • Uploaded image and source URL image both render in SVG previews and exported images.

Blockers

What can make this fail

  • E2E tests duplicate unit coverage but do not exercise the actual user journey.
  • Fixtures are too narrow and miss the variable-length roundup decision.
  • Export tests only check that a button appears, not that files are produced.
  • Tests require live third-party AI or network-dependent event data.

How should Codex verify it

  • Run Playwright E2E tests.
  • Run Vitest component/domain tests.
  • Run Convex backend tests.
  • Run Sharp render/export tests.
  • Confirm fixtures are deterministic and do not depend on live AI or web scraping.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions