chore(openspec): архивировать fix-edit-preview-handoff и обновить photos, realtime

- photos: признак незавершённого рендера правок, мгновенный показ сброса,
  бесшовная подмена предпросмотра
- realtime: события жизненного цикла рендера правок в photo.updated
This commit is contained in:
iu
2026-10-25 10:04:08 +03:00
parent 2b8d329a3e
commit 4d23e76ab5
8 changed files with 59 additions and 3 deletions
@@ -0,0 +1,38 @@
# Spec Delta: realtime
## MODIFIED Requirements
### Requirement: События альбома
Система SHALL публиковать события photo.created, photo.updated, photo.deleted,
comment.created, like.added, like.removed, member.joined, member.left, album.updated.
Событие photo.created SHALL обозначать появление фото в альбоме, а готовность вариантов
существующего фото SHALL публиковаться как photo.updated. Сохранение, готовность и сброс
правок фото SHALL также публиковаться как photo.updated, неся аддитивный признак
незавершённого рендера правок (`edit_pending`) и актуальность URL отредактированных
вариантов.
#### Scenario: Новое фото
- **WHEN** в альбоме появляется фото
- **THEN** подписчики получают событие photo.created с метаданными и URL превью
#### Scenario: Готовы варианты
- **WHEN** для существующего фото сгенерированы thumb и preview
- **THEN** подписчики получают событие photo.updated с этим фото
#### Scenario: Сохранены правки фото
- **WHEN** пользователь сохраняет правки фото, а рендер ещё не завершён
- **THEN** подписчики получают событие photo.updated с `edit_pending=true`
#### Scenario: Рендер правок готов
- **WHEN** серверный рендер сохранённых правок завершён
- **THEN** подписчики получают событие photo.updated с `edit_pending=false` и URL отредактированных вариантов
#### Scenario: Правки фото сброшены
- **WHEN** правки фото сброшены
- **THEN** подписчики получают событие photo.updated с `edit_pending=false` и без URL отредактированных вариантов