SHA256
Обновить каналы и перенести черновики
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# Черновик CHANNEL_MEMBERSHIP для каналов
|
||||
|
||||
## Статус документа
|
||||
|
||||
Этот файл является отдельным отложенным черновиком.
|
||||
|
||||
Важно:
|
||||
|
||||
- тема временно вынесена из основной первой итерации;
|
||||
- в текущую реализацию не входит;
|
||||
- документ нужен, чтобы не потерять уже согласованные мысли и вернуться к ним позже.
|
||||
|
||||
## Зачем вынесено отдельно
|
||||
|
||||
`CHANNEL_MEMBERSHIP` пока решено не делать вместе с `TEXT` и `STATUS_ACTION`, чтобы:
|
||||
|
||||
- не перегружать текущую реализацию;
|
||||
- не смешивать две разные задачи;
|
||||
- спокойно завершить первую итерацию по контенту и статусам;
|
||||
- вернуться к membership позже отдельным этапом.
|
||||
|
||||
## Отложенная схема ссылок
|
||||
|
||||
На текущий момент в отложенный черновик заносится такая схема:
|
||||
|
||||
- `JOIN_REQUEST` ссылается на root-блок канала;
|
||||
- `JOIN_ACCEPTED` ссылается на `JOIN_REQUEST`;
|
||||
- `LEFT` ссылается на root-блок канала;
|
||||
- `REMOVED` ссылается на последнее membership-событие этого участника в этом канале, лучше всего на `JOIN_ACCEPTED`.
|
||||
|
||||
## Предварительные подтипы
|
||||
|
||||
Если тема будет возвращена в реализацию, предварительно рассматриваются:
|
||||
|
||||
- `subType=10` — `CHANNEL_JOIN_REQUEST`
|
||||
- `subType=20` — `CHANNEL_JOIN_ACCEPTED`
|
||||
- `subType=30` — `CHANNEL_LEFT`
|
||||
- `subType=40` — `CHANNEL_REMOVED`
|
||||
|
||||
## Что ещё нужно будет отдельно решить позже
|
||||
|
||||
Перед возвратом к теме нужно будет отдельно утвердить:
|
||||
|
||||
- точный байтовый формат `CHANNEL_MEMBERSHIP`;
|
||||
- в чьём блокчейне пишутся membership-события;
|
||||
- политику прав доступа:
|
||||
- кто может писать `JOIN_ACCEPTED`;
|
||||
- кто может писать `REMOVED`;
|
||||
- кто и как подтверждает актуальный состав канала;
|
||||
- как сервер строит read-model текущего состава канала;
|
||||
- как UI показывает pending-заявки, принятых участников, вышедших и исключённых.
|
||||
|
||||
## Краткий итог
|
||||
|
||||
`CHANNEL_MEMBERSHIP` не отменён, а именно отложен.
|
||||
|
||||
Следующий рекомендуемый шаг:
|
||||
|
||||
- сначала завершить первую итерацию `TEXT + STATUS_ACTION`;
|
||||
- потом отдельным этапом вернуться к membership-логике каналов.
|
||||
Reference in New Issue
Block a user