chore(openspec): архивировать photo-color-editing и обновить photos
Дельта-спека, дизайн, предложение и задачи приведены к фактической реализации: WebGL2-предпросмотр, пипетка баланса белого, цветокоррекция по зонам. Изменение применено к основной спеке photos и перемещено в archive.
This commit is contained in:
@@ -283,16 +283,10 @@ SHALL быть доступно и для фото без альбома (нап
|
||||
- **THEN** контрольные суммы входят в данные полученных фото
|
||||
|
||||
### Requirement: Неразрушающее редактирование фотографии
|
||||
Система SHALL поддерживать неразрушающее редактирование фотографий. Параметры правок
|
||||
SHALL храниться в метаданных фото, а отредактированная версия SHALL создаваться как
|
||||
отдельные объекты (роли `edit`, `edit_thumb`, `edit_medium`, `edit_preview`) рядом с
|
||||
исходными вариантами. Рендер SHALL выполняться по исходному объекту фото, а не по
|
||||
его уменьшенным вариантам. Исходный объект SHALL оставаться неизменным, а скачивание
|
||||
SHALL отдавать оригинал. Сброс правок SHALL удалять и параметры, и отредактированную
|
||||
версию. Правки SHALL применять только к изображениям.
|
||||
Система SHALL поддерживать неразрушающее редактирование фотографий. Параметры правок (свет и цвет) SHALL храниться в метаданных фото, а отредактированная версия SHALL создаваться как отдельные объекты (роли `edit`, `edit_thumb`, `edit_medium`, `edit_preview`) рядом с исходными вариантами. Рендер SHALL выполняться по исходному объекту фото, а не по его уменьшенным вариантам. Исходный объект SHALL оставаться неизменным, а скачивание SHALL отдавать оригинал. Сброс правок SHALL удалять и параметры, и отредактированную версию. Правки SHALL применяться только к изображениям.
|
||||
|
||||
#### Scenario: Сохранение правок
|
||||
- **WHEN** пользователь сохраняет правки фото
|
||||
- **WHEN** пользователь сохраняет правки фото (свет и/или цвет)
|
||||
- **THEN** параметры сохраняются в метаданных, отредактированная версия рендерится в фоне, а после рендера фото получает URL отредактированных вариантов
|
||||
|
||||
#### Scenario: Фоновая подготовка версий
|
||||
@@ -301,7 +295,7 @@ SHALL отдавать оригинал. Сброс правок SHALL удал
|
||||
|
||||
#### Scenario: Рендер по оригиналу
|
||||
- **WHEN** готовится отредактированная версия фото
|
||||
- **THEN** правки применяются к пикселям исходного объекта, а не к его уменьшенной копии
|
||||
- **THEN** световые и цветовые правки применяются к пикселям исходного объекта, а не к его уменьшенной копии
|
||||
|
||||
#### Scenario: Неразрушачность
|
||||
- **WHEN** фото отредактировано
|
||||
@@ -318,3 +312,37 @@ SHALL отдавать оригинал. Сброс правок SHALL удал
|
||||
#### Scenario: Редактирование видео
|
||||
- **WHEN** пользователь пытается отредактировать видео
|
||||
- **THEN** система отклоняет запрос
|
||||
|
||||
#### Scenario: Цветовые правки сохраняются и рендерятся
|
||||
- **WHEN** пользователь сохраняет цветовые правки фото: баланс белого (температура/оттенок), сочность (vibrance), насыщенность, цветовой микшер по оттенкам, цветокоррекцию (тени/средние тона/света, яркость зон, наложение, баланс) или поканальную коррекцию
|
||||
- **THEN** параметры цвета сохраняются в метаданных, отредактированная версия рендерится в фоне, а после рендера фото получает URL отредактированных вариантов
|
||||
|
||||
#### Scenario: Цветовые правки применяются к пикселям исходного объекта
|
||||
- **WHEN** готовится отредактированная версия фото с цветовыми правками
|
||||
- **THEN** цветовые правки применяются к пикселям исходного объекта после световых правок, а не к его уменьшенной копии
|
||||
|
||||
#### Scenario: Пустые цветовые правки не сохраняются
|
||||
- **WHEN** в цветовых параметрах заданы только наложение/баланс или оттенок колеса без силы и яркости
|
||||
- **THEN** правки считаются пустыми и фото не получает цветовую версию
|
||||
|
||||
### Requirement: Пипетка баланса белого
|
||||
Клиент SHALL позволять выбрать нейтральную точку на фото и SHALL устанавливать температуру и оттенок так, чтобы цвет этой точки стал нейтральным. Выборка SHALL браться из исходного (неотредактированного) превью, а пресет баланса белого SHALL переходить в «Пользовательский».
|
||||
|
||||
#### Scenario: Выбор нейтральной точки
|
||||
- **WHEN** пользователь включает пипетку и кликает по нейтральному участку фото
|
||||
- **THEN** температура и оттенок обновляются, и цвет выбранной точки становится нейтральным
|
||||
|
||||
#### Scenario: Пипетка доступна только в просмотрщике
|
||||
- **WHEN** фото не открыто в просмотрщике
|
||||
- **THEN** пипетка недоступна
|
||||
|
||||
### Requirement: Живой предпросмотр цветовых правок
|
||||
Клиент SHALL показывать результат цветовых правок в просмотрщике до завершения серверного рендера. После завершения рендера SHALL показываться серверная версия.
|
||||
|
||||
#### Scenario: Правки видны сразу
|
||||
- **WHEN** пользователь двигает цветовой контрол
|
||||
- **THEN** просмотрщик обновляет изображение без ожидания серверного рендера
|
||||
|
||||
#### Scenario: Серверная версия заменяет предпросмотр
|
||||
- **WHEN** серверный рендер цветовых правок завершён
|
||||
- **THEN** просмотрщик показывает отрендеренную версию
|
||||
|
||||
Reference in New Issue
Block a user