Problem
The Ruby Style (rubocop) job in the pupmod pr_tests.yml baseline is in an inconsistent state between the template and what is actually deployed to the modules.
Template — modules/profile/files/pupmod/_github/workflows/pr_tests.yml:
ruby-style:
if: false # TODO Modules will need: rubocop in Gemfile, .rubocop.yml
name: 'Ruby Style (experimental)'
runs-on: ubuntu-latest
continue-on-error: true
i.e. the job is disabled (if: false), marked experimental, and set to continue-on-error: true, pending modules having rubocop wired up.
Deployed modules — the job has drifted: it runs (no if: false, name 'Ruby Style') but still carries continue-on-error: true, so rubocop failures are silently ignored in CI. This is currently the case in ~70 of 71 non-archived pupmod-simp-* repos.
Why now
The round-2 OpenVox 9 / Ruby 4.0 migration standardized the rubocop stack across all modules (rubocop/-rake/-rspec now come via voxpupuli-test through simp-rake-helpers ~> 6.0, and every module has a .rubocop.yml). So the template's TODO precondition ("Modules will need: rubocop in Gemfile, .rubocop.yml") is now satisfied — rubocop can be a real, enforced check.
Ask
Decide the intended policy and reconcile the baseline so it matches, then resync:
- Drop
if: false and the (experimental) name, and remove continue-on-error: true so rubocop actually gates CI; or deliberately keep it advisory — but make the template and the deployed modules agree either way.
Related
Real rubocop failures currently masked by continue-on-error (to be fixed alongside enforcement):
Surfaced during the round-2 OpenVox 9 / Ruby 4.0 migration.
Problem
The
Ruby Style(rubocop) job in the pupmodpr_tests.ymlbaseline is in an inconsistent state between the template and what is actually deployed to the modules.Template —
modules/profile/files/pupmod/_github/workflows/pr_tests.yml:i.e. the job is disabled (
if: false), marked experimental, and set tocontinue-on-error: true, pending modules having rubocop wired up.Deployed modules — the job has drifted: it runs (no
if: false, name'Ruby Style') but still carriescontinue-on-error: true, so rubocop failures are silently ignored in CI. This is currently the case in ~70 of 71 non-archivedpupmod-simp-*repos.Why now
The round-2 OpenVox 9 / Ruby 4.0 migration standardized the rubocop stack across all modules (rubocop/-rake/-rspec now come via
voxpupuli-testthroughsimp-rake-helpers ~> 6.0, and every module has a.rubocop.yml). So the template's TODO precondition ("Modules will need: rubocop in Gemfile, .rubocop.yml") is now satisfied — rubocop can be a real, enforced check.Ask
Decide the intended policy and reconcile the baseline so it matches, then resync:
if: falseand the(experimental)name, and removecontinue-on-error: trueso rubocop actually gates CI; or deliberately keep it advisory — but make the template and the deployed modules agree either way.Related
Real rubocop failures currently masked by
continue-on-error(to be fixed alongside enforcement):Surfaced during the round-2 OpenVox 9 / Ruby 4.0 migration.