Problem
The App class is split across 7 mixin files (app-props.js, app-demos.js, etc.). Each copies methods onto App.prototype via Object.defineProperty. If two mixins define the same method name, the later one silently overwrites the earlier — no linting, no warning, no test.
Plan
Add a small Node script scripts/check-mixins.js that:
- Parses each mixin file for
class AppXxx { ... } and extracts method names
- Reports any method name that appears in more than one mixin
- Exit 1 if overlaps found
Run as a pre-test step.
Effort
~30 minutes. New file only. ~30 lines of Node.js.
Problem
The
Appclass is split across 7 mixin files (app-props.js,app-demos.js, etc.). Each copies methods ontoApp.prototypeviaObject.defineProperty. If two mixins define the same method name, the later one silently overwrites the earlier — no linting, no warning, no test.Plan
Add a small Node script
scripts/check-mixins.jsthat:class AppXxx { ... }and extracts method namesRun as a pre-test step.
Effort
~30 minutes. New file only. ~30 lines of Node.js.