Clip counts on listings, so clients find photos with only clips
Derived clips (#208) aren't counted as versions, so a photo whose only derived file is a clip looked like a plain photo, and clients never fetched /image/versions for it. Summaries now carry clip_count: /photos adds the parallel array photo_clip_counts, records (memories, search, /photos/exif) carry clip_count. All skipped when zero, so other responses are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
19cbc9d59c
commit
3d1db90e3c
7 files changed
+84
-25
No files matched your search
@@ -364,7 +364,8 @@ to the original, as `<dir>/aiedits/<original name>.<kind>[.<n>].png`. A
|
||||
**derived clip** (kind `animated`, `CLIP_KINDS`) is a video made from a photo
|
||||
(Enhance "Animate", `<name>.animated[.<n>].mp4`): linked, hidden and lifecycled
|
||||
exactly like a version, but never counted as one (`photo_version_counts`,
|
||||
`version_count`), never a display choice (`PUT /image/versions/display` answers 400
|
||||
`version_count`; they have their own `photo_clip_counts` / `clip_count`, so clients
|
||||
know to fetch `/image/versions` for a photo with only clips), never a display choice (`PUT /image/versions/display` answers 400
|
||||
`clip_not_displayable`), and listed apart, as `clips` in `GET /image/versions`. ImageApi
|
||||
only detects it (library roots stay read-only) and shows original + versions as
|
||||
**one photo**; a *global* choice (not per user) says which file is displayed.
|
||||
@@ -751,8 +752,9 @@ GET /image/versions?path=...&library=... (path of the original or any version
|
||||
POST /enhance ... (Enhance on demand; see "Enhance on demand")
|
||||
PUT /image/versions/display (body { path, display_hash|null, library? }; global choice)
|
||||
// /photos hides versions behind their original (include_versions=true lists them) and adds
|
||||
// parallel arrays photo_display_paths / photo_version_counts; memories items, search hits and
|
||||
// /photos/exif rows carry display_path / version_count. All skipped when there are none.
|
||||
// parallel arrays photo_display_paths / photo_version_counts / photo_clip_counts; memories items,
|
||||
// search hits and /photos/exif rows carry display_path / version_count / clip_count. All skipped
|
||||
// when there are none.
|
||||
|
||||
// Memories (week-based grouping)
|
||||
GET /memories?path=...&recursive=true
|
||||
|
||||
Reference in new issue
Block a user