Severity
Low
Summary
Two packaging/versioning hygiene gaps: the backend Python package version is decoupled from the app/image version, making the backend's self-reported version misleading; and externalized main-process dependencies may be missing from the packaged app because node_modules is not shipped.
Findings
Project-rule reference
n/a (packaging correctness / observability hygiene).
Severity
Low
Summary
Two packaging/versioning hygiene gaps: the backend Python package version is decoupled from the app/image version, making the backend's self-reported version misleading; and externalized main-process dependencies may be missing from the packaged app because
node_modulesis not shipped.Findings
backend/pyproject.toml:3(version = "0.1.0") vspackage.json:3("version": "0.2.4") —release-pipeline.yml:39-52bumps only the rootpackage.json(which drives the GHCR image tag), whilepyproject.tomlstays at0.1.0. The backend's self-reported version is therefore stale/misleading in logs and health output. fix: sync thepyproject.tomlversion in the release pipeline, or stop treating the backend-reported version as authoritative.electron.vite.config.ts:8(main usesexternalizeDepsPlugin({ exclude: [] })),electron-builder.yml:9-11(files:shipsout/**/*+package.json, notnode_modules) — the main process externalizes its runtime deps, but the packagedfileslist does not includenode_modules, so externalized native-ish deps likedockerodemay be missing at runtime in the packaged app. fix: verify a packaged run canrequire('dockerode'); ensure externalized runtime deps are included/unpacked (e.g. viaasarUnpack/files), or bundle them instead of externalizing.Project-rule reference
n/a (packaging correctness / observability hygiene).