Перейти к содержанию

Повестка совета

Типы решений

Страница "Повестка совета" отображает все вопросы, вынесенные на рассмотрение, по которым совету предстоит принять решения. Решения бывают: стандартизированными и произвольными.

повестка совета

Стандартизированные решения ведут к автоматизированному их исполнению согласно стандартам смарт-контрактов и обычно являются частью какого-либо бизнес-процесса. Например, при решении о приёме пайщика в кооператив - пайщик автоматически добавляется в реестр и ему открывается главный кошелек, а при решении о приеме имущественного паевого взноса, пайщик и председатель кооперативного участка получают возможность подписать акт приема-передачи. Стандартизированные решения обычно являются промежуточными в цепочке действий бизнес-процесса, которая продолжит свое исполнение, как только решение совета по вопросу будет принято.

Произвольные решения не исполняются автоматически, т.к. у них для этого нет правил стандартов. Произвольные решения позволяют членам совета предлагать вопросы на повестку и проекты решений по ним. Система автоматически сформирует документ предложения повестки и предложит совету проголосовать. При утверждении решения председателем совета, система сформирует протокол решения и сохранит его в реестре документов. Контроль исполнения принятого произвольного решения ложится на членов совета.

Если решение не принято?

Если решение по вопросу не принято, то председатель не получит возможность утвердить протокол и следовательно он не попадет в реестр документов. Так, в реестр документов попадают только принятые и утвержденные решения совета. Что же касается стандартизированного бизнес-процесса, который прерывается, то у него на случай отказа в принятии решения всегда есть сценарий отмены, по ходу которого пайщик получает оповещение, и обратное движение средств по кошелькам.

Решение, по которому не достигнуто большинство «за», не остаётся на повестке бесконечно — оно снимается с повестки. Как именно это происходит, описано ниже в разделе «Снятие вопроса с повестки».

Для того, чтобы принять решение по любому вопросу необходимо выполнить условие достижения простого большинства голосов всех членов совета, и после чего, утвердить решение электронной подписью председателя совета.

flowchart TD
    A[Вопрос на повестке] --> B[Голосование членов совета]
    B --> C{Большинство ЗА?}
    C -- Да --> E[Председатель утверждает]
    E --> F[Решение утверждено]
    F --> H{Решение стандартизированное?}
    H -- Да --> I[Автоисполнение]
    H -- Нет --> J[Контроль исполнения советом]
    I --> G[Решение исполнено]
    J --> G[Решение исполнено]
    C -- Большинство ПРОТИВ --> K[Председатель отклоняет вопрос]
    C -- Большинство не набрано в срок --> L[Автоматическое снятие по истечении срока]
    K --> M[Вопрос снят с повестки]
    L --> M[Вопрос снят с повестки]

Форма собрания и кворум

Форма проведения собрания - заочная, на основе технологических средств цифровой подписи членов совета. Все члены совета всегда считаются присутствующими на заседании. При отсутствии голосов ЗА или ПРОТИВ по пункту повестки, мы считаем, что член совета присутствовал на собрании, но ВОЗДЕРЖАЛСЯ от голосования.

Голосование по решению

Голосование по решению, как мы ранее рассматривали в разделе Прием пайщика, осуществляется с помощью модуля голосований. Он содержит в себе кнопки-индикаторы голосов, а также индикатор статуса решения.

модуль голосования

Каждый член совета может однократно проголосовать по каждому вопросу. Отозвать голос, после того, как он был отдан - невозможно. Как только количество голосов ЗА превысит 50% от общего количества членов совета, система изменит статус индикатора принятого решения.

Аналогично работает и голос ПРОТИВ: как только количество голосов ПРОТИВ превысит 50% от общего количества членов совета, индикатор покажет, что вопрос отклонён советом. Такое решение не может быть утверждено — вместо кнопки утверждения председателю будет предложено снять вопрос с повестки (см. ниже раздел «Снятие вопроса с повестки»).

модуль голосования

На заметку

Действие подачи голоса по вопросу фиксируется цифровой подписью члена совета, которую он оставляет на идентификаторе протокола решения. Таким образом, все голоса по всем решениям могут быть криптографически проверены.

Утверждение и исполнение решения

После того, как решение принято, председатель может утвердить его, нажатием на соответствующую кнопку напротив пункта повестки. Действие утверждения сформирует протокол собрания собрания совета и наполнит его данными в соответствии с содержанием стандартизированного или произвольного пункта повестки.

Если утверждается стандартизированное решение, то оно автоматически в этот же момент и исполняется на уровне стандартов смарт-контрактов. Произвольные решения, как было отмечено ранее, автоматически не исполняются, а только фиксируются в реестре документов.

