Дельта android-live-albums: android-client (+3 требования: живое обновление списка, догон при переподключении, потеря доступа) и realtime (порядок списка теперь правило отображения клиента). Дельта fix-album-cover-readiness: realtime (+1 требование: album.updated при готовности вариантов фото-обложки).
2.3 KiB
2.3 KiB
Tasks
1. Публикация при готовности вариантов обложки
- 1.1 Добавить в
albums.Serviceпубликациюalbum.updatedв персональные потоки, когда варианты готовы у фото, являющегося обложкой (проверка по актуальномуcover_photo_id), переиспользуя существующий веер; проверить тестом: владелец и участник получают событие со ссылкой на обложку, а для фото, которое обложкой не является, публикации нет - 1.2 Расширить порт
AlbumAccessвphotosи вызвать публикацию изWorker.notifyпослеphoto.updated, обновив стаб порта в тестах; проверить тестом, что готовность вариантов фото вызывает публикацию
2. Документация контракта
- 2.1 Обновить
project.md(§11 «Real-time (SSE)» и §12 «SSE — детали реализации»):album.updatedпубликуется также при готовности вариантов фото-обложки; проверить, что перечисленные триггеры совпадают с реализованными публикациями
3. Проверка
- 3.1 Прогнать
cd backend && go test ./...и зафиксировать, что проходит - 3.2 Воспроизвести сценарий на временном инстансе: подписка на
/api/sse/me, загрузка фото в альбом без обложки — после готовности вариантов приходитalbum.updatedс непустой ссылкой на обложку; приложить вывод
Workflow follow-up
- Заархивировать change после прохождения ревью проекта (
openspec archive fix-album-cover-readiness). - Проверить, что после архивации требование вошло в
openspec/specs/realtime/spec.md, аopenspec validate --strict fix-album-cover-readinessне выдаёт ошибок.