Некоторые моменты, которые у меня вызывают вопросы:
- Неочевидно, что всегда нужно давать комментировать только на исходной ноде. Не все могут иметь права для того чтобы комментировать там. Например, может никто не иметь такого права, если автор закрыл комменты. А раз пост публичен, продолжать дискуссию где-то надо. Разумеется, человек может просто скопировать чужой пост и предложить его обсудить - это запретить мы точно не можем, а значит, может иметь смысл возглавить :)
- Неочевидно, что должно существовать "копирование" отдельно от "репоста" (т.е. , со своим текстом-дополнением). Возможно, "копирование" - просто частный случай репоста с пустым телом поста репостера?
Разница между копированием и репостом именно в том, что репост создает новую сущность: новый пост у другого автора. К нему можно отдельно писать комменты и все такое прочее.
Например, моя френдлента - это лента, в которую автоматически копируются посты из лент, на которые я подписан. Было бы странно, если бы пост во френдленте был отдельной сущностью, с комментами, которые не появляются под оригинальным постом 😉 Аналогично - лента "Read Later".
Если исходный автор удаляёт свой пост - копия остаётся у репостеров?
О, это отличный вопрос. А если он его изменяет, копия изменяется?
Как я отметил в описании, все посты во френдленте (и вообще в любой ленте) копируются на домашнюю ноду. Собирать их при каждом запросе с десятков разных нод было бы неэффективно. Аналогично репосты содержат копию оригинального поста. Чтобы узнавать об изменениях, домашняя нода подписывается на уведомления от ноды-источника поста. А дальше все зависит от настроек домашней ноды. Если оригинальный пост удален, кэшированную копию тоже можно удалить. А можно просто скрыть. Или вообще проигнорировать уведомление об удалении.
А добавление "чего угодно" в "прочитать позже" может быть встроено в аддон
Точно, у нас же аддон есть! 😉 Запишу себе это.