Large albums opened slowly and flickered; the default album cover was also lost in the media-objects refactor. Large-album loading: - quantize signed object URLs within a window and send Cache-Control so previews are reused instead of re-fetched - publish photo.updated (not photo.created) when variants are ready, so clients update in place without reordering the grid - worker concurrency + newest-first variant priority; raise default batch Album cover: - first uploaded photo becomes the cover when none is set - clear the cover when the cover photo is trashed or moved out - "set as album cover" in the photo context menu and actions panel OpenSpec changes: fix-large-album-load, fix-album-cover
25 lines
1.5 KiB
Markdown
25 lines
1.5 KiB
Markdown
# Spec Delta
|
|
|
|
## MODIFIED Requirements
|
|
|
|
### Requirement: Обложка по умолчанию
|
|
При загрузке фото система SHALL назначать его обложкой альбома, если обложка ещё не задана,
|
|
то есть обложкой становится первое загруженное фото. Когда фото, выбранное обложкой, покидает
|
|
альбом (помещено в корзину или перенесено в другой альбом), система SHALL снять обложку.
|
|
|
|
#### Scenario: Первое фото
|
|
- **WHEN** фото загружено, и у альбома нет обложки
|
|
- **THEN** система назначает это фото обложкой альбома
|
|
|
|
#### Scenario: Обложка уже задана
|
|
- **WHEN** фото загружено, а обложка уже задана
|
|
- **THEN** система не меняет обложку
|
|
|
|
#### Scenario: Фото-обложка в корзине
|
|
- **WHEN** фото, назначенное обложкой, помещается в корзину
|
|
- **THEN** система снимает обложку, и альбом отображается без обложки
|
|
|
|
#### Scenario: Фото-обложка перенесено
|
|
- **WHEN** фото, назначенное обложкой, переносится в другой альбом
|
|
- **THEN** система снимает обложку исходного альбома
|