chore(openspec): archive thumbnail-variants and sync main specs

This commit is contained in:
iu
2026-10-11 19:57:12 +03:00
parent f1b3b01bdf
commit d059d042f0
12 changed files with 49 additions and 8 deletions
@@ -0,0 +1,24 @@
# Spec Delta
## MODIFIED Requirements
### Requirement: Отображение обложки альбома
Данные альбома SHALL включать URL обложки, когда обложка задана, чтобы клиенты могли
показать её в списке, рейле и карточке; URL SHALL указывать на вариант, достаточный для
крупного отображения, с откатом на миниатюру, пока крупный вариант не готов.
#### Scenario: Обложка задана
- **WHEN** клиент запрашивает список альбомов или альбом по id, и у альбома есть обложка
- **THEN** ответ содержит URL обложки
#### Scenario: Обложка отсутствует
- **WHEN** у альбома нет обложки или фото обложки удалено
- **THEN** ответ не содержит URL обложки, и клиент показывает плейсхолдер
#### Scenario: Крупный вариант ещё не готов
- **WHEN** у обложки готов только вариант-миниатюра
- **THEN** ответ содержит URL миниатюры обложки
@@ -0,0 +1,19 @@
# Spec Delta
## MODIFIED Requirements
### Requirement: Журнал объектов
Каждый физический объект SHALL иметь ровно одну запись в слое метаданных с ключом,
MIME-типом, размером, габаритами и состоянием; фото SHALL ссылаться на объекты по
ролям original, thumb, medium и preview.
#### Scenario: Привязка ролей
- **WHEN** фото загружено и обработано
- **THEN** фото ссылается на объект-оригинал и, когда они готовы, на объекты thumb, medium и preview
#### Scenario: Оригинал без вариантов
- **WHEN** варианты ещё не сгенерированы
- **THEN** фото доступно с оригиналом, а thumb, medium и preview отсутствуют
@@ -0,0 +1,19 @@
# Spec Delta
## MODIFIED Requirements
### Requirement: Варианты изображений
Система SHALL генерировать четыре варианта: thumb (200×200, квадратный кроп), medium
(800×800, квадратный кроп), preview (1200×1200, вписанный) и оригинал, в WebP, и извлекать
EXIF (дата, координаты, размеры).
#### Scenario: Генерация вариантов
- **WHEN** фото загружено
- **THEN** система асинхронно генерирует thumb, medium и preview и заполняет EXIF-поля
#### Scenario: Форма вариантов сетки
- **WHEN** генерируются thumb и medium
- **THEN** они обрезаны до квадрата, а preview вписан с сохранением пропорций
@@ -0,0 +1,23 @@
# Spec Delta
## ADDED Requirements
### Requirement: Резкость миниатюр
Сетка фото и обзор альбомов SHALL подбирать вариант изображения под фактический размер
плитки, чтобы миниатюры не отображались крупнее доступного разрешения.
#### Scenario: Крупные плитки
- **WHEN** пользователь увеличивает миниатюры до крупных плиток
- **THEN** показывается вариант изображения, достаточный для их размера, без расплывания
#### Scenario: Мелкие плитки
- **WHEN** миниатюры показаны мелкими плитками
- **THEN** показывается компактный вариант, чтобы не загружать крупное изображение
#### Scenario: Вариант ещё не готов
- **WHEN** для фото доступен только оригинал или только миниатюра
- **THEN** показывается доступный вариант, и сетка отображается корректно