GA blocker (Bucket A6 in audit)
`PackageLoader.cfc` reads `wheelsVersion` from every package's `package.json` and stores it, but never checks it against the running Wheels version. A package built for Wheels 2.x that lands in `vendor/` is loaded and mixed in with no warning, risking silent API incompatibility.
Evidence
Every first-party package ships a `wheelsVersion` constraint (e.g. `">=3.0"`) expecting this to be enforced. It isn't.
Fix
Acceptance
- Running 4.0 with a package declaring `"wheelsVersion": ">=99.0"` logs a rejection and skips load.
- Existing first-party packages (sentry, hotwire, basecoat, legacyadapter) still load on 4.0.
Refs: GA audit doc
GA blocker (Bucket A6 in audit)
`PackageLoader.cfc` reads `wheelsVersion` from every package's `package.json` and stores it, but never checks it against the running Wheels version. A package built for Wheels 2.x that lands in `vendor/` is loaded and mixed in with no warning, risking silent API incompatibility.
Evidence
Every first-party package ships a `wheelsVersion` constraint (e.g. `">=3.0"`) expecting this to be enforced. It isn't.
Fix
Acceptance
Refs: GA audit doc