fix: #3628401 Ship the component versions the content uses and check them in the functional suite

Issue: https://www.drupal.org/project/rightup/issues/3628401

Content templates reference component versions the recipe does not ship, so the Home page and the Canvas editor fail with an OutOfRangeException on a site installed from recipe 1.0.2 with theme 1.0.3.

  • Re-exports canvas.component.sdc.vartheme_bs5_rightup.button, .group and .text so they ship the newest version of each, which the content already references (button f7a537484db43170, group a84c76c20ee7a3da, text a67ef6b9d036abac). The exports come from the playground site; the diff only adds versions and the options module dependency, and moves active_version.
  • Adds tests/features/15-quality/15-05-component-versions.feature to the functional suite. One scenario checks, from the recipe's own files, that every component version the content uses is one the recipe ships (new step in tests/step-definitions/component-versions.steps.js). Six more visit the home, podcasts, podcast show, culture, search and contact pages as a visitor and fail if an OutOfRangeException or the "unexpected error" page is shown.

Checked: the static scenario fails with the 11 references when the three component configs are as on 1.0.x and passes with this change. The page scenarios pass on a healthy Drupal CMS site and fail on a copy of the broken site (home and culture pages). Cspell, ESLint and the Cucumber dry-run pass locally with gitlab-ci-local.

Not checked: a fresh install with this change (the merge request pipeline builds one), and the Canvas editor view. A scenario that opened the editor did not detect the error, so it is left out.

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

🤖 Generated with Claude Code

Edited by Rajab Natshah

Merge request reports

Loading
Loading