diff --git a/containers/120-mule-images.md b/containers/120-mule-images.md index f86873f..00053b9 100644 --- a/containers/120-mule-images.md +++ b/containers/120-mule-images.md @@ -80,6 +80,12 @@ For pushes from inside the LXC, gitea creds at `/etc/mule-deploy/git-credentials ## Changelog +### 2026-05-11 — Duplicates view shows parent folder + full-path tooltip + +`GET /api/v1/library/duplicates/groups` now includes `filepath` in each member payload. `DuplicatesView` renders a dark bottom-strip on every thumbnail showing the parent folder name (via a `duplicatePathLabel` helper that takes the second-to-last path segment), with the full filepath surfaced through the native `title` tooltip on hover. The dimensions chip moves from bottom-left to top-left so the path strip can run edge-to-edge. `memberToPhoto` finally stops faking `filepath = filename` — the synthetic Photo it hands to `PhotoThumbnail` now carries the real path. + +**Infra side-effect during the deploy:** two consecutive `--force-recreate` cycles (deploy.sh and a manual `down/up`) raced and left **orphan duplicate worker containers** (`_mulita-worker-light` + the named `mulita-worker-light`, same for vision) both pulling from the same Redis queue. Worker concurrency was effectively doubled, host load climbed past 120, and `pct exec` into LXC 120 hung for several minutes. Recovery: `docker rm -f` on both orphan IDs. The deploy-gotcha entry below covers the pattern; the new contribution from this session is "look for renamed `_` containers and remove them if you ever see load spike + pct hang after a deploy". + ### 2026-05-11 — Drop Title field, add bulk Notes editor - Removed the `Title` (user_title) row from `PhotoInfoPanel.tsx`: the form field, its `titleDraft`/`setTitleDraft` state, the `commitTitle` handler, and the `photo?.user_title` watcher in the draft-sync `useEffect`. Column stays on `photos` and on the backend model — only the UI affordance went away.