You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tracking issue for lint debt remaining after the Phase 2 fleet-wide canonical
root-config sync. Sibling PRs landed on shillinq (#300), decidesk (#243), and
this PR on deskdesk.
The canonical configs (phpcs.xml, phpmd.xml, psalm.xml, phpstan.neon,
custom sniffs) now match nextcloud-app-template exactly. No per-app rule
weakening — anything that couldn't be fixed mechanically is captured here.
phpstan baselined errors (1)
lib/Service/SettingsService.php:244 — \OC::$SERVERROOT legacy server
accessor. Replace with a proper path-resolution alternative
(IServerContainer / IConfig paths, or pass the NC root in via DI).
The current usage resolves the bundled register JSON file relative to /var/www/html to satisfy ConfigurationService::importFromFilePath.
phpmd architectural violations (1)
BooleanArgumentFlag — lib/Service/SettingsService.php:228SettingsService::loadConfiguration
takes a bool $force flag (Single Responsibility violation). Public
method, requires API redesign — split into loadConfiguration() and forceLoadConfiguration() or accept an enum/options object.
phpcs warnings (21, informational only)
phpcs reports 0 errors, 21 warnings across 12 files (mostly Generic.Files.LineLength
and complexity hints). Tracked here for future complexity refactors but not
blocking — phpcs gate passes.
Out of scope here
Per the Phase 2 directive, this PR does not weaken any per-app validation
rules — those decisions stay fleet-wide in the canonical templates.
Context
Tracking issue for lint debt remaining after the Phase 2 fleet-wide canonical
root-config sync. Sibling PRs landed on shillinq (#300), decidesk (#243), and
this PR on deskdesk.
The canonical configs (
phpcs.xml,phpmd.xml,psalm.xml,phpstan.neon,custom sniffs) now match
nextcloud-app-templateexactly. No per-app ruleweakening — anything that couldn't be fixed mechanically is captured here.
phpstan baselined errors (1)
lib/Service/SettingsService.php:244—\OC::$SERVERROOTlegacy serveraccessor. Replace with a proper path-resolution alternative
(
IServerContainer/IConfigpaths, or pass the NC root in via DI).The current usage resolves the bundled register JSON file relative to
/var/www/htmlto satisfyConfigurationService::importFromFilePath.phpmd architectural violations (1)
lib/Service/SettingsService.php:228SettingsService::loadConfigurationtakes a
bool $forceflag (Single Responsibility violation). Publicmethod, requires API redesign — split into
loadConfiguration()andforceLoadConfiguration()or accept an enum/options object.phpcs warnings (21, informational only)
phpcs reports 0 errors, 21 warnings across 12 files (mostly Generic.Files.LineLength
and complexity hints). Tracked here for future complexity refactors but not
blocking — phpcs gate passes.
Out of scope here
Per the Phase 2 directive, this PR does not weaken any per-app validation
rules — those decisions stay fleet-wide in the canonical templates.