v0.4.5 - restore deviceId/deviceAssetId for live Immich (v2.7.5+) Reverts v0.4.3's drop of deviceId / deviceAssetId on the Immich upload. Andrew DeJong reproduced v0.4.3 failing on his actual Immich v2.7.5 (MR !2): the live server enforces both fields even though they are absent from the vendored OpenAPI spec. The vendored spec at api/immich/openapi.json (sourced from immich-app/immich/main) does not model AssetMediaBase and lists neither field on AssetMediaCreateDto. The server enforces them anyway. v0.4.3 trusted the spec; this release trusts the server. Lesson logged in the commit body: the spec is not the source of truth for write-side contracts. v0.4.6 will add a write-side smoke test against a live Immich (in CI when IMMICH_BASE_URL + IMMICH_API_KEY are set; locally otherwise) so the next contract drift fails the release pipeline before binaries ship. Apologies for the v0.4.0 add -> v0.4.3 remove -> v0.4.5 re-add cycle. The smoke is the durable answer.