Skip to content

chore: sync canonical root configs + mechanical phpmd cleanup#300

Merged
rubenvdlinde merged 1 commit into
developmentfrom
chore/sync-canonical-root-configs
May 21, 2026
Merged

chore: sync canonical root configs + mechanical phpmd cleanup#300
rubenvdlinde merged 1 commit into
developmentfrom
chore/sync-canonical-root-configs

Conversation

@rubenvdlinde
Copy link
Copy Markdown
Contributor

Summary

Phase 2 fleet rollout of the root-config consolidation. Replaces per-app phpcs/phpmd/psalm/phpstan extensions with the canonical from nextcloud-app-template.

Lint-debt tracking: #299.

Quality gates

Gate Status
phpcs ✅ 0 violations
psalm ✅ 0 errors
phpstan ✅ 0 unmatched (1 baselined per #299)
phpmd 🔴 4 architectural violations (tracked #299)

phpmd has no native baseline support so CI stays red until #299 closes. Agreed-upon tracked-debt pattern.

Source changes

  • 2 ElseExpression in lib/Repair/InitializeSettings.php refactored to a two-if pattern (preserves behaviour).
  • 1 @psalm-suppress/@phpstan-ignore — N/A, only the baseline file.

Test plan

Phase 2 fleet rollout of the root-config consolidation. Drops per-app
phpcs/phpmd/psalm/phpstan extensions in favour of the canonical from
nextcloud-app-template, then cleans the mechanical phpmd violations
unmasked by the sync.

Config changes:
- phpcs.xml: sync canonical, restore Shillinq description.
- phpmd.xml: byte-canonical, restore Shillinq ruleset name.
- psalm.xml: sync canonical.
- phpstan.neon: sync canonical (includes phpstan-baseline.neon).
- phpstan-baseline.neon: NEW. 1 tracked phpstan error, see #299.
- phpcs-custom-sniffs/.../{SpecTagSniff,NoLegacyServerAccessorsSniff}.php:
  copied from canonical so the synced phpcs.xml can reference them.

Source: 2 ElseExpression in InitializeSettings.php refactored to a
two-if pattern (preserves behavior, drops the else keyword).

Quality gates after sync:
- phpcs: 0 violations.
- psalm: 0 errors.
- phpstan: 0 unmatched (1 baselined per #299).
- phpmd: 4 architectural violations remain — see #299.
@rubenvdlinde rubenvdlinde merged commit 419ce3b into development May 21, 2026
11 of 14 checks passed
@rubenvdlinde rubenvdlinde deleted the chore/sync-canonical-root-configs branch May 21, 2026 20:20
@github-actions
Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/shillinq @ f5942f1

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

Quality workflow — 2026-05-21 20:21 UTC

Download the full PDF report from the workflow artifacts.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant