Дельта-спеки перенесены в основные: phone-album-sync (+8 требований, 6 изменено, 1 удалено — «Удаление только собственных загрузок»), android-client. Change перемещён в openspec/changes/archive/2026-10-16-phone-album-two-way-sync.
59 lines
3.5 KiB
Markdown
59 lines
3.5 KiB
Markdown
# Spec Delta
|
|
|
|
## MODIFIED Requirements
|
|
|
|
### Requirement: Экран альбома устройства и настройки синхронизации
|
|
|
|
Приложение SHALL открывать альбом устройства с сеткой медиа и SHALL предоставлять
|
|
настройки синхронизации этого альбома по свайпу вправо. Настройки SHALL содержать
|
|
только выбор режима синхронизации. Сетка SHALL включать как локальные элементы, так и
|
|
скачанные с сервера при двусторонней синхронизации.
|
|
|
|
#### Scenario: Открытие альбома устройства
|
|
|
|
- **WHEN** пользователь выбирает альбом устройства в списке
|
|
- **THEN** открывается сетка медиа этого альбома
|
|
|
|
#### Scenario: Настройки по свайпу
|
|
|
|
- **WHEN** пользователь свайпает вправо в открытом альбоме устройства
|
|
- **THEN** открываются настройки синхронизации с выбором режима и только им
|
|
|
|
#### Scenario: Метка перенесённого элемента
|
|
|
|
- **WHEN** оригинал элемента разгружен на сервер в режиме переноса
|
|
- **THEN** в сетке на элементе показывается значок облака
|
|
|
|
#### Scenario: Метка потерянного элемента
|
|
|
|
- **WHEN** серверной копии разгруженного элемента больше нет в целевом альбоме
|
|
- **THEN** в сетке на элементе показывается перечёркнутый значок облака
|
|
|
|
#### Scenario: Скачанный элемент в сетке
|
|
|
|
- **WHEN** серверное фото материализовано на устройстве
|
|
- **THEN** элемент показывается в сетке альбома устройства наряду с локальными
|
|
|
|
## ADDED Requirements
|
|
|
|
### Requirement: Серверный состав в сетке альбома устройства
|
|
|
|
Сетка альбома устройства SHALL отражать состав целевого серверного альбома: новые
|
|
серверные фото SHALL появляться, а удалённые SHALL исчезать по мере синхронизации, без
|
|
ручного обновления.
|
|
|
|
#### Scenario: Новое фото с сервера
|
|
|
|
- **WHEN** в целевом серверном альбоме появилось новое фото, и синхронизация прошла
|
|
- **THEN** материализованный элемент появляется в сетке альбома устройства
|
|
|
|
#### Scenario: Фото удалено на сервере
|
|
|
|
- **WHEN** серверное фото удалено на сервере, и синхронизация прошла
|
|
- **THEN** соответствующий элемент исчезает из сетки альбома устройства
|
|
|
|
#### Scenario: Обновление открытого экрана
|
|
|
|
- **WHEN** экран альбома устройства открыт, и синхронизация изменила состав
|
|
- **THEN** сетка обновляется без ручного действия пользователя
|