task: #3622591 Split the Canvas default-pattern suite and make the cucumber retry configurable
Issue: #3622591 Plan: release Varbase Project 11.0.9
What this changes
The 🧪 varbase-e2e parallel matrix entry 09-drupal-canvas-d drove the whole Canvas default-pattern coverage in one browser session. It is now three entries, each driving a shorter session:
| Suite | Features | CUCUMBER_RETRY |
|---|---|---|
09-drupal-canvas-d |
09-06-*.feature (the library listings) |
default (1) |
09-drupal-canvas-e |
09-07-*.feature (FAQ Accordion, Hero Slider, Counters inserts) |
2 |
09-drupal-canvas-f |
09-08-*.feature (Feature Cards, Call to Action Banner, plus pattern reuse) |
2 |
cucumber.js now reads retry: Number(process.env.CUCUMBER_RETRY || 1) instead of a hardcoded retry: 1, so a CI job can raise it. The default is unchanged for every other job and for a local run.
No scenario was dropped. 8 scenarios before the split (counting the Scenario Outline examples), 8 after: 2 library-listing scenarios in 09-06, 3 insert examples in 09-07, 2 insert examples plus the reuse scenario in 09-08.
Why
- The tag pipeline for 11.0.9 (pipeline 968906, sha
2c5373a) failed 4 runs on🧪 varbase-e2e: [09-drupal-canvas-d], every time on the stepWhen I open the "<name>" Canvas page in the editorwithError: function timed out … 180000 milliseconds. - The same sha passed that job on the branch pipeline 968882, in 821s. Job duration for this suite swings between roughly 500s and 1615s, and the failures cluster on the slow runs. That is load, not a defect in the feature.
- It is not new to 11.0.9: the same job also failed on pipelines 953605 (MR !100 (merged)) and 953368 (the MR !99 (merged) train) on 8 September 2026.
- The root cause is in
@vardot/varbase-e2e: that step's retry loop could outlast its own cucumber timeout. It is being fixed separately inVardot/varbase-e2e(a PR is open there) and will land here as a dependency bump to^2.0.5in a follow-up commit on this same MR. This MR is the load-relief half: shorter browser sessions per job, plus a retry the two Canvas pattern jobs can raise. - The 11.0.9 tag was created and then deleted from both drupal.org and the GitHub mirror because its pipeline was red. It will be re-tagged once this is merged and green.
What was verified, and what was not
Verified locally:
node --check cucumber.jspasses..gitlab-ci.ymlparses as YAML, and the parallel matrix reads back as 14 entries with the three09-drupal-canvas-d/e/fentries above.- Scenario count before and after the split is 8 either way.
Not verified, and this is the open risk: no cucumber dry-run of the three feature files was possible in this checkout, because node_modules is not installed here. The gherkin in 09-07 and 09-08 is therefore unproven until the MR pipeline runs. If a step phrase or an Examples table is wrong, the pipeline is where it will show.
AI-Generated: Yes
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release