fix-linter-blind-spots
Fix Linter Blind Spots
This skill fixes patterns that cause runtime failures but are not reported by the UI5 linter. The linter's no-globals rule only checks sap.* namespaces in JS files. App-specific global namespace patterns in JavaScript — assignments, cross-module references, QUnit 1.x assertions, and sinon mocking via global chains — are invisible to it.
IMPORTANT — Scope clarification: This skill handles app-namespace globals in JavaScript files only. App-namespace globals in XML files (event handlers, formatters, factory functions using dotted app paths) ARE reported by the linter under the no-globals rule and are handled by fix-xml-globals in Phase 3 — NOT by this skill. Do NOT fix XML app-namespace globals here.
These patterns work in the old bootstrap model (where jQuery.sap.declare builds global namespace chains) but fail under strict AMD module loading (Test Starter, modern UI5).
Scope
Scans ALL .js files:
- App source:
webapp/controller/,webapp/utils/,webapp/model/, etc. - Test files:
webapp/test/unit/,webapp/test/integration/,webapp/test/opa/, etc.
Prerequisites
Read manifest.json to get the namespace:
<NAMESPACE>— slashes (e.g.,com/example/app)<NAMESPACE-WITH-DOTS>— dots (e.g.,com.example.app)