Skip to content
This repository was archived by the owner on May 29, 2026. It is now read-only.

chore: fix CI failures post-PR#2 (phpcs, eslint, docs, openspec-sync)#6

Merged
rubenvdlinde merged 6 commits into
developmentfrom
chore/quality-fixes-post-pr2
May 11, 2026
Merged

chore: fix CI failures post-PR#2 (phpcs, eslint, docs, openspec-sync)#6
rubenvdlinde merged 6 commits into
developmentfrom
chore/quality-fixes-post-pr2

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

Summary

Fixes the 4 CI checks that started failing after PR #2 merged on development:

  • phpcs — moved SPDX-License-Identifier into the file docblock (the // SPDX-... line above the docblock triggered Squiz.Commenting.FileComment errors) for: lib/AppInfo/Application.php, lib/Controller/DashboardController.php, lib/Sections/SettingsSection.php, lib/Settings/AdminSettings.php.
  • eslint — added @nextcloud/auth to dependencies (used by src/store/modules/object.js and settings.js for getRequestToken); resolves n/no-extraneous-import.
  • Deploy Documentation — changed docusaurus/package.json ci script from npm ci to npm install since no docusaurus/package-lock.json is committed.
  • OpenSpec Sync — pinned the reusable workflow ref to @feature/openspec-project-sync (matches opencatalogi, decidesk, mydash, etc.); @main does not yet contain openspec-sync.yml.

Test plan

  • composer phpcs — passes locally (8/8 files, 0 errors)
  • CI: quality / PHP Quality (phpcs) green
  • CI: quality / Vue Quality (eslint) green
  • CI: Deploy Documentation green
  • CI: OpenSpec Sync green

- phpcs: move SPDX-License-Identifier inside file docblock for 4 lib
  files (AppInfo/Application, Controller/DashboardController,
  Sections/SettingsSection, Settings/AdminSettings) — the `// SPDX-...`
  line above the docblock triggered file-comment-style errors.
- eslint: add `@nextcloud/auth` to dependencies (used by
  src/store/modules/object.js and settings.js for getRequestToken);
  fixes `n/no-extraneous-import` errors.
- docs: change docusaurus `ci` script from `npm ci` to `npm install`
  since no docusaurus/package-lock.json is committed.
- openspec-sync: pin reusable workflow to
  `@feature/openspec-project-sync` (matches other apps; `@main` does
  not yet contain this workflow).
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ 4435484

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm
PHPUnit ⏭️
Newman ⏭️
Playwright ⏭️

Quality workflow — 2026-05-11 11:11 UTC

Download the full PDF report from the workflow artifacts.

Previous commit regenerated the entire lockfile via `npm install`,
which created an `npm ci`-incompatible result on the runner (ERESOLVE
on @typescript-eslint/utils peer dep mismatch).

This commit:
- pins @nextcloud/auth to ^2.5.0 (matches existing transitive 2.5.3 in lockfile)
- restores the original lockfile from b50e9a3 and adds only the
  top-level @nextcloud/auth declaration (1 line)

Verified: `npm ci --legacy-peer-deps` succeeds locally.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ f74bca1

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 215/215
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-05-11 11:19 UTC

Download the full PDF report from the workflow artifacts.

The unanchored 'js/' and 'css/' rules matched any nested directory,
silently excluding docusaurus/src/css/custom.css from git. Result:
the Deploy Documentation workflow failed at every build with
'Cannot find module ./src/css/custom.css' because the Docusaurus
config referenced a file that was never committed.

Fix: anchor to root via leading slash — '/js/', '/css/', '/dist/'.
Matches the pattern used in decidesk and the upstream
nextcloud-app-template. Also commit the previously-untracked
docusaurus/src/ directory so the docs build can find its custom CSS.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ e4f5457

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 215/215
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-05-11 11:23 UTC

Download the full PDF report from the workflow artifacts.

Docusaurus 3.8.1 is incompatible with the bundled webpack
ProgressPlugin API (unknown properties 'name', 'color', 'reporters',
'reporter'). Pin to the 3.7.x range using a tilde to match the
working version used by mydash/opencatalogi/etc. and avoid auto-upgrade.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ 65c3667

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 215/215
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-05-11 11:26 UTC

Download the full PDF report from the workflow artifacts.

Docusaurus 3.7 + webpack 5 ProgressPlugin schema validation rejects
the legacy require('prism-react-renderer/themes/github') / dracula
loading pattern, failing the docs build with:
  Progress Plugin has been initialized using an options object that
  does not match the API schema.

openconnector's docusaurus config uses inline theme objects and
builds successfully. Adopting the same pattern: plain github-light +
dracula-dark inline. Themes are intentionally minimal — extend later
if syntax highlighting becomes a UX priority.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ b412a0e

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 215/215
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-05-11 11:29 UTC

Download the full PDF report from the workflow artifacts.

…ema error

Webpack 5.105+ removed the 'name'/'color'/'reporters'/'reporter'
options from ProgressPlugin's schema. Docusaurus 3.7 still passes
these options, causing a build-time ValidationError.

Pin webpack to 5.99.9 via npm overrides (the last release before
the schema change) to unblock the docs build.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/scholiq @ b06c152

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 215/215
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-05-11 11:33 UTC

Download the full PDF report from the workflow artifacts.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant