chore(openspec): архивировать fix-copy-edit-variant-sharing и синхронизировать спеки
Дельта media-objects перенесена в основную спеку: копирование больше не переносит отредактированную версию, копия показывается в исходном виде и не наследует параметры правок. Change перемещён в архив за 2026-10-21.
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# Tasks
|
||||
|
||||
## 1. Список edit-ролей
|
||||
|
||||
- [x] 1.1 В `backend/internal/photos/edit_render.go` собрать общий список ролей
|
||||
(`RoleEdit`, `RoleEditThumb`, `RoleEditMedium`, `RoleEditPreview`) и хелпер проверки
|
||||
роли; проверить, что список используется в обоих хранилищах и не дублируется
|
||||
строковыми литералами
|
||||
|
||||
## 2. Копирование без отредактированной версии
|
||||
|
||||
- [x] 2.1 В `Store.Clone` (`backend/internal/photos/store.go`) исключить edit-роли из
|
||||
переносимых привязок `photo_objects`; проверить тестом `copy_test.go`: копия
|
||||
получает обычные варианты и не получает edit-объекты
|
||||
- [x] 2.2 В `SQLiteStore.Clone` (`backend/internal/photos/sqlite_store.go`) сделать то же
|
||||
для SQLite; проверить тем же тестом, прогнанным на SQLite-хранилище
|
||||
|
||||
## 3. Разовая чистка существующих копий
|
||||
|
||||
- [x] 3.1 Добавить миграцию Postgres `backend/migrations/000016_*.up.sql` и `.down.sql`,
|
||||
удаляющую edit-привязки у фото с пустыми `edit_params`; проверить на тестовой базе,
|
||||
что привязки исходных фото с правками остались, а «чужие» удалены
|
||||
- [x] 3.2 Добавить миграцию SQLite `backend/migrations/sqlite/000008_*.up.sql` и
|
||||
`.down.sql` с тем же действием; проверить тем же сценарием на SQLite
|
||||
- [x] 3.3 Убедиться, что удалённые объекты подбираются сборщиком мусора
|
||||
(`ClaimGarbage` не возвращает объекты с привязками); проверить существующим тестом
|
||||
`objects_test.go`
|
||||
|
||||
## 4. Интеграционная проверка
|
||||
|
||||
- [x] 4.1 Прогнать `cd backend && go test ./internal/photos/ -v`; убедиться, что тесты
|
||||
зелёные
|
||||
- [x] 4.2 Прогнать `make test`; убедиться, что весь бэкенд зелёный
|
||||
- [x] 4.3 Проверить вручную: отредактировать фото, скопировать его в другой альбом и
|
||||
убедиться, что копия показывает исходник, а панель правок у копии пустая
|
||||
Reference in New Issue
Block a user