Problem/Motivation

ACT has focused browser tests, but maintainers need readable, recorded journeys to review the complete loading experience. A passing assertion at one instant does not demonstrate stable scrolling, complete progressive loading, or preserved drafts after all work settles.

Proposed resolution

Add three native Playwright journeys with named test.step() sections:

  1. Reveal replies without changing selection/unread state, losing a draft, or shifting the reading position; collapse and reopen to verify reuse.
  2. Compare Compact and Hybrid prefetch, checking that background fetching does not reveal/select/read comments and that later selection reuses a current response.
  3. Reach omitted comments using “N more” and Expand All from a genuinely partial tree, preserving order, accessibility metadata and drafts, including failure recovery.

Use Drupal-generated fixtures and the shipped JavaScript bundle. Controlled browser responses may exercise delays and errors; report their timings as browser diagnostics, not server-performance benchmarks. Keep Behat/site-pipeline migration outside this issue.

Remaining tasks

  • Require fixture generation; missing fixtures must fail this job rather than silently skip the journeys.
  • Produce an HTML report, JUnit results, checkpoint screenshots, request summaries, videos and traces.
  • Run Chromium automatically for relevant merge-request and default-branch changes, retaining failed recordings for seven days; skip documentation-only automatic runs.
  • Run all journeys on release tags and provide a manual recorded-review option, retaining passing and failing recordings for fourteen days.
  • Avoid duplicate branch/MR pipelines. Save artifacts under the checkout and upload on success or failure without hiding the test exit status.
  • Measure artifact size, avoid duplicated recordings and dependency archives, and check GitLab's keep-latest behavior. Verify hosted upload/download before claiming Drupal.org execution works.
  • Assert post-settlement stability and complete recovery, not only an intermediate successful frame.

User interface changes

None to the module. Maintainers gain reviewable browser recordings and reports.

API changes

Test commands and CI artifact outputs only.

Data model changes

None; use isolated test fixtures.

Comments

freelock created an issue. See original summary.

  • freelock committed 9ac4bbd4 on 1.0.x
    task: #3624095 Add recorded browser journeys for comment loading and...

  • freelock committed 76a82113 on 1.0.x
    task: #3624095 Add recorded browser journeys for comment loading and...

  • freelock committed 4113df59 on 1.0.x
    task: #3624095 Add recorded browser journeys for comment loading and...

  • freelock committed 0430f1bf on 1.0.x
    task: #3624095 Add recorded browser journeys for comment loading and...

  • freelock committed 7f38f605 on 1.0.x
    task: #3624095 Add recorded browser journeys for comment loading and...
freelock’s picture

Status: Active » Fixed

Fixed in Alpha4.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.