package.json declares "version": "0.1.0". manifest.json declares "version": "0.1.2".
manifest.json is the one that matters — it is what the marketplace reads and what the validation bot reports. package.json describes itself as "Build and test harness only", so the drift is cosmetic today. But it is drift, it happened silently across two releases, and tests/manifest.test.js already guards four other consistency properties:
- the manifest declares the plugin id the docs promise
- every schema key has a matching default
Service.qml's setting() fallbacks match the manifest defaults
- the devkit scripts carry no plugin-specific literal
A fifth assertion — that the two version strings agree — is one line, and fits the file's existing purpose exactly. Either that, or drop the version field from package.json so there is only one source of truth.
package.jsondeclares"version": "0.1.0".manifest.jsondeclares"version": "0.1.2".manifest.jsonis the one that matters — it is what the marketplace reads and what the validation bot reports.package.jsondescribes itself as "Build and test harness only", so the drift is cosmetic today. But it is drift, it happened silently across two releases, andtests/manifest.test.jsalready guards four other consistency properties:Service.qml'ssetting()fallbacks match the manifest defaultsA fifth assertion — that the two version strings agree — is one line, and fits the file's existing purpose exactly. Either that, or drop the version field from
package.jsonso there is only one source of truth.