fix(immich): serveer persoonsfoto's via lokale slideshow-media route #62

Merged
janpeter merged 1 commit from fix/immich-person-browser-local-media into main 2026-07-29 19:28:38 +02:00
Owner

De Immich-server is uitgeruimd, waardoor /api/immich/assets/*/media dood is. De personen-browser (grid + lightbox) serveerde die URL als <img src>.

Fix: listImmichPersonMediaFiles haalt de gekoppelde asset.media_filename mee op en bouwt src/detail.thumb als /api/slideshow-media/{media_filename} — dezelfde route als de rest van de library. De lokale route kent geen ?variant=thumbnail; de grid laadt het origineel, consistent met de album- en folder-views (video's waren al een placeholder).

Fallback: zonder gekoppelde asset blijft de oude Immich-URL staan. In productie is 152.326/152.326 gelinkt, dus dit pad is in de praktijk ongebruikt.

Tests: expectations bijgewerkt + nieuwe fallback-test. Volledige suite groen (303), npm run build OK.

Opvolging (niet in deze PR): de dode route /api/immich/assets/[assetId]/media en de sync-knoppen/dedup-flows hangen nog aan de verwijderde Immich-server.

De Immich-server is uitgeruimd, waardoor `/api/immich/assets/*/media` dood is. De personen-browser (grid + lightbox) serveerde die URL als `<img src>`. **Fix:** `listImmichPersonMediaFiles` haalt de gekoppelde `asset.media_filename` mee op en bouwt `src`/`detail.thumb` als `/api/slideshow-media/{media_filename}` — dezelfde route als de rest van de library. De lokale route kent geen `?variant=thumbnail`; de grid laadt het origineel, consistent met de album- en folder-views (video's waren al een placeholder). **Fallback:** zonder gekoppelde asset blijft de oude Immich-URL staan. In productie is 152.326/152.326 gelinkt, dus dit pad is in de praktijk ongebruikt. **Tests:** expectations bijgewerkt + nieuwe fallback-test. Volledige suite groen (303), `npm run build` OK. **Opvolging (niet in deze PR):** de dode route `/api/immich/assets/[assetId]/media` en de sync-knoppen/dedup-flows hangen nog aan de verwijderde Immich-server.
fix(immich): serveer persoonsfoto's via lokale slideshow-media route
All checks were successful
CI / docker-build (pull_request) Successful in 1m16s
0077737ff5
De Immich-server is uitgeruimd, waardoor /api/immich/assets/*/media
dood is. De personen-browser serveert src/thumb nu via de gekoppelde
asset.media_filename op /api/slideshow-media/[filename], zoals de rest
van de library. Fallback op de oude Immich-URL blijft voor het
(onzekere) geval dat een ImmichPersonAsset geen asset-koppeling heeft.
s4m-codex-reviewer left a comment

Verdict: REQUEST_CHANGES

Geen gekoppeld plan gevonden — beoordeeld op codekwaliteit + product-standaarden.

Findings

  • ERRORsrc/lib/immich/person-browser.ts:135 — De Immich person-browser wijzigt de media-URL van /api/immich/assets/[assetId]/media naar /api/slideshow-media/[media_filename]. De actieve productdoc voor de Immich person folder browser legt juist vast dat Immich person media via een DB-lookup route op immich_asset_id geserveerd wordt, zodat de browser geen lokale bestandsidentifiers/routes voor library-media hoeft te kennen. Deze wijziging omzeilt die afgesproken boundary en maakt de Immich-person flow afhankelijk van de generieke slideshow-media route zonder bijbehorende doc-/route-aanpassing. Los dit op door de asset-id route lokaal te laten serveren op basis van de gekoppelde asset/media filename, of werk de architectuurroute expliciet en volledig bij inclusief tests voor de nieuwe boundary.

Review-log

De diff bevat wel gerichte unit-testupdates voor de repository-mapping en een fallback zonder gekoppelde asset, maar geen bewijs dat de nieuwe routekeuze conform productarchitectuur is of end-to-end voor Immich-person media en thumbnails is afgedekt.

# Verdict: REQUEST_CHANGES Geen gekoppeld plan gevonden — beoordeeld op codekwaliteit + product-standaarden. ## Findings - **ERROR** — `src/lib/immich/person-browser.ts:135` — De Immich person-browser wijzigt de media-URL van `/api/immich/assets/[assetId]/media` naar `/api/slideshow-media/[media_filename]`. De actieve productdoc voor de Immich person folder browser legt juist vast dat Immich person media via een DB-lookup route op `immich_asset_id` geserveerd wordt, zodat de browser geen lokale bestandsidentifiers/routes voor library-media hoeft te kennen. Deze wijziging omzeilt die afgesproken boundary en maakt de Immich-person flow afhankelijk van de generieke slideshow-media route zonder bijbehorende doc-/route-aanpassing. Los dit op door de asset-id route lokaal te laten serveren op basis van de gekoppelde asset/media filename, of werk de architectuurroute expliciet en volledig bij inclusief tests voor de nieuwe boundary. ## Review-log De diff bevat wel gerichte unit-testupdates voor de repository-mapping en een fallback zonder gekoppelde asset, maar geen bewijs dat de nieuwe routekeuze conform productarchitectuur is of end-to-end voor Immich-person media en thumbnails is afgedekt.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/Media-Organizer!62
No description provided.