Снятие вопроса с повестки

Вопрос остаётся на повестке, пока по нему ещё можно принять решение — то есть пока не истёк срок его действия. Если большинство «за» так и не собрано, вопрос не остаётся на повестке навсегда, а снимается с неё одним из двух способов:

  • Председатель отклоняет вопрос вручную. Если против вопроса проголосовало простое большинство членов совета, вопрос считается отклонённым советом. В этом случае председателю напротив пункта повестки доступна кнопка «Отклонить» — по нажатию вопрос сразу снимается с повестки, не дожидаясь истечения срока.
  • Вопрос снимается автоматически по истечении срока. Если за время действия вопроса большинство «за» так и не было набрано, по истечении срока вопрос снимается с повестки автоматически, без участия председателя.

В обоих случаях протокол решения не оформляется и в реестр документов не попадает. Если за снятым вопросом стоял стандартизированный бизнес-процесс, срабатывает его сценарий отмены: пайщик получает оповещение, а средства возвращаются обратным движением по кошелькам.

Обратного хода у принятого решения нет

Снять с повестки можно только вопрос, по которому решение ещё не утверждено председателем. Уже утверждённое и попавшее в реестр решение отменить таким образом нельзя — оно считается принятым окончательно.

Предложить пункт повестки

Для предложения произвольного пункта повестки на голосование совета, необходимо нажать на кнопку "ПРЕДЛОЖИТЬ". Будет показана форма для ввода вопроса на повестке и проекта решения по нему:

модуль голосования

На основании которых, будет сформирован документ предложения повестки и протокол решения совета:

модуль голосования

модуль голосования

Разработчикам

Канонические имена полей и типов — в файле components/controller/schema.gql монорепозитория; интерактивно — в документации GraphQL-API.

Повестка совета

⚠️ 🛠️ SDK: Queries.Agenda.GetAgenda не найден | Query.getAgenda

⚠️ Описание для Queries.Agenda.GetAgenda не найдено

⚠️ Queries.Agenda.GetAgenda не найден

Результат:

⚠️ Queries.Agenda.GetAgenda не найден

Документы (контекст вопросов)

⚠️ 🛠️ SDK: Queries.Documents.GetDocuments не найден | Query.getDocuments

⚠️ Описание для Queries.Documents.GetDocuments не найдено

⚠️ Queries.Documents.GetDocuments не найден

Результат:

⚠️ Queries.Documents.GetDocuments не найден

Свободное решение: создать проект

⚠️ 🛠️ SDK: Mutations.FreeDecisions.CreateProjectOfFreeDecision не найден | Mutation.createProjectOfFreeDecision

⚠️ Описание для Mutations.FreeDecisions.CreateProjectOfFreeDecision не найдено

⚠️ Mutations.FreeDecisions.CreateProjectOfFreeDecision не найден

Результат:

⚠️ Mutations.FreeDecisions.CreateProjectOfFreeDecision не найден

Свободное решение: сгенерировать документ

⚠️ 🛠️ SDK: Mutations.FreeDecisions.GenerateFreeDecision не найден | Mutation.generateFreeDecision

⚠️ Описание для Mutations.FreeDecisions.GenerateFreeDecision не найдено

⚠️ Mutations.FreeDecisions.GenerateFreeDecision не найден

Результат:

⚠️ Mutations.FreeDecisions.GenerateFreeDecision не найден

Свободное решение: сгенерировать проект

⚠️ 🛠️ SDK: Mutations.FreeDecisions.GenerateProjectOfFreeDecision не найден | Mutation.generateProjectOfFreeDecision

⚠️ Описание для Mutations.FreeDecisions.GenerateProjectOfFreeDecision не найдено

⚠️ Mutations.FreeDecisions.GenerateProjectOfFreeDecision не найден

Результат:

⚠️ Mutations.FreeDecisions.GenerateProjectOfFreeDecision не найден

Свободное решение: опубликовать проект

⚠️ 🛠️ SDK: Mutations.FreeDecisions.PublishProjectOfFreeDecision не найден | Mutation.publishProjectOfFreeDecision

⚠️ Описание для Mutations.FreeDecisions.PublishProjectOfFreeDecision не найдено

⚠️ Mutations.FreeDecisions.PublishProjectOfFreeDecision не найден

Результат:

⚠️ Mutations.FreeDecisions.PublishProjectOfFreeDecision не найден

Часть шагов (голос по решению совета, исполнение ряда решений) выполняется подписью и отправкой транзакции в блокчейн через Client.Blockchain / класс Blockchain в пакете @coopenomics/sdk, а не отдельной мутацией GraphQL; см. 🛠️ Classes.Blockchain и 🛠️ Classes.Client.